Re: [PATCH 3/3] staging: xgifb: Initialize uninitialized variables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Sep 07, 2010 at 10:46:27AM +0200, Jiri Slaby wrote:
> On 09/07/2010 07:34 AM, Javier Martinez Canillas wrote:
> > Current patch solves compilation warnings in staging/xgifb for using possibly uninitialized variables.
> > 
> > Signed-off-by: Javier Martinez Canillas <martinez.javier@xxxxxxxxx>
> > ---
> >  drivers/staging/xgifb/vb_setmode.c |    4 ++--
> >  1 files changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/staging/xgifb/vb_setmode.c b/drivers/staging/xgifb/vb_setmode.c
> > index c4db2fc..720a592 100644
> > --- a/drivers/staging/xgifb/vb_setmode.c
> > +++ b/drivers/staging/xgifb/vb_setmode.c
> > @@ -376,7 +376,7 @@ void InitTo330Pointer(unsigned char ChipType, struct vb_device_info *pVBInfo)
> >  unsigned char XGISetModeNew(struct xgi_hw_device_info *HwDeviceExtension,
> >  			unsigned short ModeNo)
> >  {
> > -	unsigned short ModeIdIndex;
> > +	unsigned short ModeIdIndex = 0;
> >  	/* unsigned char *pVBInfo->FBAddr = HwDeviceExtension->pjVideoMemoryAddress; */
> >  	struct vb_device_info VBINF;
> >  	struct vb_device_info *pVBInfo = &VBINF;
> 
> No, please don't. This is a compiler bug.
> 
> The first use in that function is:
> XGI_SearchModeID( ModeNo , &ModeIdIndex, pVBInfo );
> 
> and that function contains:
> if (XYZ) {
>   for( *ModeIdIndex = 0 ; ; ( *ModeIdIndex )++ )
>     ...
> } else {
>   for( *ModeIdIndex = 0 ; ; ( *ModeIdIndex )++ )
>     ...
> }
> 
> So your compiler is foolish if that emits a warning.

No, I don't see a way that the compiler could really figure that type of
logic out.  It doesn't know that XGI_SearchModeID() always will set that
field.  Heck, at first glance I couldn't even figure it out :)

So I don't mind applying this patch, as I'll just constantly keep
getting people sending me the same change, when they could be off
working on other things that this driver needs.

thanks,

greg k-h
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel


[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux