On Sat, 17 May 2014, Fabio Estevam wrote: > On Sat, May 17, 2014 at 3:32 AM, Julia Lawall <Julia.Lawall@xxxxxxx> wrote: > > From: Julia Lawall <Julia.Lawall@xxxxxxx> > > > > Platform_get_drvdata is an accessor function, and has no purpose if its > > result is not used. > > > > The semantic patch that fixes this problem is as follows: > > (http://coccinelle.lip6.fr/) > > > > // <smpl> > > @@ > > identifier x; > > type T; > > @@ > > - T x = platform_get_drvdata(...); > > ... when != x > > // </smpl> > > > > Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx> > > > > --- > > drivers/mtd/nand/bf5xx_nand.c | 4 ---- > > 1 file changed, 4 deletions(-) > > > > diff --git a/drivers/mtd/nand/bf5xx_nand.c b/drivers/mtd/nand/bf5xx_nand.c > > index b7a2494..b5fbd48 100644 > > --- a/drivers/mtd/nand/bf5xx_nand.c > > +++ b/drivers/mtd/nand/bf5xx_nand.c > > @@ -840,15 +840,11 @@ out_err_kzalloc: > > > > static int bf5xx_nand_suspend(struct platform_device *dev, pm_message_t pm) > > { > > - struct bf5xx_nand_info *info = platform_get_drvdata(dev); > > - > > return 0; > > } > > > > static int bf5xx_nand_resume(struct platform_device *dev) > > { > > - struct bf5xx_nand_info *info = platform_get_drvdata(dev); > > - > > return 0; > > In this case bf5xx_nand_suspend/resume could be removed? I don't know. It looks like it is intentional to have a definition that returns an indication of success? The complete set of definitions is: #ifdef CONFIG_PM static int bf5xx_nand_suspend(struct platform_device *dev, pm_message_t pm) { struct bf5xx_nand_info *info = platform_get_drvdata(dev); return 0; } static int bf5xx_nand_resume(struct platform_device *dev) { struct bf5xx_nand_info *info = platform_get_drvdata(dev); return 0; } #else #define bf5xx_nand_suspend NULL #define bf5xx_nand_resume NULL #endif julia -- 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