>> Its not about the cost of a function call, it's what the FS does to make
>> that call useful. Pretend for a second the VM tells the FS everything it
>> needs to know to age a page (whatever scheme the FS wants to use).
>>
>> Then pretend the VM decides there's memory pressure, and tells the FS
>> subcache to start freeing ram. So, the FS goes through its list of pages
>> and finds the most suitable one for flushing, but it has no idea how
>> suitable that page is in comparison with the pages that don't belong to
>> that FS (or even other pages from different mount points of the same FS
>> flavor).
>>
>
> Why does it need to know how suitable it is compared to the other
> subcaches? It just ages X pages, and depends on the VM to determine how
> large X is. The VM pressures subcaches in proportion to their size, it
> doesn't need to know how suitable one page is compared to another, it
> just has a notion of push on everyone in proportion to their size.
If subcache A has 1000 pages that are very very active, and subcache B has
500 pages that never ever get used, should A get twice as much memory
pressure? That's what we want to avoid, and I don't see how subcaches
allow it.
-chris
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/