Messages in this thread |  | | Date | Mon, 17 Sep 2001 11:07:37 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: broken VM in 2.4.10-pre9 |
| |
On Mon, 17 Sep 2001, Linus Torvalds wrote: > > NOTE NOTE NOTE! This is _literally_ a 15-minute hack, and I expect that > there are paths where I forget to remove the page from the LRU queue > (which should result in a nice big oops in __free_pages_ok()).
Actually, the most common failure mode seems to be that we have plenty of inactive pages (all the anonymous pages that we added to the LRU list and thus to the statistics). And because we have tons of these pages, the VM scanning is never even started, because do_try_to_free_pages() thinks that it can just launder them.
Which means that we'll never get rid of them. Oops.
So it's easy adding anonymous pages to the LRU lists per se, but it obviously needs some more work to make the scanners be aware of the fact that they are there...
(I suspect that the easiest way to make them be aware of the anonymous pages is to have a bogus address space associated with the anonymous pages, with no actual hashing going on. And then make that address space have a "writepage()" function that turns an anonymous pages into a swap cache page. But I was hoping to get off more easily ;).
Linus
- 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/
|  |