[PATCH] sound: hdmi: avoid dereferencing uninitialized 'jack' pointer

Arnd Bergmann arnd at arndb.de
Tue Feb 16 14:08:13 PST 2016


On Tuesday 16 February 2016 18:26:09 Arnd Bergmann wrote:
> >                 return err;
> >         per_pin->acomp_jack = jack;
> > -       jack->private_data = per_pin;
> > -       jack->private_free = free_acomp_jack_priv;
> > +       if (jack) {
> > +               jack->private_data = per_pin;
> > +               jack->private_free = free_acomp_jack_priv;
> > +       }
> >         return 0;
> >  }
> > 
> Looks good to me.
> 
> Acked-by: Arnd Bergmann <arnd at arndb.de>
> 

Actually, on second thought, there is one notable downside
of this approach: 'jack' is guaranteed to be NULL here, so gcc
won't produce a warning if another driver makes the same mistake:

By default, we only get a warning for uses of uninitialized
variables, but not those that are known to be NULL. I think
some compiler warnings are able to warn about that too, but I
forgot the details.

	Arnd



More information about the linux-arm-kernel mailing list