On Tue, May 08, 2012 at 01:13:05AM -0700, Anton Vorontsov wrote:
On Tue, May 08, 2012 at 03:16:59AM -0400, KOSAKI Motohiro wrote: [...]
So, feel free to call me an idiot, but please expand your points a little bit or give a link to the discussion you're referring to?
I don't think you are idiot. But I hope you test your patch before submitting. That just don't work especially on x86. Because of, all x86 box have multiple zone and summarized statistics (i.e. global_page_state() thing) don't work and can't prevent oom nor swapping.
Now I think I understand you: we don't take into account that e.g. DMA zone is not usable by the normal allocations, and so if we're basing our calculations on summarized stats, it is indeed possible to get an OOM in such a case.
Oops. Looking into it more, I think I was wrong here: kernel will surely use pages from the DMA zone when we have no pages in normal zones.
So, I don't see how we can get OOM in that case.
Hm.