Skip to contentSkip to conversation

Patch "[media] cx23885-dvb: move initialization of a8293_pdata" has been added to the 4.4-stable tree

PATCH [email protected] 1 participant 1 message Jan 9, 2017

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

    [media] cx23885-dvb: move initialization of a8293_pdata

to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:

     cx23885-dvb-move-initialization-of-a8293_pdata.patch

and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From f0b0faff78c2c2e8efe843de55405a1f0470b8c4 Mon Sep 17 00:00:00 2001

From: Mauro Carvalho Chehab <[email protected]>
Date: Fri, 18 Dec 2015 14:22:21 -0200
Subject: [media] cx23885-dvb: move initialization of a8293_pdata

From: Mauro Carvalho Chehab <[email protected]>

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.

---
 drivers/media/pci/cx23885/cx23885-dvb.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
drivers/media/pci/cx23885/cx23885-dvb.c +4 -2
@@ -2168,11 +2168,12 @@ static int dvb_register(struct cx23885_t
 		}
 		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_t
 			break;
 		}
 		break;
+	}
 	default:
 		printk(KERN_INFO "%s: The frontend of your DVB/ATSC card "
 			" isn't supported yet\n",

Patches currently in stable-queue which might be from [email protected] are

queue-4.4/cx23885-dvb-move-initialization-of-a8293_pdata.patch