Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

NetBSD master CVS tree commits



ross
Fri Jan 30 20:02:46 PST 1998
Update of /cvsroot/src/sys/vm
In directory netbsd1:/var/slash-tmp/cvs-serv755

Modified Files:
        vm_extern.h vm_fault.c vm_glue.c vm_kern.c vm_object.c 
        vm_object.h vm_page.c vm_pageout.c vm_pageout.h 
Log Message:
NFS swap fix. Most files here are modified purely to add a tsleep() wmesg
string. The actual functional changes are:

        1. in vm_page_alloc(), restore some long lost code by Paul Kranenburg
        that reserves the last few pages for kernel objects, adding an 
        additional escape for the pageout daemon. 

        2. In vm_wait() (replaces VM_WAIT), recognize the amusing fatal
        deadlock where the pagedemon sleeps on a channel that only it ever
        wakes up, and add a timeout and printf. Mod 1 should generally
        prevent this from happening in any case.

        3. Fix a livelock in vm_pageout_page() caused by a pre-wakeup of
        page consumers prior to the pageout, which can easily fail over
        memory issues in NFS and IP code. Also, ++ cnt.v_pageouts only
        if the pageout succeeded.




Home | Main Index | Thread Index | Old Index