Messages in this thread |  | | | Date | Mon, 17 Nov 2008 15:30:12 +0900 | | From | KAMEZAWA Hiroyuki <> | | Subject | Re: [PATCH] mm: evict streaming IO cache first | |
On Sun, 16 Nov 2008 20:47:20 -0800
Andrew Morton <akpm@linux-foundation.org> wrote:
> On Sun, 16 Nov 2008 16:20:26 -0500 Rik van Riel <riel@redhat.com> wrote:
> Anyway, we need to do something.
>
> Shouldn't get_scan_ratio() be handling this case already?
>
Hmm, could I make a question ?
I think
- recent_rolated[LRU_FILE] is incremented when file cache is moved from
ACTIVE_FILE to INACTIVE_FILE.
- recent_scanned[LRU_FILE] is sum of scanning numbers on INACTIVE/ACTIVE list
of file.
- file caches are added to INACITVE_FILE, at first.
- get_scan_ratio() calculates %file to be
file recent rotated.
%file = IO_cost * ------------ / -------------
anon + file recent scanned.
But when "files are used by streaming or some touch once application",
there is no rotation because they are in INACTIVE FILE at first add_to_lru().
But recent_rotated will not increase while recent_scanned goes bigger and bigger.
Then %file goes to 0 rapidly.
Hmm?
Thanks,
-kame
|  |