Re: OOPS 2.6.0-test4 repeatable

Russell King
2003-08-25T14:07:04Z

On Mon, Aug 25, 2003 at 02:30:34PM +0100, Russell King wrote:
> > Aug 25 13:42:26 mozz-r40 kernel: pci_dev: 0000:03:00.0 driver: d090c400 name: acx100_pci table: d090c3a0 probe: d0823000
> > Aug 25 13:42:26 mozz-r40 kernel: Unable to handle kernel paging request at virtual address d0823000
>
> It's probe function is at address 0xd0823000 which is where your OOPS
> is happening. I suspect you'll find the acx100 pci probe function is
> marked with __init. That's a bug - it must not be.

Well, here it is:

static int __init
acx100_probe_pci(struct pci_dev *pdev, const struct pci_device_id *id)

Please report this to the ACX people as a bug - the probe function must
/not/ be marked as __init. If they want them to be discarded if hotplug
is disabled, they must be marked as __devinit. However, in 2.6 kernels,
they must not be marked as __init nor __devinit in any case.