Re: 2.6.1-mm4

From: Valdis . Kletnieks
Date: Wed Jan 21 2004 - 14:21:52 EST


On Wed, 21 Jan 2004 19:46:32 +0100, "Prakash K. Cheemplavam" said:
> Ok, here is the stack backtrace:
>
> I hope it helps, otherwise I could try compiling in frame-pointers. (I
> used another logger to get this...)
>
> Is it nvidia driver doing something bad (which earlier kernels didn't do)?
>
> Jan 21 19:25:39 tachyon Badness in pci_find_subsys at
> drivers/pci/search.c:132
> Jan 21 19:25:39 tachyon Call Trace:
> Jan 21 19:25:39 tachyon [<c027a7f8>] pci_find_subsys+0xe8/0xf0
> Jan 21 19:25:39 tachyon [<c027a82f>] pci_find_device+0x2f/0x40
> Jan 21 19:25:39 tachyon [<c027a6e8>] pci_find_slot+0x28/0x50

If this is the NVidia graphics driver, it's been doing it at least since 2.5.6something,
at least that I've seen. It's basically calling pci_find_slot in an interrupt context,
which ends up calling pci_find_subsys which complains about it. One possible
solution would be for the code to be changed to call pci_find_slot during module
initialization and save the return value, and use that instead. Yes, I know this
prevents hotplugging. Who hotplugs graphics cards? ;)

Attachment: pgp00000.pgp
Description: PGP signature