Messages in this thread | | | Date | Wed, 12 Sep 2007 18:21:44 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH] modpost: detect unterminated device id lists |
| |
On Wed, 12 Sep 2007 17:49:37 -0700 Kees Cook <kees@ubuntu.com> wrote:
> On Wed, Sep 12, 2007 at 02:53:56PM -0700, Greg KH wrote: > > On Wed, Sep 12, 2007 at 03:48:49PM +0400, Alexey Dobriyan wrote: > > > On 9/12/07, Jeff Garzik <jeff@garzik.org> wrote: > > > > Kees Cook wrote: > > > > > This patch against 2.6.23-rc6 fixes a couple drivers that do not > > > > > correctly terminate their pci_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, > > > > > cause those unfortunate device IDs to not auto-load. > > > > > > > > > > Signed-off-by: Kees Cook <kees@ubuntu.com> > > > > > > > > ACK > > > > > > I mut say, non-terminated PCI ids lists are constant PITA. There should be > > > a way to a) put it in macro[1], so that terminator automatically added, and > > > b) still allow #ifdef inside table like, e.g. 8139too does. > > > > > > [1] or not macro, because #ifdef inside macros aren't allowed. > > > > If you know of a way to do this in an easier manner, patches are always > > gladly accepted :) > > This patch against 2.6.23-rc6 will cause modpost to fail if any device > id lists are incorrectly terminated, after reporting the offender.
ooh, clever chap.
> + fprintf(stderr,"%s: struct %s_device_id is %lu bytes. The last of %lu is:\n", modname, device_id, id_size, size / id_size);
dude, bid on this: http://cgi.ebay.com/Wyse-WY55-General-Purpose-Serial-Terminal-No-Keyboard_W0QQitemZ230169388145QQihZ013QQcategoryZ51280QQssPageNameZWDVWQQrdZ1QQcmdZViewItem
(not allowed to use 132-column mode, either) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |