From: Márton Németh <[email protected]> The id_table field of the struct pci_driver is constant in <linux/pci.h> so it is worth to make the initialization data also constant.
The semantic match that finds this kind of pattern is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r@ disable decl_init,const_decl_init; identifier I1, I2, x; @@ struct I1 { ... const struct I2 *x; ... }; @s@ identifier r.I1, y; identifier r.x, E; @@ struct I1 y = { .x = E, }; @c@ identifier r.I2; identifier s.E; @@ const struct I2 E[] = ... ; @depends on !c@ identifier r.I2; identifier s.E; @@ + const struct I2 E[] = ...; // </smpl> Signed-off-by: Márton Németh <[email protected]> Cc: Julia Lawall <[email protected]> Cc: [email protected] --- diff -u -p a/drivers/gpio/langwell_gpio.c b/drivers/gpio/langwell_gpio.c --- a/drivers/gpio/langwell_gpio.c 2010-01-07 19:08:39.000000000 +0100 +++ b/drivers/gpio/langwell_gpio.c 2010-01-08 07:52:43.000000000 +0100 @@ -157,7 +157,7 @@ static struct irq_chip lnw_irqchip = { .set_type = lnw_irq_type, }; -static struct pci_device_id lnw_gpio_ids[] = { +static const struct pci_device_id lnw_gpio_ids[] = { { PCI_DEVICE(PCI_VENDOR_ID_INTEL, 0x080f) }, { 0, } }; diff -u -p a/drivers/gpio/bt8xxgpio.c b/drivers/gpio/bt8xxgpio.c --- a/drivers/gpio/bt8xxgpio.c 2009-12-03 04:51:21.000000000 +0100 +++ b/drivers/gpio/bt8xxgpio.c 2010-01-08 07:53:33.000000000 +0100 @@ -312,7 +312,7 @@ static int bt8xxgpio_resume(struct pci_d #define bt8xxgpio_resume NULL #endif /* CONFIG_PM */ -static struct pci_device_id bt8xxgpio_pci_tbl[] = { +static const struct pci_device_id bt8xxgpio_pci_tbl[] = { { PCI_DEVICE(PCI_VENDOR_ID_BROOKTREE, PCI_DEVICE_ID_BT848) }, { PCI_DEVICE(PCI_VENDOR_ID_BROOKTREE, PCI_DEVICE_ID_BT849) }, { PCI_DEVICE(PCI_VENDOR_ID_BROOKTREE, PCI_DEVICE_ID_BT878) }, _______________________________________________ Cocci mailing list [email protected] http://lists.diku.dk/mailman/listinfo/cocci (Web access from inside DIKUs LAN only)
