yamt
ac54aa2f64
vm_map_locked_p: add comments
2009-01-13 14:04:35 +00:00
ad
ae6c4143ce
Move a couple of calls to pmap_update().
2008-12-20 11:33:38 +00:00
cegger
9b87d582bd
kill MALLOC and FREE macros.
2008-12-17 20:51:31 +00:00
christos
9a5d3f2817
replace bitmask_snprintf(9) with snprintb(3)
2008-12-16 22:35:21 +00:00
ad
b5413f0358
It's easier for kernel reserve pages to be consumed because the pagedaemon
...
serves as less of a barrier these days. Restrict provision of kernel reserve
pages to kmem and one of these cases:
- doing a NOWAIT allocation
- caller is a realtime thread
- caller is a kernel thread
- explicitly requested, for example by the pmap
2008-12-13 11:34:43 +00:00
ad
a371a02d26
PR port-amd64/32816 amd64 can not load lkms
...
Change some assertions to partially allow for VM_MAP_IS_KERNEL(map) where
map is outside the range of kernel_map.
2008-12-01 10:54:57 +00:00
matt
5698938787
Make uvm_map.? use <sys/rb.h> instead of <sys/tree.h>. Change the
...
ambiguous members ownspace/space to gap/maxgap. Add some evcnt for
evaluation of lookups using tree/list. Drop threshold of using
tree for lookups from > 30 to > 15.
Bump kernel version to 4.99.71
2008-07-29 00:03:06 +00:00
matt
ad65eb54bc
Add PMAP_KMPAGE flag for pmap_kenter_pa. This allows pmaps to know that
...
the page being entered is being for the kernel memory allocator. Such pages
should have no references and don't need bookkeeping.
2008-07-16 00:11:27 +00:00
skrll
84009eaecf
English improvement in comments.
...
"seems good to me :)" from yamt.
2008-07-11 07:09:18 +00:00
ad
f00b42c246
Back out previous.
2008-06-06 14:01:32 +00:00
ad
ad1863a64a
Wrap an expensive check in DIAGNOSTIC.
2008-06-06 13:52:56 +00:00
ad
5d66fa5745
- Switch off the map evcnts by default.
...
- SAVE_HINT() doesn't need to be atomic.
2008-06-04 17:47:40 +00:00
ad
06c343ac94
vm_page: put TAILQ_ENTRY into a union with LIST_ENTRY, so we can use both.
2008-06-04 12:41:40 +00:00
ad
0d151db6c9
Don't needlessly acquire v_interlock.
2008-06-02 16:00:33 +00:00
ad
8350e2a9e8
Missing cv_destroy().
2008-05-31 13:00:03 +00:00
ad
7d6bc631b9
Disable preemption while swapping pmap.
2008-04-27 11:39:46 +00:00
yamt
fb0cfeb7dd
fix a locking botch. PR/38415 from Wolfgang Solfrank.
2008-04-26 13:44:00 +00:00
yamt
5f4f3b8ca8
fix "stale map" assertions. PR/38153 from Sarton O'Brien.
2008-03-04 09:32:01 +00:00
chris
855792073c
Add some more missing pmap_update()s following pmap_kremove()s.
2008-02-23 17:27:58 +00:00
yamt
2b40f35040
push pmap_clear_reference calls into pdpolicy code, where reference bits
...
actually matter.
2008-01-18 10:48:23 +00:00
yamt
74e0872eca
simplify locking and remove vm_map_upgrade/downgrade.
...
this fixes a deadlock due to read-lock recursion of map->lock.
2008-01-08 13:09:55 +00:00
ad
4a780c9ae2
Merge vmlocking2 to head.
2008-01-02 11:48:20 +00:00
yamt
0c38201391
add ddb "whatis" command. inspired from solaris ::whatis dcmd.
2007-12-13 02:45:09 +00:00
xtraeme
f444fd7856
Make this build without LOCKDEBUG (the if statement that uses
...
LOCKDEBUG_MEM_CHECK).
2007-11-26 08:22:32 +00:00
yamt
1a95aafc2b
uvm_map_extract: for UVM_EXTRACT_QREF, mark entries UVM_MAP_NOMERGE.
2007-11-26 08:20:46 +00:00
yamt
89169ed40b
uvm_unmap1: LOCKDEBUG_MEM_CHECK for kernel_map.
2007-11-26 08:15:19 +00:00
yamt
0de985a71c
uvm_map_reserve: don't ignore alignment. fixes mremap.
2007-10-15 11:24:30 +00:00
skrll
0d58a1f020
Don't restrict the offset when allocating a map entry for in-kernel map -
...
use UVM_UNKNOWN_OFFSET in the call to uvm_map_prepare.
This fixes a '"panic: malloc: out of space in kmem_map" when it's not
really' testcase of mine, and one reported to me by chuq. This is likely
to fix PR/35587 as well.
Looks/seems fine to me from chuq and yamt. Thanks.
2007-10-12 06:45:17 +00:00
ad
7dad9f7391
Merge from vmlocking:
...
- Split vnode::v_flag into three fields, depending on field locking.
- simple_lock -> kmutex in a few places.
- Fix some simple locking problems.
2007-10-10 20:42:20 +00:00
ad
a412ed5978
Also initialize map->lock for INTRSAFE maps.
2007-08-20 13:34:52 +00:00
ad
f6481c29d3
uvmspace_free: destroy locks.
2007-08-20 13:33:47 +00:00
ad
4688843d2b
Merge unobtrusive locking changes from the vmlocking branch.
2007-07-21 19:21:53 +00:00
ad
88ab7da936
Merge some of the less invasive changes from the vmlocking branch:
...
- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements
2007-07-09 20:51:58 +00:00
ad
59d979c5f1
Pass an ipl argument to pool_init/POOL_INIT to be used when initializing
...
the pool's lock.
2007-03-12 18:18:22 +00:00
christos
53524e44ef
Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
2007-03-04 05:59:00 +00:00
thorpej
b3667ada6d
TRUE -> true, FALSE -> false
2007-02-22 06:05:00 +00:00
thorpej
712239e366
Replace the Mach-derived boolean_t type with the C99 bool type. A
...
future commit will replace use of TRUE and FALSE with true and false.
2007-02-21 22:59:35 +00:00
yamt
1a7bc55dcc
remove some __unused from function parameters.
2006-11-01 10:17:58 +00:00
uwe
5704a46a71
uvm_page_printall: With new PQ_* flags pg->pqflags no longer fits and
...
makes the output of "show all pages" ragged. Widen the field to 4 chars.
2006-10-26 20:00:52 +00:00
christos
4d595fd7b1
- sprinkle __unused on function decls.
...
- fix a couple of unused bugs
- no more -Wno-unused for i386
2006-10-12 01:30:41 +00:00
yamt
8e991698b9
revert a change which was unintentionally slipped in via yamt-pdpolicy branch.
2006-09-16 07:14:38 +00:00
yamt
9d3e3eab23
merge yamt-pdpolicy branch.
...
- separate page replacement policy from the rest of kernel
- implement an alternative replacement policy
2006-09-15 15:51:12 +00:00
yamt
d447115889
make amap use kmem_alloc, rather than malloc.
...
(ie. make it use kernel_map, rather than kmem_map.)
kmem_map is more restricted than kernel_map,
and there's no point for amap to use it.
2006-06-25 08:03:46 +00:00
yamt
c24f70bcad
move wait points for kva from upper layers to vm_map. PR/33185 #1 .
...
XXX there is a concern about interaction with kva fragmentation.
see: http://mail-index.NetBSD.org/tech-kern/2006/05/11/0000.html
2006-05-25 14:27:28 +00:00
elad
b3e7e1b010
Better implementation of PaX MPROTECT, after looking some more into the
...
code and not trying to use temporary solutions.
Lots of comments and help from YAMAMOTO Takashi, also thanks to the PaX
author for being quick to recognize that something fishy's going on. :)
Hook up in mmap/vmcmd rather than (ugh!) uvm_map_protect().
Next time I suggest to commit a temporary solution just revoke my
commit bit.
2006-05-20 15:45:37 +00:00
elad
04d63f90b5
Introduce PaX MPROTECT -- mprotect(2) restrictions used to strengthen
...
W^X mappings.
Disabled by default.
First proposed in:
http://mail-index.netbsd.org/tech-security/2005/12/18/0000.html
More information in:
http://pax.grsecurity.net/docs/mprotect.txt
Read relevant parts of options(4) and sysctl(3) before using!
Lots of thanks to the PaX author and Matt Thomas.
2006-05-16 00:08:24 +00:00
elad
fc9422c9d9
integrate kauth.
2006-05-14 21:31:52 +00:00
yamt
de6ea5711e
- rename uvm_tree_sanity to uvm_map_check and add some
...
(non tree related) checks.
- remove treesanity_label. instead, just panic if any corruption is detected.
2006-05-14 08:22:50 +00:00
yamt
37f3579cf8
- uvm_mapent_trymerge: don't forget to update hints.
...
- clear_hints: new function.
- uvm_map_replace: use clear_hints. no functional change.
- add some assertions.
2006-05-14 08:21:36 +00:00
yamt
be55e1f38a
update first_free correctly.
2006-05-14 08:20:35 +00:00