usb: fix unterminated usn_device_id lists
Subsystems (4)
PATCH 1/1 usb: fix unterminated usn_device_id lists
This patch against 2.6.23-rc6 fixes a unterminated list of USB device ids.
--- linux-2.6.23-rc6/drivers/media/video/usbvision/usbvision-cards.c | 1 + 1 file changed, 1 insertion(+)
---
drivers/media/video/usbvision/usbvision-cards.c +1 -0
@@ -1081,6 +1081,7 @@ struct usb_device_id usbvision_table [] { USB_DEVICE(0x2304, 0x0301), .driver_info=PINNA_LINX_VD_IN_CAB_PAL }, { USB_DEVICE(0x2304, 0x0419), .driver_info=PINNA_PCTV_BUNGEE_PAL_FM }, { USB_DEVICE(0x2400, 0x4200), .driver_info=HPG_WINTV }, + { 0, }, };MODULE_DEVICE_TABLE (usb, usbvision_table);
Signature · 1 line
Kees Cook
Quoted 11 lines · Kees Cook
This patch against 2.6.23-rc6 fixes a unterminated list of USB device ids.
Signed-off-by Kees Cook <[email protected]>--- linux-2.6.23-rc6/drivers/media/video/usbvision/usbvision-cards.c | 1 + 1 file changed, 1 insertion(+)---
diff -urp -x '*.o'linux-2.6.23-rc6~/drivers/media/video/usbvision/usbvision-cards.clinux-2.6.23-rc6/drivers/media/video/usbvision/usbvision-cards.c
drivers/media/video/usbvision/usbvision-cards.c struct usb_device_id usbvision_table [] · line 1084
Quoted 4 lines
drivers/media/video/usbvision/usbvision-cards.c +1
-0@@ -1081,6 +1081,7 @@ struct usb_device_id usbvision_table [] { USB_DEVICE(0x2304, 0x0301), .driver_info=PINNA_LINX_VD_IN_CAB_PAL }, { USB_DEVICE(0x2304, 0x0419), .driver_info=PINNA_PCTV_BUNGEE_PAL_FM }, { USB_DEVICE(0x2400, 0x4200), .driver_info=HPG_WINTV }, + { 0, },
FWIW I (and several drivers) tend to prefer the more clean version,
{ },or even
{ }, /* terminate list */Regards,
Jeff
Hi,
Quoted 9 lines · Jeff Garzik
drivers/media/video/usbvision/usbvision-cards.c struct usb_device_id usbvision_table [] · line 1084
Quoted 1 line
drivers/media/video/usbvision/usbvision-cards.c +1
-0+ { 0, },FWIW I (and several drivers) tend to prefer the more clean version,
{ },or even
{ }, /* terminate list */
Ah, yes. I see that now in some of the other drivers. Should I re-send this patch (and/or the other PCI patches)?
Thanks,
-Kees
Signature · 1 line
Kees Cook
Quoted 6 lines · Kees Cook
Hi,
Quoted 3 lines · Jeff Garzik
drivers/media/video/usbvision/usbvision-cards.c struct usb_device_id usbvision_table [] · line 1084
Quoted 1 line
drivers/media/video/usbvision/usbvision-cards.c +1
-0+ { 0, },FWIW I (and several drivers) tend to prefer the more clean version,
Quoted 8 lines
Quoted 5 lines
{ },or even
{ }, /* terminate list */Ah, yes. I see that now in some of the other drivers. Should I re-send this patch (and/or the other PCI patches)?
Can't hurt... but I cannot speak for other maintainers.
Jeff
PATCH v2 1/1 misc: fix unterminated *_device_id lists
Fixes drivers that do not correctly terminate their *_device_id lists. This results in garbage being spewed into modules.pcimap when the module happens to not have 28 NULL bytes following the table, and/or the last PCI ID is actually truncated from the table when calculating the modules.alias PCI aliases, causing those unfortunate device IDs to not auto-load.
---
Re-send, using recommended list termination code-style. Diff is against 2.6.23-rc6.
linux-2.6.23-rc6/drivers/char/ipmi/ipmi_si_intf.c | 3 ++- linux-2.6.23-rc6/drivers/media/video/usbvision/usbvision-cards.c | 1 + linux-2.6.23-rc6/drivers/mtd/nand/cafe_nand.c | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-)
---
drivers/char/ipmi/ipmi_si_intf.c +2 -1
@@ -2215,7 +2215,8 @@ static int ipmi_pci_resume(struct pci_destatic struct pci_device_id ipmi_pci_devices[] = { {PCI_DEVICE (PCI_HP_VENDOR_ID ,PCI_MMC_DEVICE_ID ) }, - {PCI_DEVICE_CLASS (PCI_ERMC_CLASSCODE ,PCI_ERMC_CLASSCODE_MASK ) } + {PCI_DEVICE_CLASS (PCI_ERMC_CLASSCODE ,PCI_ERMC_CLASSCODE_MASK ) }, + { },/* terminate list */ };MODULE_DEVICE_TABLE (pci, ipmi_pci_devices);
drivers/mtd/nand/cafe_nand.c +2 -1
@@ -816,7 +816,8 @@ static void __devexit cafe_nand_remove(s }static struct pci_device_id cafe_nand_tbl[] = { - {0x11ab ,0x4100 ,PCI_ANY_ID ,PCI_ANY_ID ,PCI_CLASS_MEMORY_FLASH <<8 ,0xFFFF0 } + {0x11ab ,0x4100 ,PCI_ANY_ID ,PCI_ANY_ID ,PCI_CLASS_MEMORY_FLASH <<8 ,0xFFFF0 }, + { },/* terminate list */ };MODULE_DEVICE_TABLE (pci, cafe_nand_tbl);
drivers/media/video/usbvision/usbvision-cards.c +1 -0
@@ -1081,6 +1081,7 @@ struct usb_device_id usbvision_table [] { USB_DEVICE(0x2304, 0x0301), .driver_info=PINNA_LINX_VD_IN_CAB_PAL }, { USB_DEVICE(0x2304, 0x0419), .driver_info=PINNA_PCTV_BUNGEE_PAL_FM }, { USB_DEVICE(0x2400, 0x4200), .driver_info=HPG_WINTV }, + { }, /* terminate list */ };MODULE_DEVICE_TABLE (usb, usbvision_table);
Signature · 1 line
Kees Cook
Re: [PATCHv2] misc: fix unterminated *_device_id lists
Quoted 10 lines · Kees Cook
Fixes drivers that do not correctly terminate their
*_device_idlists. This results in garbage being spewed into modules.pcimap when the module happens to not have 28 NULL bytes following the table, and/or the last PCI ID is actually truncated from the table when calculating the modules.alias PCI aliases, causing those unfortunate device IDs to not auto-load.Signed-off-by Kees Cook <[email protected]>---
Re-send, using recommended list termination code-style. Diff is against 2.6.23-rc6.
ACK