[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-kernel
Subject:    Re: patch for 2.1.51 swap_out (corrected)
From:       Mark Hemment <markhe () nextd ! demon ! co ! uk>
Date:       1997-08-30 21:15:05
[Download RAW message or body]


Hi Bill,

On Fri, 29 Aug 1997, Bill Hawes wrote:
> The patch appears to improve performance under low memory conditions,
> as  would be expected for more efficient swapping.

  Something I noticed a little while ago, which would help under low
memory conditions, but does have a side effect...

  page_unuse() (mm/filemap.c), returns a value greater than two if the
page (which is being unmapped in try_to_swap_out()) cannot be removed from
the page-cache.

  This return value is passed down, and causes the loop in swap_out() to
stop trying to unmap pages from the selected task, and move onto the next
- even though there was no blocking in trying to free from the present
task (so it cannot have 'disappeared').

  Changing the "failure" return value for page_unuse() to 0 should
make it easier to reap memory, but can cause a single VM-area (with a
named mapping) to be hit hard.
  Is the current behaviour the intended behaviour?  Any comments?

Regards,

  markhe

------------------------------------------------------------------
Mark Hemment,                Unix/C Software Engineer (Contractor)
markhe@nextd.demon.co.uk     http://www.nextd.demon.co.uk/
"Success has many fathers, failure is a B**TARD!" - anon
------------------------------------------------------------------


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic