On Mon, Sep 19, 2022 at 10:03:12PM -0400, Bo Liu wrote: > It's possible that dev_set_name() returns -ENOMEM, catch and handle this. > > Signed-off-by: Bo Liu <liubo03@xxxxxxxxxx> Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx> > --- > drivers/watchdog/watchdog_dev.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/watchdog/watchdog_dev.c b/drivers/watchdog/watchdog_dev.c > index 54903f3c851e..744b2ab75288 100644 > --- a/drivers/watchdog/watchdog_dev.c > +++ b/drivers/watchdog/watchdog_dev.c > @@ -1015,7 +1015,11 @@ static int watchdog_cdev_register(struct watchdog_device *wdd) > wd_data->dev.groups = wdd->groups; > wd_data->dev.release = watchdog_core_data_release; > dev_set_drvdata(&wd_data->dev, wdd); > - dev_set_name(&wd_data->dev, "watchdog%d", wdd->id); > + err = dev_set_name(&wd_data->dev, "watchdog%d", wdd->id); > + if (err) { > + put_device(&wd_data->dev); > + return err; > + } > > kthread_init_work(&wd_data->work, watchdog_ping_work); > hrtimer_init(&wd_data->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL_HARD);