Linux-kernel mailing list archive 2000-02,: Re: 2.3.38 breaks isapnp as module

# Re: 2.3.38 breaks isapnp as module

Peter Denison (peterd@pnd-pc.demon.co.uk)
Sun, 9 Jan 2000 23:15:17 +0000 (GMT)

- Messages sorted by: [ date ][ thread ][ subject ][ author ]
- Next message: Frodo Looijaard: "Re: Announce: initrd-tftp 0.1"
- Previous message: David Weinehall: "v2.0.39pre1 Announcement"

On Sun, 9 Jan 2000, Martin Mares wrote:

> Hello,
>
> > quirks.c doesn't include any code to be compiled as module.
> > result is:
> >
> > # insmod quirks
> > Using /lib/modules/2.3.38/misc/quirks.o
> > /lib/modules/2.3.38/misc/quirks.o: couldn't find the kernel
> > version the module was compiled for

Mea culpa. I didn't try it as a module. I'll know next time...

> pre-2.3.39-2 together with this patch should fix it:
>
> --- drivers/pnp/isapnp.c.mj Sun Jan 9 11:05:25 2000
> +++ drivers/pnp/isapnp.c Sun Jan 9 11:05:25 2000
> @@ -982,11 +982,11 @@
> card->device = (header[3] << 8) | header[2];
> card->serial = (header[7] << 24) | (header[6] << 16) | (header[5] << 8) | header[4];
> isapnp_checksum_value = 0x00;
> + INIT_LIST_HEAD(&card->devices);
> isapnp_parse_resource_map(card);
> if (isapnp_checksum_value != 0x00)
> printk("isapnp: checksum for device %i is not valid (0x%x)\n", csn, isapnp_checksum_value);
> card->checksum = isapnp_checksum_value;
> - INIT_LIST_HEAD(&card->devices);
>
> list_add_tail(&card->node, &isapnp_cards);
> }

It'll fix the immediate bug, but there is still an uninitialized
list_head lurking in the struct pci_dev, unless you also add a

INIT_LIST_HEAD(&card->children);

Granted it may not be used, but not initializing it is bad. Should we
export alloc_pci_bus from drivers/pci/pci.c and use that, which does the
correct inits? The other changes for hot-plugging seem to be going this
way (obviously named functions that encapsulate the innards of everything
dealing with the struct pci_dev).

    --
    Peter Denison <peterd@pnd-pc.demon.co.uk>
    Linux Driver for Promise DC4030VL cards.
    See http://www.pnd-pc.demon.co.uk/promise/promise.html for details

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.rutgers.edu
    Please read the FAQ at http://www.tux.org/lkml/

- Next message: Frodo Looijaard: "Re: Announce: initrd-tftp 0.1"
- Previous message: David Weinehall: "v2.0.39pre1 Announcement"