On Wed, 11 Feb 2015 16:44:20 +0100 Vitaly Kuznetsov <[email protected]> wrote:
> add_memory() is supposed to be run with device_hotplug_lock grabbed, otherwise
> it can race with e.g. device_online(). Allow external modules (hv_balloon for
> now) to lock device hotplug.
>
> ...
>
> --- a/drivers/base/core.c
> +++ b/drivers/base/core.c
> @@ -55,11 +55,13 @@ void lock_device_hotplug(void)
> {
> mutex_lock(&device_hotplug_lock);
> }
> +EXPORT_SYMBOL_GPL(lock_device_hotplug);
>
> void unlock_device_hotplug(void)
> {
> mutex_unlock(&device_hotplug_lock);
> }
> +EXPORT_SYMBOL_GPL(unlock_device_hotplug);
>
> int lock_device_hotplug_sysfs(void)
> {
It's kinda crazy that lock_device_hotplug_sysfs() didn't get any
documentation. I suggest adding this while you're in there:
--- a/drivers/base/core.c~a
+++ a/drivers/base/core.c
@@ -61,6 +61,9 @@ void unlock_device_hotplug(void)
mutex_unlock(&device_hotplug_lock);
}
+/*
+ * "git show 5e33bc4165f3ed" for details
+ */
int lock_device_hotplug_sysfs(void)
{
if (mutex_trylock(&device_hotplug_lock))
which is a bit lazy but whatev.
I'll assume that Greg (or Rafael?) will be processing this patchset.
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel