HID: do not use down_interruptible() when unbinding devices
Action of unbinding driver from a device is not cancellable and should not fail, and driver core does not pay attention to the result of "remove" method, therefore using down_interruptible() in hid_device_remove() does not make sense. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
efd8929b9e
commit
f2145f8dc5
|
@ -2303,12 +2303,8 @@ static int hid_device_remove(struct device *dev)
|
|||
{
|
||||
struct hid_device *hdev = to_hid_device(dev);
|
||||
struct hid_driver *hdrv;
|
||||
int ret = 0;
|
||||
|
||||
if (down_interruptible(&hdev->driver_input_lock)) {
|
||||
ret = -EINTR;
|
||||
goto end;
|
||||
}
|
||||
down(&hdev->driver_input_lock);
|
||||
hdev->io_started = false;
|
||||
|
||||
hdrv = hdev->driver;
|
||||
|
@ -2323,8 +2319,8 @@ static int hid_device_remove(struct device *dev)
|
|||
|
||||
if (!hdev->io_started)
|
||||
up(&hdev->driver_input_lock);
|
||||
end:
|
||||
return ret;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static ssize_t modalias_show(struct device *dev, struct device_attribute *a,
|
||||
|
|
Loading…
Reference in New Issue