Re: [PATCH 1/2] staging: rtl8188eu: fix usage of uninit scalar in rtw_drv_init()

From: Christian Engelmayer
Date: Sat May 17 2014 - 14:57:27 EST


On Sat, 17 May 2014 17:44:23 +0300, Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote:
> On Sat, May 17, 2014 at 12:38:57PM +0200, Christian Engelmayer wrote:
> > Function rtw_drv_init() is written in a way that assumes 'status' != _SUCCESS
> > as long as not explicitly set. Thus initialize 'status' to FAIL, in order to
> > prevent undefined behaviour if going through the exit paths. Detected by
> > Coverity - CID 1077832.
> >
> > Signed-off-by: Christian Engelmayer <cengelma@xxxxxx>
>
> This is a bugfix and we like to merge bugfixes without asking redo
> things, so don't redo. But really the better fix is to get rid of the
> status variable completely. Just return directly on the success path.
>
> If we were to do that, then both patches would be merged together and
> called: [patch] Staging: rtl8188eu: fix error handling in rtw_drv_init()
>
> But this patch is also acceptable as-is. Thanks for fixing the bug. :)

I agree with You Dan. I'm no big fan of that status variable either. In this
case I was already tempted, but saw it as a recurring pattern in that file
in case cleanup is done. So I decided to just attack the bug in a small change
and leave the cleanup of the error handling pattern for a later, consistent
sweep over the whole file if that's wanted.

Regards,
Christian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/