Re: [patch -mm v2 04/10] oom: remove special handling for pagefault ooms

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 3 Mar 2010, KAMEZAWA Hiroyuki wrote:

> > This patch causes a regression???  You never said that in any of your 
> > reviews and I have no idea what you're talking about, this patch simply 
> > cleans up the code and closes a race where VM_FAULT_OOM could needlessly 
> > kill tasks in parallel oom conditions.
> > 
> try_set_system_oom() is not called in memory_cgroup_out_of_memory() path.
> Then, oom kill twice.
> 

So how does this cause a regression AT ALL?  Calling try_set_system_oom() 
in pagefault_out_of_memory() protects against concurrent out_of_memory() 
from the page allocator before a task is actually killed.  So this patch 
closes that race entirely.  So it most certainly does not introduce a 
regression.

You said earlier that mem_cgroup_out_of_memory() need not serialize 
against parallel oom killings because in that scenario we must kill 
something anyway, memory freeing from other ooms won't help if a memcg is 
over its limit.  So, yeah, we may kill two tasks if both the system and a 
memcg are oom in parallel and neither have actually killed a task yet, but 
that's much more jusitiable since we shouldn't rely on a memcg oom to free 
memory for the entire system.

So, again, there's absolutely no regression introduced by this patch.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]