linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] use oom_killer_disabled in all oom pathes
@ 2011-04-26  2:54 Dave Young
  2011-04-26  2:57 ` KOSAKI Motohiro
  0 siblings, 1 reply; 7+ messages in thread
From: Dave Young @ 2011-04-26  2:54 UTC (permalink / raw)
  To: linux-mm, linux-kernel

oom_killer_disable should be a global switch, also fit for oom paths
other than __alloc_pages_slowpath 

Here add it to mem_cgroup_handle_oom and pagefault_out_of_memory as well.

Signed-off-by: Dave Young <hidave.darkstar@gmail.com>
---
 mm/memcontrol.c |    2 +-
 mm/oom_kill.c   |    3 +++

 2 files changed, 4 insertions(+), 1 deletion(-)
--- linux-2.6.orig/mm/memcontrol.c	2011-04-20 15:49:10.336660690 +0800
+++ linux-2.6/mm/memcontrol.c	2011-04-26 10:41:04.746459757 +0800
@@ -1610,7 +1610,7 @@ bool mem_cgroup_handle_oom(struct mem_cg
 	 * under OOM is always welcomed, use TASK_KILLABLE here.
 	 */
 	prepare_to_wait(&memcg_oom_waitq, &owait.wait, TASK_KILLABLE);
-	if (!locked || mem->oom_kill_disable)
+	if (!locked || mem->oom_kill_disable || oom_killer_disabled)
 		need_to_kill = false;
 	if (locked)
 		mem_cgroup_oom_notify(mem);
--- linux-2.6.orig/mm/oom_kill.c	2011-04-20 15:49:10.353327356 +0800
+++ linux-2.6/mm/oom_kill.c	2011-04-26 10:41:04.753126423 +0800
@@ -747,6 +747,9 @@ out:
  */
 void pagefault_out_of_memory(void)
 {
+	if (oom_killer_disabled)
+		return;
+
 	if (try_set_system_oom()) {
 		out_of_memory(NULL, 0, 0, NULL);
 		clear_system_oom();

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] use oom_killer_disabled in all oom pathes
  2011-04-26  2:54 [PATCH] use oom_killer_disabled in all oom pathes Dave Young
@ 2011-04-26  2:57 ` KOSAKI Motohiro
  2011-04-26  3:05   ` Dave Young
  0 siblings, 1 reply; 7+ messages in thread
From: KOSAKI Motohiro @ 2011-04-26  2:57 UTC (permalink / raw)
  To: Dave Young; +Cc: kosaki.motohiro, linux-mm, linux-kernel

> oom_killer_disable should be a global switch, also fit for oom paths
> other than __alloc_pages_slowpath 
> 
> Here add it to mem_cgroup_handle_oom and pagefault_out_of_memory as well.

Can you please explain more? Why should? Now oom_killer_disabled is used
only hibernation path. so, Why pagefault and memcg allocation will be happen?




--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] use oom_killer_disabled in all oom pathes
  2011-04-26  2:57 ` KOSAKI Motohiro
@ 2011-04-26  3:05   ` Dave Young
  2011-04-26  3:14     ` KOSAKI Motohiro
  0 siblings, 1 reply; 7+ messages in thread
From: Dave Young @ 2011-04-26  3:05 UTC (permalink / raw)
  To: KOSAKI Motohiro; +Cc: linux-mm, linux-kernel

On Tue, Apr 26, 2011 at 10:57 AM, KOSAKI Motohiro
<kosaki.motohiro@jp.fujitsu.com> wrote:
>> oom_killer_disable should be a global switch, also fit for oom paths
>> other than __alloc_pages_slowpath
>>
>> Here add it to mem_cgroup_handle_oom and pagefault_out_of_memory as well.
>
> Can you please explain more? Why should? Now oom_killer_disabled is used
> only hibernation path. so, Why pagefault and memcg allocation will be happen?

Indeed I'm using it in virtio balloon test, oom killer triggered when
memory pressure is high.

literally oom_killer_disabled scope should be global, isn't it?

-- 
Regards
dave

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] use oom_killer_disabled in all oom pathes
  2011-04-26  3:05   ` Dave Young
@ 2011-04-26  3:14     ` KOSAKI Motohiro
  2011-04-26  3:19       ` Dave Young
  0 siblings, 1 reply; 7+ messages in thread
From: KOSAKI Motohiro @ 2011-04-26  3:14 UTC (permalink / raw)
  To: Dave Young; +Cc: kosaki.motohiro, linux-mm, linux-kernel

> On Tue, Apr 26, 2011 at 10:57 AM, KOSAKI Motohiro
> <kosaki.motohiro@jp.fujitsu.com> wrote:
> >> oom_killer_disable should be a global switch, also fit for oom paths
> >> other than __alloc_pages_slowpath
> >>
> >> Here add it to mem_cgroup_handle_oom and pagefault_out_of_memory as well.
> >
> > Can you please explain more? Why should? Now oom_killer_disabled is used
> > only hibernation path. so, Why pagefault and memcg allocation will be happen?
> 
> Indeed I'm using it in virtio balloon test, oom killer triggered when
> memory pressure is high.
> 
> literally oom_killer_disabled scope should be global, isn't it?

ok. virtio baloon seems fair usage. if you add new usage of oom_killer_disabled 
into the patch description, I'll ack this one.

thanks.


--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] use oom_killer_disabled in all oom pathes
  2011-04-26  3:19       ` Dave Young
@ 2011-04-26  3:17         ` KAMEZAWA Hiroyuki
  2011-04-26  3:26           ` Dave Young
  0 siblings, 1 reply; 7+ messages in thread
From: KAMEZAWA Hiroyuki @ 2011-04-26  3:17 UTC (permalink / raw)
  To: Dave Young; +Cc: KOSAKI Motohiro, linux-mm, linux-kernel

On Tue, 26 Apr 2011 11:19:22 +0800
Dave Young <hidave.darkstar@gmail.com> wrote:

> On Tue, Apr 26, 2011 at 11:14 AM, KOSAKI Motohiro
> <kosaki.motohiro@jp.fujitsu.com> wrote:
> >> On Tue, Apr 26, 2011 at 10:57 AM, KOSAKI Motohiro
> >> <kosaki.motohiro@jp.fujitsu.com> wrote:
> >> >> oom_killer_disable should be a global switch, also fit for oom paths
> >> >> other than __alloc_pages_slowpath
> >> >>
> >> >> Here add it to mem_cgroup_handle_oom and pagefault_out_of_memory as well.
> >> >
> >> > Can you please explain more? Why should? Now oom_killer_disabled is used
> >> > only hibernation path. so, Why pagefault and memcg allocation will be happen?
> >>
> >> Indeed I'm using it in virtio balloon test, oom killer triggered when
> >> memory pressure is high.
> >>
> >> literally oom_killer_disabled scope should be global, isn't it?
> >
> > ok. virtio baloon seems fair usage. if you add new usage of oom_killer_disabled
> > into the patch description, I'll ack this one.
> 
> Thanks, then I will resend the virtio balloon patch along with this.
> 

Amount of free memory doesn't affect memory cgroup's OOM because it just works
against the limit. So, the code for memcg isn't necessary.


Thanks,
-Kame

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] use oom_killer_disabled in all oom pathes
  2011-04-26  3:14     ` KOSAKI Motohiro
@ 2011-04-26  3:19       ` Dave Young
  2011-04-26  3:17         ` KAMEZAWA Hiroyuki
  0 siblings, 1 reply; 7+ messages in thread
From: Dave Young @ 2011-04-26  3:19 UTC (permalink / raw)
  To: KOSAKI Motohiro; +Cc: linux-mm, linux-kernel

On Tue, Apr 26, 2011 at 11:14 AM, KOSAKI Motohiro
<kosaki.motohiro@jp.fujitsu.com> wrote:
>> On Tue, Apr 26, 2011 at 10:57 AM, KOSAKI Motohiro
>> <kosaki.motohiro@jp.fujitsu.com> wrote:
>> >> oom_killer_disable should be a global switch, also fit for oom paths
>> >> other than __alloc_pages_slowpath
>> >>
>> >> Here add it to mem_cgroup_handle_oom and pagefault_out_of_memory as well.
>> >
>> > Can you please explain more? Why should? Now oom_killer_disabled is used
>> > only hibernation path. so, Why pagefault and memcg allocation will be happen?
>>
>> Indeed I'm using it in virtio balloon test, oom killer triggered when
>> memory pressure is high.
>>
>> literally oom_killer_disabled scope should be global, isn't it?
>
> ok. virtio baloon seems fair usage. if you add new usage of oom_killer_disabled
> into the patch description, I'll ack this one.

Thanks, then I will resend the virtio balloon patch along with this.

-- 
Regards
dave

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] use oom_killer_disabled in all oom pathes
  2011-04-26  3:17         ` KAMEZAWA Hiroyuki
@ 2011-04-26  3:26           ` Dave Young
  0 siblings, 0 replies; 7+ messages in thread
From: Dave Young @ 2011-04-26  3:26 UTC (permalink / raw)
  To: KAMEZAWA Hiroyuki; +Cc: KOSAKI Motohiro, linux-mm, linux-kernel

On Tue, Apr 26, 2011 at 11:17 AM, KAMEZAWA Hiroyuki
<kamezawa.hiroyu@jp.fujitsu.com> wrote:
> On Tue, 26 Apr 2011 11:19:22 +0800
> Dave Young <hidave.darkstar@gmail.com> wrote:
>
>> On Tue, Apr 26, 2011 at 11:14 AM, KOSAKI Motohiro
>> <kosaki.motohiro@jp.fujitsu.com> wrote:
>> >> On Tue, Apr 26, 2011 at 10:57 AM, KOSAKI Motohiro
>> >> <kosaki.motohiro@jp.fujitsu.com> wrote:
>> >> >> oom_killer_disable should be a global switch, also fit for oom paths
>> >> >> other than __alloc_pages_slowpath
>> >> >>
>> >> >> Here add it to mem_cgroup_handle_oom and pagefault_out_of_memory as well.
>> >> >
>> >> > Can you please explain more? Why should? Now oom_killer_disabled is used
>> >> > only hibernation path. so, Why pagefault and memcg allocation will be happen?
>> >>
>> >> Indeed I'm using it in virtio balloon test, oom killer triggered when
>> >> memory pressure is high.
>> >>
>> >> literally oom_killer_disabled scope should be global, isn't it?
>> >
>> > ok. virtio baloon seems fair usage. if you add new usage of oom_killer_disabled
>> > into the patch description, I'll ack this one.
>>
>> Thanks, then I will resend the virtio balloon patch along with this.
>>
>
> Amount of free memory doesn't affect memory cgroup's OOM because it just works
> against the limit. So, the code for memcg isn't necessary.

Right, thanks for pointing out this, will remove the memcg part
>
>
> Thanks,
> -Kame
>
>



-- 
Regards
dave

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2011-04-26  3:26 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-26  2:54 [PATCH] use oom_killer_disabled in all oom pathes Dave Young
2011-04-26  2:57 ` KOSAKI Motohiro
2011-04-26  3:05   ` Dave Young
2011-04-26  3:14     ` KOSAKI Motohiro
2011-04-26  3:19       ` Dave Young
2011-04-26  3:17         ` KAMEZAWA Hiroyuki
2011-04-26  3:26           ` Dave Young

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).