summaryrefslogtreecommitdiff
path: root/sys/uvm/uvm_fault.c
AgeCommit message (Collapse)Author
2006-07-31fix uvmhist #2: args are always u_long so fix missing %d and %x and no %ll; ↵Michael Shalayeff
no change for normal code
2006-07-26fix fmts for UVMHIST_LOG() entries making it more useful on 64bit archs; ↵Michael Shalayeff
miod@ ok
2006-07-13Back out the anon change. Apparently it was tested by a few, but most ofTheo de Raadt
us did not see it or get a chance to test it before it was commited. It broke cvs, in the ami driver, making it not succeed at seeing it's devices.
2006-06-21from netbsd: make anons dynamically allocated from pool.Michael Shalayeff
this results in lesse kva waste due to static preallocation of those for every phys page and also every swap page. tested by beck krw miod
2006-03-06do not panic unwiring unmapped memory (mmap3 regress); from netbsd; ↵Michael Shalayeff
kettenis@ tedu@ ok
2005-11-29apply patch from david hill for two netbsd prs:Ted Unangst
14060 skip MADV_SEQUENTIAL if refaulting 18037 missing pageactivate tested for some time by jolan krw
2005-10-23typoPedro Martelletto
2005-05-03repair file mmapings above 4g; found by chefren; art@ okMichael Shalayeff
2004-08-03the rest of the '#if DIAGNOSTIC' -> '#ifdef DIAGNOSTIC' in the kernel; ok miod@Todd T. Fries
2004-02-23sync of pmap_update() calls with NetBSD. pmap_update is defined away onDale Rahn
all architectures but arm, where it is needed.
2002-03-14First round of __P removal in sysTodd C. Miller
2002-01-02Back out a few more uvm changes, especially wrt swap usage.Miod Vallat
This unbreaks m68k m88k sparc and perhaps others, which eventually froze when hitting swap. Tested by various people on various platforms. ok art@
2001-12-19UBC was a disaster. It worked very good when it worked, but on someArtur Grabowski
machines or some configurations or in some phase of the moon (we actually don't know when or why) files disappeared. Since we've not been able to track down the problem in two weeks intense debugging and we need -current to be stable, back out everything to a state it had before UBC. We apologise for the inconvenience.
2001-12-04Yet another sync to NetBSD uvm.Artur Grabowski
Today we add a pmap argument to pmap_update() and allocate map entries for kernel_map from kmem_map instead of using the static entries. This should get rid of MAX_KMAPENT panics. Also some uvm_loan problems are fixed.
2001-11-28Sync in more uvm from NetBSD. Mostly just cosmetic stuff.Artur Grabowski
Contains also support for page coloring.
2001-11-28Sync in more uvm changes from NetBSD.Artur Grabowski
This time we're getting rid of KERN_* and VM_PAGER_* error codes and use errnos instead.
2001-11-27Merge in the unified buffer cache code as found in NetBSD 2001/03/10. TheArtur Grabowski
code is written mostly by Chuck Silvers <chuq@chuq.com>/<chs@netbsd.org>. Tested for the past few weeks by many developers, should be in a pretty stable state, but will require optimizations and additional cleanups.
2001-11-12Bring in more changes from NetBSD. Mostly pagedaemon improvements.Artur Grabowski
2001-11-09various style fixes.Artur Grabowski
2001-11-06More sync to NetBSD.Artur Grabowski
- Use malloc/free instead of MALLOC/FREE for variable sized allocations. - Move the memory inheritance code to sys/mman.h and rename from VM_* to MAP_* - various cleanups and simplifications.
2001-11-06Move the last content from vm/ to uvm/Artur Grabowski
The only thing left in vm/ are just dumb wrappers. vm/vm.h includes uvm/uvm_extern.h vm/pmap.h includes uvm/uvm_pmap.h vm/vm_page.h includes uvm/uvm_page.h
2001-11-05Minor sync to NetBSD.Artur Grabowski
2001-09-19merge vm/vm_kern.h into uvm/uvm_extern.h; art@ okMichael Shalayeff
2001-08-11Various random fixes from NetBSD.Artur Grabowski
Including support for zeroing pages in the idle loop (not enabled yet).
2001-07-26Add support for disabling swap devices (swapctl -d).Artur Grabowski
Improve error handling on I/O errors to swap. From NetBSD
2001-07-25Change the pmap_enter interface to merge access_type and the wired booleanArtur Grabowski
and arbitrary flags into one argument. One new flag is PMAP_CANFAIL that tells pmap_enter that it can fail if there are not enough resources to satisfy the request. If this flag is not passed, pmap_enter should panic as it should have done before this change (XXX - many pmaps are still not doing that). Only i386 and alpha implement CANFAIL for now. Includes uvm updates from NetBSD.
2001-07-18Get rid of the PMAP_NEW option by making it mandatory for all archs.Artur Grabowski
The archs that didn't have a proper PMAP_NEW now have a dummy implementation with wrappers around the old functions.
2001-06-23Sync with NetBSD 19990911 (just before PMAP_NEW was required)smart
- thread_sleep_msg() -> uvm_sleep() - initialize reference count lock in uvm_anon_{init,add}() - add uao_flush() - replace boolean 'islocked' with 'lockflags' - in uvm_fault() change FALSE to TRUE to in 'wide' fault handling - get rid of uvm_km_get() - various bug fixes
2001-06-08Change the paddr_t pmap_extract(struct pmap *, vaddr_t) interface toArtur Grabowski
boolean_t pmap_extract(struct pmap *, vaddr_t, paddr_t *). Matches NetBSD. Tested by various people on various platforms.
2001-05-09More sync to NetBSD.Artur Grabowski
- Change pmap_change_wiring to pmap_unwire because it's only called that way. - Remove pmap_pageable because it's seldom implemented and when it is, it's either almost useless or incorrect. The same information is already passed to the pmap anyway by pmap_enter and pmap_unwire.
2001-05-07Few fixes from NetBSD.Artur Grabowski
- make sure that vsunlock doesn't unwire mlocked memory. - fix locking in uvm_useracc. - Return the error uvm_fault_wire in uvm_vslock (will be used soon).
2001-03-22Merge in NetBSD's PMAP_NEW, still disabledNiklas Hallqvist
2001-03-22Sync style, typo, and comments a little closer to NetBSD. art@ oksmart
2001-03-09More syncing to NetBSD.Artur Grabowski
Implements mincore(2), mlockall(2) and munlockall(2). mlockall and munlockall are disabled for the moment. The rest is mostly cosmetic.
2001-03-08Replace thread_wakeup() with wakeup(). It is defined in vm_extern.h as asmart
wrapper, so this removes a dependence on the old VM system. From NetBSD. art@ ok
2001-01-29$OpenBSD$Niklas Hallqvist
2000-03-16Bring in some new UVM code from NetBSD (not current).Artur Grabowski
- Introduce a new type of map that are interrupt safe and never allow faults in them. mb_map and kmem_map are made intrsafe. - Add "access protection" to uvm_vslock (to be passed down to uvm_fault and later to pmap_enter). - madvise(2) now works. - various cleanups.
1999-09-03Change the pmap_enter api to pass down an argument that indicatesArtur Grabowski
the access type that caused this mapping. This is to simplify pmaps with mod/ref emulation (none for the moment) and in some cases speed up pmap_is_{referenced,modified}. At the same time, clean up some mappings that had too high protection. XXX - the access type is incorrect in old vm, it's only used by uvm and MD code. The actual use of this in pmap_enter implementations is not in this commit.
1999-08-23sync with NetBSD from 1999.05.24 (there is a reason for this date)Artur Grabowski
Mostly cleanups, but also a few improvements to pagedaemon for better handling of low memory and/or low swap conditions.
1999-02-26add OpenBSD tagsArtur Grabowski
1999-02-26Import of uvm from NetBSD. Some local changes, some code disabledArtur Grabowski