Re: [PATCH] driver core: show the error number when driver_sysfs_add() fails

2019-06-04 Thread Kefeng Wang


On 2019/6/4 13:33, Greg Kroah-Hartman wrote:
> On Tue, Jun 04, 2019 at 12:15:46PM +0800, Kefeng Wang wrote:
>> If driver_sysfs_add() fails, kernel shows following message,
>>
>>   really_probe: driver_sysfs_add(portman.0) failed
>>   ppdev: probe of portman.0 failed with error 0
>>
>> It's better to show the error number like other probe_failed path.
>>
>> Signed-off-by: Kefeng Wang 
>> ---
>>  drivers/base/dd.c | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/base/dd.c b/drivers/base/dd.c
>> index 0df9b4461766..04ee4e196530 100644
>> --- a/drivers/base/dd.c
>> +++ b/drivers/base/dd.c
>> @@ -493,7 +493,8 @@ static int really_probe(struct device *dev, struct 
>> device_driver *drv)
>>  goto probe_failed;
>>  }
>>  
>> -if (driver_sysfs_add(dev)) {
>> +ret = driver_sysfs_add(dev);
>> +if (ret) {
>>  printk(KERN_ERR "%s: driver_sysfs_add(%s) failed\n",
>>  __func__, dev_name(dev));
> Shouldn't this be where the error number is shown?  No need for all
> callers to also show the same thing.

Like the message shown as above,  there is a common path to show all the probe 
error info,

"ppdev: probe of portman.0 failed with error 0"

but the driver_sysfs_add() error handling won't fill with ret, so error '0' is 
shown.
after this patch,

 really_probe: driver_sysfs_add(portman.0) failed
 ppdev: probe of portman.0 failed with error -12

>
> thanks,
>
> greg k-h
>
> .
>



Re: [PATCH] driver core: show the error number when driver_sysfs_add() fails

2019-06-03 Thread Greg Kroah-Hartman
On Tue, Jun 04, 2019 at 12:15:46PM +0800, Kefeng Wang wrote:
> If driver_sysfs_add() fails, kernel shows following message,
> 
>   really_probe: driver_sysfs_add(portman.0) failed
>   ppdev: probe of portman.0 failed with error 0
> 
> It's better to show the error number like other probe_failed path.
> 
> Signed-off-by: Kefeng Wang 
> ---
>  drivers/base/dd.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/base/dd.c b/drivers/base/dd.c
> index 0df9b4461766..04ee4e196530 100644
> --- a/drivers/base/dd.c
> +++ b/drivers/base/dd.c
> @@ -493,7 +493,8 @@ static int really_probe(struct device *dev, struct 
> device_driver *drv)
>   goto probe_failed;
>   }
>  
> - if (driver_sysfs_add(dev)) {
> + ret = driver_sysfs_add(dev);
> + if (ret) {
>   printk(KERN_ERR "%s: driver_sysfs_add(%s) failed\n",
>   __func__, dev_name(dev));

Shouldn't this be where the error number is shown?  No need for all
callers to also show the same thing.

thanks,

greg k-h


[PATCH] driver core: show the error number when driver_sysfs_add() fails

2019-06-03 Thread Kefeng Wang
If driver_sysfs_add() fails, kernel shows following message,

  really_probe: driver_sysfs_add(portman.0) failed
  ppdev: probe of portman.0 failed with error 0

It's better to show the error number like other probe_failed path.

Signed-off-by: Kefeng Wang 
---
 drivers/base/dd.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/base/dd.c b/drivers/base/dd.c
index 0df9b4461766..04ee4e196530 100644
--- a/drivers/base/dd.c
+++ b/drivers/base/dd.c
@@ -493,7 +493,8 @@ static int really_probe(struct device *dev, struct 
device_driver *drv)
goto probe_failed;
}
 
-   if (driver_sysfs_add(dev)) {
+   ret = driver_sysfs_add(dev);
+   if (ret) {
printk(KERN_ERR "%s: driver_sysfs_add(%s) failed\n",
__func__, dev_name(dev));
goto probe_failed;
-- 
2.20.1