Re: [PATCH] driver core: show the error number when driver_sysfs_add() fails
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
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
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