[patch] fix warning in drivers/media/dvb/dvb-usb/af9005-fe.c

From: Ingo Molnar
Date: Sat Dec 27 2008 - 07:00:59 EST



* Ingo Molnar <mingo@xxxxxxx> wrote:

> here's that commit again, standalone, with the crash in
> af9005_usb_module_init() embedded. Unfortunately i dont have the .config
> anymore and the crash log is half a year old. I have re-enabled the
> driver in tip/master so if the crash still triggers i should see it
> within 1-2 days and i can do a fuller bugreport.

no crashes or build failures so far, so it's looking good!

There's one new compiler warning that i had to fix - but that's all. Find
the patch attached below.

Btw., there's a handful of warning fixes i carry in tip/warnings/* topic
branches - you can find them in tip/master via:

http://people.redhat.com/mingo/tip.git/README

the ones affecting drivers/media/ are:

f3e67e2: fix warning in drivers/media/video/usbvision/usbvision-i2c.c
491af31: fix warning in drivers/media/video/cx18/cx18-mailbox.c
728342a: fix warnings in drivers/media/dvb/ttusb-dec/ttusb_dec.c
4dda565: fix warning in drivers/media/dvb/frontends/drx397xD.c
a2e4f4a: fix warning in drivers/media/common/tuners/mxl5007t.c
8317adf: fix warning in drivers/media/dvb/dvb-usb/anysee.c

this one appears to be GCC warning about a real bug:

8317adf: fix warning in drivers/media/dvb/dvb-usb/anysee.c

the others are fixes for false positives - i reviewed the affected code
paths and each commit log includes the analysis about why it is a false
positive.

You might ask, how did these drivers/media/ commits get into tip/master?
It is a side-effect of us keeping tip/master continuously -Werror clean
for 32-bit and 64-bit x86 on allyes/allno/allmod and randconfigs as well,
Those warning fixes (for the whole kernel - including drivers/media/) go
into the tip/warnings/* branches.

Please have a look and git-cherry-pick the above commits if they are still
relevant to your tree and if you agree with them. Thanks,

Ingo

------------------------->
Subject: fix warning in drivers/media/dvb/dvb-usb/af9005-fe.c
From: Ingo Molnar <mingo@xxxxxxx>
Date: Sat Dec 27 12:49:36 CET 2008

this warning:

drivers/media/dvb/dvb-usb/af9005-fe.c: In function âaf9005_fe_refresh_stateâ:
drivers/media/dvb/dvb-usb/af9005-fe.c:223: warning: âloc_abort_countâ may be used uninitialized in this function

triggers because GCC does not recognize the (complex but correct) error flow
between:

- af9005_fe_refresh_state() and af9005_get_post_vit_err_cw_count()

Annotate it.

Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
---
---
drivers/media/dvb/dvb-usb/af9005-fe.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux/drivers/media/dvb/dvb-usb/af9005-fe.c
===================================================================
--- linux.orig/drivers/media/dvb/dvb-usb/af9005-fe.c
+++ linux/drivers/media/dvb/dvb-usb/af9005-fe.c
@@ -220,7 +220,7 @@ static int af9005_get_post_vit_ber(struc
u16 * abort_count)
{
u32 loc_cw_count = 0, loc_err_count;
- u16 loc_abort_count;
+ u16 uninitialized_var(loc_abort_count);
int ret;

ret =
--
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/