On Wed, Sep 12, 2012 at 10:17:55AM +0530, Sachin Kamat wrote: > Hi Fengguang, > > On 12 September 2012 10:02, Fengguang Wu <fengguang.wu@xxxxxxxxx> wrote: > > Hi Sachin, > > > > On Wed, Sep 12, 2012 at 09:59:38AM +0530, Sachin Kamat wrote: > >> Hi Fengguang, > >> > >> Thanks for bringing this to my notice. I compile tested this patch > >> using the latest (11 Sep 2012) linux-next tree. > >> Unfortunately I cannot not understand the meaning of these smatch warnings. > >> Could you please simplify them for me? > > > > I think the warnings can be quieted by > > > > - return -ENODEV; > > + return err; > > > > The original code was something like this: > > err = -ENODEV; > return err; > > which i simplified to (as a result of using devm_*) > return -ENODEV; > > Hence technically i don't think I changed anything. Do you want me to > revert this change back? I think the intention of the warning is that the err value from lm3530_init_registers() can be directly returned, like this: err = lm3530_init_registers(drvdata); if (err < 0) { dev_err(&client->dev, "Register Init failed: %d\n", err); - return -ENODEV; + return err; } That will remove the assumption that lm3530_init_registers() always returns -ENODEV on error. Thanks, Fengguang > >> On 12 September 2012 09:50, Fengguang Wu <fengguang.wu@xxxxxxxxx> wrote: > >> > Hi Sachin, > >> > > >> > FYI, there are new smatch warnings show up in > >> > > >> > tree: git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds.git for-next > >> > head: 2829515a5fb5ceccb4021d819c3d7d0ecaab86eb > >> > commit: 2829515a5fb5ceccb4021d819c3d7d0ecaab86eb [18/18] leds-lm3530: Use devm_regulator_get function > >> > > >> > All smatch warnings: > >> > > >> > drivers/leds/leds-lm3530.c:361 lm3530_mode_set() info: why not propagate 'mode' from lm3530_get_mode_from_str() instead of -22? > >> > + drivers/leds/leds-lm3530.c:432 lm3530_probe() info: why not propagate 'err' from lm3530_init_registers() instead of -19? > >> > + drivers/leds/leds-lm3530.c:438 lm3530_probe() info: why not propagate 'err' from led_classdev_register() instead of -19? > >> > > >> > vim +432 drivers/leds/leds-lm3530.c > >> > 422 err = PTR_ERR(drvdata->regulator); > >> > 423 drvdata->regulator = NULL; > >> > 424 return err; > >> > 425 } > >> > 426 > >> > 427 if (drvdata->pdata->brt_val) { > >> > 428 err = lm3530_init_registers(drvdata); > >> > 429 if (err < 0) { > >> > 430 dev_err(&client->dev, > >> > 431 "Register Init failed: %d\n", err); > >> > > 432 return -ENODEV; > >> > 433 } > >> > 434 } > >> > 435 err = led_classdev_register(&client->dev, &drvdata->led_dev); > >> > 436 if (err < 0) { > >> > 437 dev_err(&client->dev, "Register led class failed: %d\n", err); > >> > 438 return -ENODEV; > >> > 439 } > >> > 440 > >> > 441 err = device_create_file(drvdata->led_dev.dev, &dev_attr_mode); > >> > 442 if (err < 0) { > >> > > >> > --- > >> > 0-DAY kernel build testing backend Open Source Technology Centre > >> > Fengguang Wu <wfg@xxxxxxxxxxxxxxx> Intel Corporation > >> > >> > >> > >> -- > >> With warm regards, > >> Sachin > > > > -- > With warm regards, > Sachin -- To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html