[PATCH] driver:core: NO need to determine whether the driver is asynchronous
From: 李哲
Date: Sun Jul 14 2024 - 01:06:13 EST
When rescanning the device, there is no need to determine
whether the driver is asynchronous.
Signed-off-by: 李哲 <sensor1010@xxxxxxx>
---
drivers/base/dd.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/base/dd.c b/drivers/base/dd.c
index 47351d98f6e1..41fd4b1b4779 100644
--- a/drivers/base/dd.c
+++ b/drivers/base/dd.c
@@ -915,7 +915,7 @@ static int __device_attach_driver(struct device_driver *drv, void *_data)
{
struct device_attach_data *data = _data;
struct device *dev = data->dev;
- bool async_allowed;
+ bool async_allowed = false;
int ret;
ret = driver_match_device(drv, dev);
@@ -936,12 +936,14 @@ static int __device_attach_driver(struct device_driver *drv, void *_data)
return ret;
} /* ret > 0 means positive match */
- async_allowed = driver_allows_async_probing(drv);
+ if (data->check_async) {
+ async_allowed = driver_allows_async_probing(drv);
- if (async_allowed)
- data->have_async = true;
+ if (async_allowed)
+ data->have_async = true;
+ }
- if (data->check_async && async_allowed != data->want_async)
+ if (async_allowed != data->want_async)
return 0;
/*
--
2.17.1