[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1376405088.10300.384.camel@misato.fc.hp.com>
Date: Tue, 13 Aug 2013 08:44:48 -0600
From: Toshi Kani <toshi.kani@...com>
To: "Rafael J. Wysocki" <rjw@...k.pl>
Cc: akpm@...ux-foundation.org, linux-mm@...ck.org,
linux-acpi@...r.kernel.org, linux-kernel@...r.kernel.org,
kosaki.motohiro@...fujitsu.com, kamezawa.hiroyu@...fujitsu.com,
tangchen@...fujitsu.com, isimatu.yasuaki@...fujitsu.com,
liwanp@...ux.vnet.ibm.com
Subject: Re: [PATCH] mm/hotplug: Remove stop_machine() from
try_offline_node()
On Tue, 2013-08-13 at 13:41 +0200, Rafael J. Wysocki wrote:
> On Monday, August 12, 2013 01:34:31 PM Toshi Kani wrote:
> > lock_device_hotplug() serializes hotplug & online/offline operations.
> > The lock is held in common sysfs online/offline interfaces and ACPI
> > hotplug code paths.
> >
> > try_offline_node() off-lines a node if all memory sections and cpus
> > are removed on the node. It is called from acpi_processor_remove()
> > and acpi_memory_remove_memory()->remove_memory() paths, both of which
> > are in the ACPI hotplug code.
> >
> > try_offline_node() calls stop_machine() to stop all cpus while checking
> > all cpu status with the assumption that the caller is not protected from
> > CPU hotplug or CPU online/offline operations. However, the caller is
> > always serialized with lock_device_hotplug(). Also, the code needs to
> > be properly serialized with a lock, not by stopping all cpus at a random
> > place with stop_machine().
> >
> > This patch removes the use of stop_machine() in try_offline_node() and
> > adds comments to try_offline_node() and remove_memory() that
> > lock_device_hotplug() is required.
> >
> > Signed-off-by: Toshi Kani <toshi.kani@...com>
>
> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@...el.com>
Thanks!
-Toshi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists