[PATCH RFC 0/2] driver core: Add ability to delete device links of unregistered devices

From: Adrian Hunter
Date: Wed Jul 07 2021 - 13:29:40 EST


Hi

There is an issue with the SCSI UFS driver when the optional
BOOT well-known LUN fails to probe, which is not a fatal error.
The issue is that the device and its "managed" device link do not
then get deleted. The device because the device link has a
reference to it. The device link because it can only be deleted
by device_del(), but device_add() was never called, so device_del()
never will be either.

It is not clear if there is a way to get rid of the device link in
this case, so here is a patch to add a function that does just that.

There is also a patch to use the new function to fix the issue with
the SCSI UFS driver.


Adrian Hunter (2):
driver core: Add ability to delete device links of unregistered devices
scsi: ufshcd: Fix device links when BOOT WLUN fails to probe

Documentation/driver-api/device_link.rst | 7 +++++--
drivers/base/core.c | 22 +++++++++++++++++++---
drivers/scsi/ufs/ufshcd.c | 7 +++++++
include/linux/device.h | 1 +
4 files changed, 32 insertions(+), 5 deletions(-)


Regards
Adrian