On Fri, 07 September 2012 Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > Smatch complains that the NULL checking in this function is not > consistent and could lead to a NULL dereference. The comments say that > we should return here if rc_dev is NULL so I've changed the test to > match the comment. Good catch! Currently thanks to HID mutex around probe()/remove() we should never be able to see rc_dev being NULL here. Once the probe()/remove() mutex gets tied to hw_start()/hw_stop() or otherwise changed to allow drivers to chat with device during probe() ->rc_dev might be NULL in picolcd_raw_cir(). Reviewed-by: Bruno Prémont <bonbons@xxxxxxxxxxxxxxxxx> Jiri, please apply to picolcd branch. Thanks, Bruno > Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> > --- > Only needed in linux-next. This is a static checker fix and I don't > have the hardware to test it. Please review carefully. > > diff --git a/drivers/hid/hid-picolcd_cir.c b/drivers/hid/hid-picolcd_cir.c > index 14c5ce0..13ca919 100644 > --- a/drivers/hid/hid-picolcd_cir.c > +++ b/drivers/hid/hid-picolcd_cir.c > @@ -51,7 +51,7 @@ int picolcd_raw_cir(struct picolcd_data *data, > > /* ignore if rc_dev is NULL or status is shunned */ > spin_lock_irqsave(&data->lock, flags); > - if (data->rc_dev && (data->status & PICOLCD_CIR_SHUN)) { > + if (!data->rc_dev || (data->status & PICOLCD_CIR_SHUN)) { > spin_unlock_irqrestore(&data->lock, flags); > return 1; > } -- 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