Skip to content

Commit fd6f7ad

Browse files
andy-shevgregkh
authored andcommitted
driver core: return an error when dev_set_name() hasn't happened
The commit d21fdd0 ("driver core: Return proper error code when dev_set_name() fails") rewrote the logic of handling the dev_set_name() error codes, but missed the point that initially set error value to -EINVAL might be rewritten and hence the error path can't be triggered at some circumstances. To fix this, make sure that error variable is set to -EINVAL when other conditionals are false. Reported-by: syzbot+bdfb03b1ec8b342c12cb@syzkaller.appspotmail.com Fixes: d21fdd0 ("driver core: Return proper error code when dev_set_name() fails") Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20230828145824.3895288-1-andriy.shevchenko@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent 0bb80ec commit fd6f7ad

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

drivers/base/core.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3537,6 +3537,8 @@ int device_add(struct device *dev)
35373537
/* subsystems can specify simple device enumeration */
35383538
else if (dev->bus && dev->bus->dev_name)
35393539
error = dev_set_name(dev, "%s%u", dev->bus->dev_name, dev->id);
3540+
else
3541+
error = -EINVAL;
35403542
if (error)
35413543
goto name_error;
35423544

0 commit comments

Comments
 (0)