Messages in this thread |  | | Date | Tue, 1 May 2001 14:00:03 +0100 | From | "Stephen C. Tweedie" <> | Subject | Re: 2.4 and 2GB swap partition limit |
| |
Hi,
On Mon, Apr 30, 2001 at 07:12:12PM +0100, Alan Cox wrote: > > paging in just released 2.4.4, but in previuos kernel, a page that was > > paged-out, reserves its place in swap even if it is paged-in again, so > > once you have paged-out all your ram at least once, you can't get any > > more memory, even if swap is 'empty'. > > This is a bug in the 2.4 VM, nothing more or less. It and the horrible bounce > buffer bugs are forcing large machines to remain on 2.2. So it has to get > fixed
Umm, 2.2 can behave in the same way. The only difference in the 2.4 behaviour is that 2.4 can maintain the swap cache effect for dirty pages as well as clean ones. An application which creates a large in-core data set and then does not modify it will show exactly the same behaviour on 2.2.
To call it a "bug" is to imply that "fixing it" is the right thing to do. It might be in some cases, but discarding the swap entry has a cost --- you fragment swap, and if the page in memory is clean, you end up increasing the amount of swap IO.
The right fix is to reclaim such pages only when we need to. To disable swap caching when we still have enough swap free would hurt users who have the spare swap to cope with it.
--Stephen - 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/
|  |