Patch "cpu/hotplug: Drop the device lock on error" has been added to the 4.11-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
cpu/hotplug: Drop the device lock on error
to the 4.11-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
cpu-hotplug-drop-the-device-lock-on-error.patch
and it can be found in the queue-4.11 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
40da1b11f01e43aad1aa6cea64681b6125e8a2a7Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior <[email protected]>
Date: Fri, 2 Jun 2017 16:27:14 +0200
Subject: cpu/hotplug: Drop the device lock on error
From: Sebastian Andrzej Siewior <[email protected]>
commit 40da1b11f01e43aad1aa6cea64681b6125e8a2a7 upstream.
If a custom CPU target is specified and that one is not available _or_ can't be interrupted then the code returns to userland without dropping a lock as notices by lockdep:
|echo 133 > /sys/devices/system/cpu/cpu7/hotplug/target
| ================================================
| [ BUG: lock held when returning to user space! ]
| ------------------------------------------------
| bash/503 is leaving the kernel with locks still held!
| 1 lock held by bash/503:
| #0: (device_hotplug_lock){+.+...}, at: [<ffffffff815b5650>] lock_device_hotplug_sysfs+0x10/0x40So release the lock then.
--- kernel/cpu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
kernel/cpu.c +2 -2
@@ -1656,13 +1656,13 @@ static ssize_t write_cpuhp_target(struct ret = !sp->name || sp->cant_stop ? -EINVAL :0 ;mutex_unlock (&cpuhp_state_mutex);if (ret) -return ret; + goto out;if (st->state < target) ret =do_cpu_up (dev->id, target);else ret =do_cpu_down (dev->id, target); - +out:unlock_device_hotplug ();return ret ? ret : count; }
Patches currently in stable-queue which might be from [email protected] are
queue-4.11/cpu-hotplug-drop-the-device-lock-on-error.patch