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
yamt
38ae305f09
uvm_km_suballoc: consider kva overhead of "kmapent".
...
fixes PR/31275 (me) and PR/32287 (Christian Biere).
2006-05-03 14:12:01 +00:00
yamt
0f4aad0236
- share some code between uvm_map_clip_end and uvm_map_clip_start.
...
- add a map entry sanity-check function, uvm_mapent_check().
discussed on source-changes@.
2006-04-21 14:03:01 +00:00
christos
7778288678
Coverity CID 762: Protect against NULL dereferencing entry->object.uvm_obj
...
like we do a few lines before. Maybe all the tests should be changed
to UVM_ET_ISOBJ(), or the macro should do it internally?
2006-04-13 01:11:08 +00:00
drochner
e10923fd37
-clean up the interface to uvm_fault: the "fault type" didn't serve
...
any purpose (done by a macro, so we don't save any cycles for now)
-kill vm_fault_t; it is not needed for real faults, and for simulated
faults (wiring) it can be replaced by UVM internal flags
-remove <uvm/uvm_fault.h> from uvm_extern.h again
2006-03-15 18:09:25 +00:00
yamt
ec5a93183a
merge yamt-uio_vmspace branch.
...
- use vmspace rather than proc or lwp where appropriate.
the latter is more natural to specify an address space.
(and less likely to be abused for random purposes.)
- fix a swdmover race.
2006-03-01 12:38:10 +00:00
bjh21
0638b201c9
Include page ownership information in the output of the DDB "show all pages"
...
command if UVM_PAGE_TRKOWN is enabled.
2006-02-22 22:20:56 +00:00
bjh21
ed2f09f139
Add a "show all pages" command to DDB which prints one line per physical
...
page in the system. Useful for getting some idea where all your memory's
gone, at least on a sufficiently small system.
2006-02-19 18:52:29 +00:00
yamt
9040ed946b
- amap_copy: take a "flags" argument instead of booleans.
...
- add AMAP_COPY_NOMERGE flag, and use it for uvm_map_extract.
PR/32806 from Julio M. Merino Vidal.
2006-02-15 14:06:45 +00:00
yamt
a3af4c1530
remove the following options. no objections on tech-kern@.
...
UVM_PAGER_INLINE
UVM_AMAP_INLINE
UVM_PAGE_INLINE
UVM_MAP_INLINE
2006-02-11 12:45:07 +00:00
yamt
e8e7ab8637
implement compat_linux mremap.
2006-01-21 13:34:15 +00:00
yamt
5865f6ed1d
uvm_map_replace: remove a wrong comment.
2006-01-21 13:10:41 +00:00
yamt
b88fc0e1b7
make some debug statistics evcnt.
2006-01-15 08:31:31 +00:00
yamt
37dd42949a
clean up uvm_map evcnt code. no functional changes.
2006-01-08 09:18:27 +00:00
perry
0f0296d88a
Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
2005-12-24 20:45:08 +00:00
christos
95e1ffb156
merge ktrace-lwp.
2005-12-11 12:16:03 +00:00
thorpej
5303f3b378
Clean up the cpp macro used to say "we're compiling this specific C file".
2005-06-28 05:25:42 +00:00
thorpej
fcd6584a58
Clean up the use of __inline in this file. In particular, don't inline
...
really big chunks of code. This saves almost 2.5K on a GENERIC i386
kernel, and has the added benefit of not polluting the I$ so much.
2005-06-28 01:07:56 +00:00