Re: new swap cache regime

Andrea Arcangeli (andrea@e-mind.com)
Sun, 27 Sep 1998 20:57:45 +0200 (CEST)


On Sun, 27 Sep 1998, Linus Torvalds wrote:

>If the only problem is that we cannot do a "swapoff()" on the device, we
>should just make swapoff() know about the swap-cache, and walk the page
>list. That's fairly easy to do, and implies zero overhead for the exit()
>case.

swapoff() just know about the swap cache.

The good point of this my new patch is that the swap cache pages that I am
freeing at exit(2) time can' t be useful anymore. Usually the _cache_
contains data and not _garbage_.

Having garbage in the cache will cause that shrink_mmap() will eventually
free an useful cache page instead of doing the right thing -> freeing a
cache page that contains garbage.

If you don' t like to change swap_free() (for exit(2) performance)
another solution would be to add the shrink_swap_cache() in
try_to_free_page (implemented a bit different than it was at first) that
will be able to remove _only_the_garbage_ in the swap cache. This way
garbage swap cache pages will have a major probabilty to be freed I think.

This is my thought but I can be totally wrong because I don' t know
many things in the kernel...

Andrea[s] Arcangeli

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/