Commit Graph

1177 Commits

Author SHA1 Message Date
thorpej
e598335d1c Garbage-collect `mbutl'. 1999-01-09 22:10:12 +00:00
thorpej
e279508ccb In pmap_zero_page() and pmap_copy_page(), set copyback caching of the
pages on the 68040 and 68060, to avoid cache consistency problems (since
regular mappings are copyback cached as well), per Ignatios Souvatzis.
1999-01-09 18:40:12 +00:00
augustss
fc5f9ee81d Add -Wpointer-arith warning since `void *' arithmetic is not ANSI C. 1999-01-08 19:26:12 +00:00
thorpej
289b2e154f In pmap_zero_page() and pmap_copy_page(), don't bother invalidating the
mappings for CADDR1 and CADDR2, unless we're built w/ -DDEBUG.  Since
these addresses are only used in these routines, we can "lazily invalidate"
them by just using them again.  This makes these routines a teeny bit faster,
as it saves 1 or 2 TBIS's per call.

Suggested by Leo Weppelman <leo@netbsd.org>.
1999-01-08 05:15:43 +00:00
thorpej
795321b030 Make pmap_collect() actually do something useful. If called with a user
pmap, forget all of the mappings for the user address space for that pmap.
This causes the PT pages to be freed so that they can be reclaimed by the
VM system. [*]

[*] Actually, in the current implementation, it merely causes the wiring
count on the PT pages to drop to 0, which allows them to be reclaimed by
the pagedaemon.  Handling of PT pages needs to be completely rewritten.
1998-12-21 09:02:43 +00:00
thorpej
d6bc370c2d Use a memory pool for pmap structures. 1998-12-21 08:51:39 +00:00
thorpej
43b82d559c Improve pmap_copy_page() and pmap_zero_page(). Don't use pmap_enter()/
pmap_remove() for the temporary addresses.  This is completely unnecessary
as the temps are used ONLY for these routines, and we have better control
over the mapping by manipulating the PTE ourself.  On VAC systems, cache-
inhibit the mapping to prevent wasting a cache load.

These routines are now significantly faster.

Add a DIAGNOSTIC check in pmap_enter() for kernel pmap and (CADDR1 or CADDR2);
nothing should be adding mappings there via that interface.
1998-12-21 06:58:39 +00:00
thorpej
51d0670371 Clean up a whole load of comments, making many of them truthful, and
indicating which functions are INTERFACE vs. which aren't.
1998-12-20 01:15:52 +00:00
thorpej
80e50e26a8 Unclutter a bit. Use a PMAP_DPRINTF() macro where possible, getting rid
of loads of #ifdef DEBUG ... stuff.
1998-12-19 23:51:47 +00:00
thorpej
6659e7174e In pmap_testbit(), if we end up traversing the PV list, cache a hit on the
bit to speed future tests.
1998-12-19 23:21:51 +00:00
thorpej
97f422e85b Make pmap_changebit() take bits to set and a PTE mask, rather than a bit
and a boolean.
1998-12-19 23:01:47 +00:00
thorpej
d36a60d9cb G/c PMAPSTATS. It's unneeded clutter right now. 1998-12-19 21:11:14 +00:00
thorpej
459052a0fb Wire down some SCSI disk units. 1998-12-19 20:05:19 +00:00
itohy
36416d8500 Added options COMPAT_LINUX and EXEC_ELF32 as comments
to GENERIC configuration files.
1998-12-15 19:50:00 +00:00
itohy
c05dadc113 Added COMPAT_LINUX support. 1998-12-15 19:36:36 +00:00
thorpej
ebd6430388 Add some brackes to make EGCS happy. 1998-12-11 18:46:18 +00:00
hwr
59acb69be1 Add (commented out) 'gre' pseudo device line. Feedback is welcome.
Inspired by Klaus Klein.
1998-11-25 20:30:44 +00:00
kleink
94696a9ac3 Add support for the BUFCACHE config option. 1998-11-24 13:19:48 +00:00
mrg
db3051d720 fix problems in many d_mmap routines:
- returned EOPNOTSUPP rather than -1.
	- no check for negative offset.
many of these fix potential security problems in these drivers.


XXX XXX XXX
the d_mmap cdev routine should be changed to have a prototype like:
	paddr_t (*d_mmap) __P((dev_t, off_t, int));

by someone!
1998-11-19 15:38:20 +00:00
oster
cf5710c839 Added a (commented out) configuration line for the RAIDframe device driver. 1998-11-16 16:44:55 +00:00
oster
c74d32c5fc Updating of bdev's and cdev's to support RAIDframe. 1998-11-13 04:47:03 +00:00
thorpej
49c62c4336 Changes to support fork_kthread():
- cpu_set_kpc() now takes void *arg third argument, passed to the
  entry point.
- cpu_fork() allows parent to be non-curproc iff parent is proc0.
  When forking non-curproc, assume its state has already been saved.
- Adjust various pieces of machine-dependent code to account of all of this.
1998-11-11 06:41:23 +00:00
frueauf
a894e3a493 Add braces to make egcs happy. 1998-11-09 15:53:51 +00:00
tron
b296275bb4 Defopt SYSVMSG, SYSVSEM and SYSVSHM. 1998-10-19 22:09:13 +00:00
thorpej
49dd2f5055 Need <sys/device.h> 1998-10-18 18:39:43 +00:00
thorpej
adc5eb3a57 Fix a thinko in previous. 1998-10-18 17:15:04 +00:00
drochner
2468738337 change handling of libkern:
-sys/lib/libkern builds as library per default (as it was documented all
 the time)
-ports able to LKM set "KERN_AS=obj" explicitely in their Makefiles
 (for now; should depend on actual "option LKM" or -better- functions
 included for LKM use should be pulled in by a stub)
-always link libcompat before libkern - libkern stuff can be referred to
 by libcompat, but not the other way
1998-10-15 18:37:13 +00:00
chuck
8bef431273 remove unused share map code from UVM:
- update calls to uvm_unmap_remove/uvm_unmap (mainonly boolean arg
        has been removed)
1998-10-11 23:20:59 +00:00
thorpej
908cdfe4e3 Add scsibus entry points to the cdevsw[]. 1998-10-10 02:00:49 +00:00
thorpej
d681cf055a configure() prototype is in <sys/device.h> 1998-10-06 20:50:15 +00:00
thorpej
c01f29bdf1 Sigh, we are going to have to burn a vector for Just Sigreturn again,
for now, until we have a more generic {get,set}context().  Update the
comment for trap #3 accordingly.
1998-10-04 23:38:55 +00:00
thorpej
ed03ee06e1 Update for signal changes. 1998-10-01 08:28:30 +00:00
thorpej
d15a64c38b Adapt to signal changes. 1998-10-01 02:53:53 +00:00
thorpej
8b220e1148 Define SYS_compat_13_sigreturn13. 1998-10-01 00:29:51 +00:00
thorpej
bcf14a99e2 Garbage collect trap #1 and trap #2 handlers; they're moved to
trap_subr.s
1998-09-30 23:47:33 +00:00
thorpej
1e62485c23 If !COMPAT_13, make trap #1 produce an illegal instruction. Fix the comment
for trap #2 to reflect that it's the trace trap.
1998-09-30 23:13:58 +00:00
thorpej
a11e6632a8 Pull in opt_compat_netbsd.h 1998-09-30 23:01:28 +00:00
thorpej
35d282c8d5 Make sure SYS_exit and SYS___sigreturn14 are defined. Garbage collect
SYS_sigreturn.
1998-09-30 22:23:13 +00:00
thorpej
38084c6615 Note that trap #1 is compat_13_sigreturn, and give trap #3 to syscalls
which require special handling, e.g. sigreturn on m68k.

This differs from the old sigreturn trap in that we require the syscall
number to be in register d0, just like the regular syscall entry point.
This will allow sigreturn to be versioned in the future without the need
to allocate another trap vector.
1998-09-30 22:14:11 +00:00
mycroft
7b15b3b56d Minor change. 1998-09-13 12:01:41 +00:00
thorpej
70e641047c In cpu_coredump(), use MID_MACHINE rather than MID_* (whatever it expands
to).
1998-09-09 11:17:24 +00:00
thorpej
8abe0d6b1c Adjust for the new "reaper" kernel thread: do not free the vmspace and
u-area in machine-dependent code.  Instead, call exit2() to schedule
the reaper to free them for us, once it is safe to do so (i.e. we are
no longer running on the dead proc's vmspace and stack).
1998-09-09 00:07:48 +00:00
lukem
c9db84ecc9 distclean is a synonym for cleandir 1998-09-05 15:15:14 +00:00
kleink
ef1837c1ad Fix typo in previous (!UVM case, hence insignificant). 1998-09-03 12:38:31 +00:00
frueauf
56c79255db Fix typo: dbaddr_t -> db_addr_t. 1998-08-31 19:20:17 +00:00
thorpej
70b6acd9df Use NFS_BOOT_BOOTPARAMS until we change the boot program to use DHCP 1998-08-28 04:56:15 +00:00
kleink
a6d3fb3799 vm_offset_t -> {paddr_t,vaddr_t}, vm_size_t -> vsize_t 1998-08-20 08:33:41 +00:00
mycroft
62b1bf3e2e Assign my copyrights to TNF. 1998-08-15 10:51:16 +00:00
mycroft
6dc903202f Assign my copyrights to TNF. 1998-08-15 10:10:47 +00:00
scottr
3e2efa4365 Fix a prototype tyop spotted by Bill Studenmund: s/clnintr/clnlintr/ 1998-08-12 06:46:57 +00:00