aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/ipack
diff options
context:
space:
mode:
authorUwe Kleine-König <uwe@kleine-koenig.org>2021-02-07 22:55:56 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-02-09 09:48:23 +0100
commit609cf09c56802f7997497b1fdc89209db52d4449 (patch)
tree8762db59e5f188790b39db6eaee24c5899f5ef9c /drivers/ipack
parentipack: Fail earlier for drivers without probe function (diff)
downloadwireguard-linux-609cf09c56802f7997497b1fdc89209db52d4449.tar.xz
wireguard-linux-609cf09c56802f7997497b1fdc89209db52d4449.zip
ipack: Handle a driver without remove callback
A driver that only consumes devm-managed resources might well have no remove callback. Additionally given that the device core ignores the return value of ipack_bus_remove() stop returning an error code. Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org> Acked-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com> Link: https://lore.kernel.org/r/20210207215556.96371-2-uwe@kleine-koenig.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/ipack')
-rw-r--r--drivers/ipack/ipack.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/ipack/ipack.c b/drivers/ipack/ipack.c
index eabc4d08792a..7de9605cac4f 100644
--- a/drivers/ipack/ipack.c
+++ b/drivers/ipack/ipack.c
@@ -72,10 +72,9 @@ static int ipack_bus_remove(struct device *device)
struct ipack_device *dev = to_ipack_dev(device);
struct ipack_driver *drv = to_ipack_driver(device->driver);
- if (!drv->ops->remove)
- return -EINVAL;
+ if (drv->ops->remove)
+ drv->ops->remove(dev);
- drv->ops->remove(dev);
return 0;
}