From: Michal Hocko <mhocko@kernel.org> To: Vlastimil Babka <vbabka@suse.cz> Cc: Andrew Morton <akpm@linux-foundation.org>, KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>, Reza Arbab <arbab@linux.vnet.ibm.com>, Yasuaki Ishimatsu <yasu.isimatu@gmail.com>, qiuxishi@huawei.com, Igor Mammedov <imammedo@redhat.com>, Vitaly Kuznetsov <vkuznets@redhat.com>, linux-mm@kvack.org, LKML <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 1/2] mm, memory_hotplug: do not fail offlining too early Date: Wed, 13 Sep 2017 14:10:01 +0200 [thread overview] Message-ID: <20170913121001.k3a5tkvunmncc5uj@dhcp22.suse.cz> (raw) In-Reply-To: <9fad7246-c634-18bb-78f9-b95376c009da@suse.cz> On Wed 13-09-17 13:41:20, Vlastimil Babka wrote: > On 09/11/2017 10:17 AM, Michal Hocko wrote: [...] > > Yes, we should be able to distinguish the two and hopefully we can teach > > the migration code to distinguish between EBUSY (likely permanent) and > > EGAIN (temporal) failure. This sound like something we should aim for > > longterm I guess. Anyway as I've said in other email. If somebody really > > wants to have a guaratee of a bounded retry then it is trivial to set up > > an alarm and send a signal itself to bail out. > > Sure, I would just be careful about not breaking existing userspace > (udev?) when offline triggered via ACPI from some management interface > (or whatever the exact mechanism is). The thing is that there is absolutely no timing guarantee even with retry limit in place. We are doing allocations, potentially bouncing on locks which can be taken elsewhere etc... So if somebody really depend on this then it is pretty much broken already. > > Do you think that the changelog should be more clear about this? > > It certainly wouldn't hurt :) So what do you think about the following wording: commit 23c4ded55c2ba880165a9f5b8a67694361fb6bc7 Author: Michal Hocko <mhocko@suse.com> Date: Mon Aug 28 13:13:06 2017 +0200 mm, memory_hotplug: remove timeout from __offline_memory We have a hardcoded 120s timeout after which the memory offline fails basically since the hot remove has been introduced. This is essentially a policy implemented in the kernel. Moreover there is no way to adjust the timeout and so we are sometimes facing memory offline failures if the system is under a heavy memory pressure or very intensive CPU workload on large machines. It is not very clear what purpose the timeout actually serves. The offline operation is interruptible by a signal so if userspace wants some timeout based termination this can be done trivially by sending a signal. If there is a strong usecase to do this from the kernel then we should do it properly and have a it tunable from the userspace with the timeout disabled by default along with the explanation who uses it and for what purporse. Acked-by: Vlastimil Babka <vbabka@suse.cz> Signed-off-by: Michal Hocko <mhocko@suse.com> -- Michal Hocko SUSE Labs
WARNING: multiple messages have this Message-ID (diff)
From: Michal Hocko <mhocko@kernel.org> To: Vlastimil Babka <vbabka@suse.cz> Cc: Andrew Morton <akpm@linux-foundation.org>, KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>, Reza Arbab <arbab@linux.vnet.ibm.com>, Yasuaki Ishimatsu <yasu.isimatu@gmail.com>, qiuxishi@huawei.com, Igor Mammedov <imammedo@redhat.com>, Vitaly Kuznetsov <vkuznets@redhat.com>, linux-mm@kvack.org, LKML <linux-kernel@vger.kernel.org> Subject: Re: [PATCH 1/2] mm, memory_hotplug: do not fail offlining too early Date: Wed, 13 Sep 2017 14:10:01 +0200 [thread overview] Message-ID: <20170913121001.k3a5tkvunmncc5uj@dhcp22.suse.cz> (raw) In-Reply-To: <9fad7246-c634-18bb-78f9-b95376c009da@suse.cz> On Wed 13-09-17 13:41:20, Vlastimil Babka wrote: > On 09/11/2017 10:17 AM, Michal Hocko wrote: [...] > > Yes, we should be able to distinguish the two and hopefully we can teach > > the migration code to distinguish between EBUSY (likely permanent) and > > EGAIN (temporal) failure. This sound like something we should aim for > > longterm I guess. Anyway as I've said in other email. If somebody really > > wants to have a guaratee of a bounded retry then it is trivial to set up > > an alarm and send a signal itself to bail out. > > Sure, I would just be careful about not breaking existing userspace > (udev?) when offline triggered via ACPI from some management interface > (or whatever the exact mechanism is). The thing is that there is absolutely no timing guarantee even with retry limit in place. We are doing allocations, potentially bouncing on locks which can be taken elsewhere etc... So if somebody really depend on this then it is pretty much broken already. > > Do you think that the changelog should be more clear about this? > > It certainly wouldn't hurt :) So what do you think about the following wording: commit 23c4ded55c2ba880165a9f5b8a67694361fb6bc7 Author: Michal Hocko <mhocko@suse.com> Date: Mon Aug 28 13:13:06 2017 +0200 mm, memory_hotplug: remove timeout from __offline_memory We have a hardcoded 120s timeout after which the memory offline fails basically since the hot remove has been introduced. This is essentially a policy implemented in the kernel. Moreover there is no way to adjust the timeout and so we are sometimes facing memory offline failures if the system is under a heavy memory pressure or very intensive CPU workload on large machines. It is not very clear what purpose the timeout actually serves. The offline operation is interruptible by a signal so if userspace wants some timeout based termination this can be done trivially by sending a signal. If there is a strong usecase to do this from the kernel then we should do it properly and have a it tunable from the userspace with the timeout disabled by default along with the explanation who uses it and for what purporse. Acked-by: Vlastimil Babka <vbabka@suse.cz> Signed-off-by: Michal Hocko <mhocko@suse.com> -- Michal Hocko SUSE Labs -- 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/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2017-09-13 12:10 UTC|newest] Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-09-04 8:21 [PATCH 0/2] mm, memory_hotplug: redefine memory offline retry logic Michal Hocko 2017-09-04 8:21 ` Michal Hocko 2017-09-04 8:21 ` [PATCH 1/2] mm, memory_hotplug: do not fail offlining too early Michal Hocko 2017-09-04 8:21 ` Michal Hocko 2017-09-05 6:29 ` Anshuman Khandual 2017-09-05 6:29 ` Anshuman Khandual 2017-09-05 7:13 ` Michal Hocko 2017-09-05 7:13 ` Michal Hocko 2017-09-08 17:26 ` Vlastimil Babka 2017-09-08 17:26 ` Vlastimil Babka 2017-09-11 8:17 ` Michal Hocko 2017-09-11 8:17 ` Michal Hocko 2017-09-13 11:41 ` Vlastimil Babka 2017-09-13 11:41 ` Vlastimil Babka 2017-09-13 12:10 ` Michal Hocko [this message] 2017-09-13 12:10 ` Michal Hocko 2017-09-13 12:14 ` Michal Hocko 2017-09-13 12:14 ` Michal Hocko 2017-09-13 12:19 ` Vlastimil Babka 2017-09-13 12:19 ` Vlastimil Babka 2017-09-13 12:32 ` Michal Hocko 2017-09-13 12:32 ` Michal Hocko 2017-09-04 8:21 ` [PATCH 2/2] mm, memory_hotplug: remove timeout from __offline_memory Michal Hocko 2017-09-04 8:21 ` Michal Hocko 2017-09-04 8:58 ` Xishi Qiu 2017-09-04 8:58 ` Xishi Qiu 2017-09-04 9:01 ` Michal Hocko 2017-09-04 9:01 ` Michal Hocko 2017-09-04 9:05 ` Xishi Qiu 2017-09-04 9:05 ` Xishi Qiu 2017-09-04 9:15 ` Michal Hocko 2017-09-04 9:15 ` Michal Hocko 2017-09-05 5:46 ` Anshuman Khandual 2017-09-05 5:46 ` Anshuman Khandual 2017-09-05 7:23 ` Michal Hocko 2017-09-05 7:23 ` Michal Hocko 2017-09-05 8:54 ` Anshuman Khandual 2017-09-05 8:54 ` Anshuman Khandual 2017-09-08 17:27 ` Vlastimil Babka 2017-09-08 17:27 ` Vlastimil Babka 2017-09-18 7:08 [PATCH v2 0/2] mm, memory_hotplug: redefine memory offline retry logic Michal Hocko 2017-09-18 7:08 ` [PATCH 1/2] mm, memory_hotplug: do not fail offlining too early Michal Hocko 2017-09-18 7:08 ` Michal Hocko 2017-10-10 12:05 ` Michael Ellerman 2017-10-10 12:05 ` Michael Ellerman 2017-10-10 12:27 ` Michal Hocko 2017-10-10 12:27 ` Michal Hocko 2017-10-11 2:37 ` Michael Ellerman 2017-10-11 2:37 ` Michael Ellerman 2017-10-11 5:19 ` Michael Ellerman 2017-10-11 5:19 ` Michael Ellerman 2017-10-11 14:05 ` Anshuman Khandual 2017-10-11 14:05 ` Anshuman Khandual 2017-10-11 14:16 ` Michal Hocko 2017-10-11 14:16 ` Michal Hocko 2017-10-11 6:51 ` Michal Hocko 2017-10-11 6:51 ` Michal Hocko 2017-10-11 8:04 ` Vlastimil Babka 2017-10-11 8:04 ` Vlastimil Babka 2017-10-11 8:13 ` Michal Hocko 2017-10-11 8:13 ` Michal Hocko 2017-10-11 11:17 ` Vlastimil Babka 2017-10-11 11:17 ` Vlastimil Babka 2017-10-11 11:24 ` Michal Hocko 2017-10-11 11:24 ` Michal Hocko 2017-10-13 11:42 ` Michael Ellerman 2017-10-13 11:42 ` Michael Ellerman 2017-10-13 11:58 ` Michal Hocko 2017-10-13 11:58 ` Michal Hocko
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20170913121001.k3a5tkvunmncc5uj@dhcp22.suse.cz \ --to=mhocko@kernel.org \ --cc=akpm@linux-foundation.org \ --cc=arbab@linux.vnet.ibm.com \ --cc=imammedo@redhat.com \ --cc=kamezawa.hiroyu@jp.fujitsu.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=qiuxishi@huawei.com \ --cc=vbabka@suse.cz \ --cc=vkuznets@redhat.com \ --cc=yasu.isimatu@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.