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 <[email protected]> >> --- >> 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 > > . >

