lkml.org 
[lkml]   [2001]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectThinko in kswapd?
    Hi,

    There is what appears to be a simple thinko in kswapd. We really
    ought to keep kswapd running as long as there is either a free space
    or an inactive page shortfall; but right now we only keep going if
    _both_ are short.

    Diff below. With this change, I've got a 64MB box running Applix and
    Star Office with multiple open documents plus a few other big apps
    running, and switching desktops or going between documents is once
    more nice and snappy. Running a normal heavily populated desktop in
    256MB used to be painful, with much apparently unnecessary swapping,
    if we had background page-cache intensive operations (eg find|wc)
    going on: the patched kernel feels much better interactively,
    presumably because kswapd is now doing the work it is supposed to do,
    instead of forcing normal apps to go into page stealing mode
    themselves.

    --Stephen

    --- mm/vmscan.c.~1~ Fri Mar 16 15:39:24 2001
    +++ mm/vmscan.c Thu Mar 22 13:05:37 2001
    @@ -1010,7 +1010,7 @@
    * We go to sleep for one second, but if it's needed
    * we'll be woken up earlier...
    */
    - if (!free_shortage() || !inactive_shortage()) {
    + if (!free_shortage() && !inactive_shortage()) {
    interruptible_sleep_on_timeout(&kswapd_wait, HZ);
    /*
    * If we couldn't free enough memory, we see if it was
    \
     
     \ /
      Last update: 2005-03-22 13:29    [W:2.419 / U:0.472 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site