Re: [RFC PATCH v5 1/2] Use lock_device_hotplug() in cpu_probe_store() and cpu_release_store()

From: Tejun Heo
Date: Wed Apr 23 2014 - 10:39:52 EST


On Wed, Apr 23, 2014 at 10:00:26AM +0800, Li Zhong wrote:
> If you remove cpu0, then the cpu0 directory will be removed, together
> with the "online" file in the directory, while some other process might
> be writing 0 or 1 to it.
>
> But here, for the probe/release, take "release" for example, if user
> writes something that stands for cpu0 to it, the cpu0 will be removed,
> and the cpu0 directory and the files under it will be removed. But
> "release" itself is not removed.
>
> They are attributes of cpu_subsys, not of some specific cpus.

OIC, so the file itself which triggers removal doesn't get removed.
Hmmm... but can't you still fall into deadlock? If on/offline takes
the same lock under active protection which is also taken while
removing the cpu files, it doesn't really matter whether the release
file itself is removed in the process or not. You can still have ABBA
deadlock. What am I missing here?

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/