On 5/26/20 6:18 PM, yuechao.zhao@xxxxxxxxxxxxxxxx wrote: > From: Yuechao Zhao <yuechao.zhao@xxxxxxxxxxxxxxxx> > > Check the return value of 'watchdog_init_timeout()' for checking the > timeout module parameter is in the min-max range. > > Signed-off-by: Yuechao Zhao <yuechao.zhao@xxxxxxxxxxxxxxxx> Please fix the subject. It should start with "hwmon: (nct7904)" > --- > drivers/hwmon/nct7904.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/hwmon/nct7904.c b/drivers/hwmon/nct7904.c > index 18c95be..d069d59 100644 > --- a/drivers/hwmon/nct7904.c > +++ b/drivers/hwmon/nct7904.c > @@ -1152,7 +1152,10 @@ static int nct7904_probe(struct i2c_client *client, > data->wdt.max_timeout = MAX_TIMEOUT; > data->wdt.parent = &client->dev; > > - watchdog_init_timeout(&data->wdt, timeout * 60, &client->dev); > + ret = watchdog_init_timeout(&data->wdt, timeout * 60, &client->dev); > + if (ret < 0) > + return ret; > + Why ? The idea of returning an error from watchdog_init_timeout is to give the driver a chance to select a default, not to refuse loading the driver. > watchdog_set_nowayout(&data->wdt, nowayout); > watchdog_set_drvdata(&data->wdt, data); > >