summaryrefslogtreecommitdiff
path: root/sys/uvm
AgeCommit message (Collapse)Author
2004-12-30Import M_CANFAIL support from NetBSD, removes a nasty panic during low-mem ↵Niklas Hallqvist
scenarios, instead generating an ENOMEM backfeed, ok tedu@, prodded by many
2004-12-26Use list and queue macros where applicable to make the code easier to read;Miod Vallat
no change in compiler assembly output.
2004-11-29ansi + some knf, no binary changeHans-Joerg Hoexer
ok deraadt
2004-09-23vput on all paths after vget (currently unused code). from patrick latifiTed Unangst
2004-08-24change physmem divisor to 256. divide by page size was wrong. this doesTed Unangst
what i intended all along, without contrived arithmetic screw up. from discussions with mickey and deraadt
2004-08-24adapt uvm_km_pages_lowat to physmem. thanks testers. ok deraadt@Ted Unangst
2004-08-06rename sparc kill_user_windows() to pmap_unuse_final(). provide empty stubsTheo de Raadt
on all other architectures. remove last architecture dependent #ifdef from uvm code.
2004-08-03the rest of the '#if DIAGNOSTIC' -> '#ifdef DIAGNOSTIC' in the kernel; ok miod@Todd T. Fries
2004-07-21Yet another victim of inline masturbation.Artur Grabowski
Remove inline from a few functions, shrink the kernel by a few kB and make things faster. A simple compilation on amd64 spends around 5% less time in kernel. Yes, it's faster without inlines, now go buy a book about modern cpu architectures and find a chapter about the new and revolutionary thing called "cache". deraadt@ ok
2004-07-13#define __HAVE_PMAP_DIRECT and use it. requested by artTed Unangst
2004-06-21First step towards more sane time handling in the kernel -- this changesThorsten Lockert
things such that code that only need a second-resolution uptime or wall time, and used to get that from time.tv_secs or mono_time.tv_secs now get this from separate time_t globals time_second and time_uptime. ok art@ niklas@ nordin@
2004-06-13debranch SMP, have funNiklas Hallqvist
2004-06-09rename POOLPAGE macros to pmap_map_directTed Unangst
break out uvm_km_page bits for this case, no thread here lots of testing tech@, deraadt@, naddy@, mickey@, ...
2004-06-06In printf %p doesn't need extra ``0x''Alexander Yurchenko
2004-05-31explanatory comments for the uvm_km_page functions.Ted Unangst
2004-05-30only free pages if we have write permission and they are not COW.Ted Unangst
prevents msync/madvise funniness from art@ ok deraadt@
2004-05-27change uvm_km_getpage to take waitok argument and sleep if appropriate.Ted Unangst
change both the nointr and default pool allocators to using uvm_km_getpage. change pools to default to a maxpages value of 8, so they hoard less memory. change mbuf pools to use default pool allocator. pools are now more efficient, use less of kmem_map, and a bit faster. tested mcbride, deraadt, pedro, drahn, miod to work everywhere
2004-05-17typoPedro Martelletto
2004-05-07align to __LDPGSZ for anon mmap. this allows userland to be compiledTed Unangst
with a static page size on platforms where it may vary. ok deraadt@ millert@ tdeval@
2004-05-03protecing with NONE means we must drop the wired count.Ted Unangst
solves problems encountered by david@ and dtucker@ (pr3758)
2004-04-28remove mb_object*; ok teduMarkus Friedl
2004-04-20set uvm_km_pages_lowat to 128; unbreaks mbuf allocation;Markus Friedl
tested by jmc, brad, hshoexer
2004-04-19introduce a new km_page allocator that gets pages from kernel_map usingTed Unangst
an interrupt safe thread. use this as the new backend for mbpool and mclpool, eliminating the mb_map. introduce a sysctl kern.maxclusters which controls the limit of clusters allocated. testing by many people, works everywhere but m68k. ok deraadt@ this essentially deprecates the NMBCLUSTERS option, don't use it. this should reduce pressure on the kmem_map and the uvm reserve of static map entries.
2004-02-23sync of pmap_update() calls with NetBSD. pmap_update is defined away onDale Rahn
all architectures but arm, where it is needed.
2004-01-29fix prototype of pmap_update(), ok miod@Dale Rahn
2003-12-26- use 1/2 space for rijndael context in ipsecMarkus Friedl
- rijndael_set_key_enc_only() sets up context for encryption only - rijndael_set_key() always sets up full context - rijndaelKeySetupDec() gets back original protoype - uvm: use _enc_only() interface with hshoexer@, ok deraadt@
2003-12-10dstkva is not a pointer, so comparison with NULL is inappropriate.Jun-ichiro itojun Hagino
2003-12-08remove unneeded uvmfault_unlockmaps; form netbsd via Julien Bordet ↵Michael Shalayeff
<zejames@greyhats.org>; tedu@ ok
2003-12-02do not deref null ptr in uvm_markbad() returned from swapdrum_getsdp() as ↵Michael Shalayeff
others callers do
2003-11-20Sync comments with NetBSD.Alexander Yurchenko
ok millert@
2003-11-20Check for round_page() overflow in uvm_vslock()/uvm_vsunlock().Alexander Yurchenko
ok millert@ henning@ markus@ drahn@
2003-11-18faster pools. split pagelist into full, partial, and empty so we find whatTed Unangst
we're looking for. change small page_header hash table to a splay tree. from Chuck Silvers. tested by brad grange henning mcbride naddy otto
2003-11-08typos from Jonathon Gray;Jason McIntyre
2003-11-08Avoid a race condition while swapping in a process.Thomas Nordin
Tested by mickey@, henning@, ericj@, and beck@. ok mickey@
2003-10-08randomize return from uvm_map_hint. the random increment is limitedTed Unangst
to prevent fragmentation. this has the effect of randomizing unhinted mmap()s, sysV mem, and position of ld.so. tested on many archs by many developers for quite some time. use of MIN to allow m68k to play from miod@. vax is not included. ok deraadt@ miod@
2003-09-03m68k at least doesn't like random mappings. disable for now.Ted Unangst
i386 exec mappings are still random. detected by pvalchev@. ok deraadt@
2003-09-02add a random offset to uvm_map_hint. this has the primary effect ofTed Unangst
scattering ld.so and libraries around, although all mmaps will also have some jitter too. better version after some discussion with drahn testing/ok deraadt henning marcm otto pb
2003-09-01match syscallargs comments with realityHenning Brauer
from Patrick Latifi <patrick.l@hermes.usherb.ca> ok jason@ tedu@
2003-08-15change arguments to suser. suser now takes the process, and a flagsTed Unangst
argument. old cred only calls user suser_ucred. this will allow future work to more flexibly implement the idea of a root process. looks like something i saw in freebsd, but a little different. use of suser_ucred vs suser in file system code should be looked at again, for the moment semantics remain unchanged. review and input from art@ testing and further review miod@
2003-08-10Remove uvm_useracc(): misleading, gives a false sentiment of security, andMiod Vallat
eventually not used anymore. Conforming to art@'s evil plans.
2003-08-06Remove some double semicolons (hmm, do two semis equal a maxi?).Todd C. Miller
I've skipped the GNU stuff for now. From Patrick Latifi.
2003-07-21enforce restrictions on prot and flags to mprotect and mmap. invalid orTed Unangst
undefined flags are now rejected instead of silently ignored. makes "unintentional" mprotect calls a touch harder. ok art@ deraadt@ jason@
2003-07-01add MAP_TRYFIXED, mostly to help emulate other systems.Ted Unangst
when set, uvm will not attempt to avoid a heap address, if requested. from todd vierling, via http://marc.theaimsgroup.com/?l=netbsd-tech-kern&m=105612525808607&w=1
2003-07-01remove sys_omquery. it was only used for two weeks, and you can'tTed Unangst
source upgrade from a system that used it anyway. ok art deraadt drahn
2003-06-29quell a "not a pointer" warning by using 0x%lx instead of %p for a vaddr_tAnil Madhavapeddy
suggested by art@
2003-06-12Fix compile with NFS but not FIFO.Henric Jungheim
ok deraadt@
2003-06-02Remove the advertising clause in the UCB license which BerkeleyTodd C. Miller
rescinded 22 July 1999. Proofed by myself and Theo.
2003-06-01Typo in panic message.Miod Vallat
2003-05-17Typos; from Julien Bordet <zejames@greyhats.org>Alexander Yurchenko
Close PR 3262
2003-05-05Move exec base to 0x1c000000, exe/data gap to 512MB. Allows betterDale Rahn
interleave of exe/shared libs. Raise MAXDSIZ back to 1G. This change REQUIRES a binary update on i386.