The id_table field of the struct usb_device_id is constant in <linux/usb.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: Németh Márton <nm127@freemail.hu> Cc: Julia Lawall <julia@diku.dk> Cc: cocci@diku.dk Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
audio.c | ||
audio.h | ||
capture.c | ||
capture.h | ||
config.h | ||
control.c | ||
control.h | ||
driver.c | ||
driver.h | ||
dumprequest.c | ||
dumprequest.h | ||
midi.c | ||
midi.h | ||
midibuf.c | ||
midibuf.h | ||
pcm.c | ||
pcm.h | ||
playback.c | ||
playback.h | ||
pod.c | ||
pod.h | ||
revision.h | ||
toneport.c | ||
toneport.h | ||
usbdefs.h | ||
variax.c | ||
variax.h |