aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Kelley <[email protected]>2024-11-06 07:42:46 -0800
committerWei Liu <[email protected]>2024-12-09 18:44:14 +0000
commit96e052d1473843d644ceba2adf46d3d2180b8ca7 (patch)
tree1e8c05c3531043cce34659129dca3a6d204f97d6
parenta9640fcdd400463442846677e62b8208b81cb031 (diff)
Drivers: hv: util: Don't force error code to ENODEV in util_probe()
If the util_init function call in util_probe() returns an error code, util_probe() always return ENODEV, and the error code from the util_init function is lost. The error message output in the caller, vmbus_probe(), doesn't show the real error code. Fix this by just returning the error code from the util_init function. There doesn't seem to be a reason to force ENODEV, as other errors such as ENOMEM can already be returned from util_probe(). And the code in call_driver_probe() implies that ENODEV should mean that a matching driver wasn't found, which is not the case here. Suggested-by: Dexuan Cui <[email protected]> Signed-off-by: Michael Kelley <[email protected]> Acked-by: Wei Liu <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Wei Liu <[email protected]> Message-ID: <[email protected]>
-rw-r--r--drivers/hv/hv_util.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/hv/hv_util.c b/drivers/hv/hv_util.c
index c4f525325790..370722220134 100644
--- a/drivers/hv/hv_util.c
+++ b/drivers/hv/hv_util.c
@@ -590,10 +590,8 @@ static int util_probe(struct hv_device *dev,
srv->channel = dev->channel;
if (srv->util_init) {
ret = srv->util_init(srv);
- if (ret) {
- ret = -ENODEV;
+ if (ret)
goto error1;
- }
}
/*