Messages in this thread | | | From | Lukas Wunner <> | Date | Wed, 8 Jul 2020 15:27:00 +0200 | Subject | [PATCH 0/3] Fix races on device removal |
| |
Prevent dynamic SPI device addition below a controller which is being removed. To do so, set the controller's "dead" flag using kill_device() (patch [3/3]).
Serialize access to a device's "dead" flag with a newly introduced rw_semaphore in lieu of the device_lock to avoid deadlocks occurring with the new use case (patch [2/3]).
Add a missing check for the "dead" flag upon driver binding (patch [1/3]).
Lukas Wunner (3): driver core: Avoid binding drivers to dead devices driver core: Use rwsem for kill_device() serialization driver core: Avoid adding children below a dead parent
drivers/base/base.h | 2 ++ drivers/base/core.c | 49 ++++++++++++++++++++++++++++++-------------- drivers/base/dd.c | 12 ++++++++++- drivers/nvdimm/bus.c | 8 +------- drivers/spi/spi.c | 3 +++ 5 files changed, 51 insertions(+), 23 deletions(-)
-- 2.27.0
| |