cx23885-dvb: move initialization of a8293_pdata
authorMauro Carvalho Chehab <mchehab@osg.samsung.com>
Fri, 18 Dec 2015 16:22:21 +0000 (14:22 -0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 12 Jan 2017 10:22:51 +0000 (11:22 +0100)
commit f0b0faff78c2c2e8efe843de55405a1f0470b8c4 upstream.

Smatch complains about where the au8293_data is placed:

drivers/media/pci/cx23885/cx23885-dvb.c:2174 dvb_register() info: 'a8293_pdata' is not actually initialized (unreached code).

It is not actually expected to have such initialization at

switch {
foo = bar;

case:
...
}

Not really sure how gcc does that, but this is something that I would
expect that different compilers would do different things.

David Howells checked with the compiler people: it's not really expected to
initialise as expected.

So, move the initialization outside the switch(), making smatch to
shut up one warning.

Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/pci/cx23885/cx23885-dvb.c

index c4307ad8594c577e074aab2cb2728f3c42db01a8..e543cbbf2ec4fb03060595d63827e322bde6fcad 100644 (file)
@@ -2168,11 +2168,12 @@ static int dvb_register(struct cx23885_tsport *port)
                }
                port->i2c_client_tuner = client_tuner;
                break;
-       case CX23885_BOARD_HAUPPAUGE_HVR5525:
-               switch (port->nr) {
+       case CX23885_BOARD_HAUPPAUGE_HVR5525: {
                struct m88rs6000t_config m88rs6000t_config;
                struct a8293_platform_data a8293_pdata = {};
 
+               switch (port->nr) {
+
                /* port b - satellite */
                case 1:
                        /* attach frontend */
@@ -2267,6 +2268,7 @@ static int dvb_register(struct cx23885_tsport *port)
                        break;
                }
                break;
+       }
        default:
                printk(KERN_INFO "%s: The frontend of your DVB/ATSC card "
                        " isn't supported yet\n",