Why not add a config option to choose between code for two behaviors:
(1 being the default, of course)
1. Current behavior, usualy a Good Thing, sometimes a Bad Thing, I've
had apps that had to call up in their entirety from swap space, while I
still had plenty of "avalible" RAM left ("avalible" meaning free, and
cache/buffers.) It seems the kernel puts a higher priority on caching
and buffers than on memory that hasn't been accessed in a while, which,
as I said, is usualy good, but not always.
2. Don't swap ANYTHING to disk until avalible RAM drops below, say,
15%. And put cache on a sanity check; if the system is going to swap to
disk because avalible RAM drops below 15%, and cache makes up more
than, say, 45%, start dropping the oldest stuff in the cache to free up
RAM instead of swapping. (I'm assuming 128-256MB+ of RAM here, for
anything smaller, default is probably best.)
At the very least, I'd like to see #2 tried, if someone that knows the
VM system has time to spare on it.
Cache/swap practices in the kernel have been bugging me for a long time.
-
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/