Re: [bug] hung bootup in various drivers, was: "2.6.21-rc5: known regressions"

2007-04-01 Thread Linus Torvalds
On Sun, 1 Apr 2007, Pavel Machek wrote: > > > @@ -183,7 +183,8 @@ int driver_register(struct device_driver > > void driver_unregister(struct device_driver * drv) > > { > > bus_remove_driver(drv); > > - wait_for_completion(&drv->unloaded); > > + if (!drv->unloaded.done) > > +

Re: [bug] hung bootup in various drivers, was: "2.6.21-rc5: known regressions"

2007-04-01 Thread Pavel Machek
Hi! > @@ -183,7 +183,8 @@ int driver_register(struct device_driver > void driver_unregister(struct device_driver * drv) > { > bus_remove_driver(drv); > - wait_for_completion(&drv->unloaded); > + if (!drv->unloaded.done) > + WARN_ON(1); > } WARN_ON(!done)?

Re: [bug] hung bootup in various drivers, was: "2.6.21-rc5: known regressions"

2007-03-31 Thread Ingo Molnar
* Greg KH <[EMAIL PROTECTED]> wrote: > Something has grabbed a reference to the driver... > > Oh wait, is this code a module or built into the kernel? > > If it's built in, there's still a reference counting bug in the > module/driver hookup logic as we really don't have a "module" yet we > a

Re: [bug] hung bootup in various drivers, was: "2.6.21-rc5: known regressions"

2007-03-30 Thread Kay Sievers
On Fri, 2007-03-30 at 12:32 -0700, Greg KH wrote: > On Fri, Mar 30, 2007 at 07:46:19PM +0200, Ingo Molnar wrote: > > > > * Greg KH <[EMAIL PROTECTED]> wrote: > > > > > > BUG: at drivers/base/driver.c:187 driver_unregister() > > > > [] show_trace_log_lvl+0x19/0x2e > > > > [] show_trace+0x12/0

Re: [bug] hung bootup in various drivers, was: "2.6.21-rc5: known regressions"

2007-03-30 Thread Greg KH
On Fri, Mar 30, 2007 at 07:46:19PM +0200, Ingo Molnar wrote: > > * Greg KH <[EMAIL PROTECTED]> wrote: > > > > BUG: at drivers/base/driver.c:187 driver_unregister() > > > [] show_trace_log_lvl+0x19/0x2e > > > [] show_trace+0x12/0x14 > > > [] dump_stack+0x14/0x16 > > > [] driver_unregister

Re: [bug] hung bootup in various drivers, was: "2.6.21-rc5: known regressions"

2007-03-30 Thread Ingo Molnar
* Greg KH <[EMAIL PROTECTED]> wrote: > > BUG: at drivers/base/driver.c:187 driver_unregister() > > [] show_trace_log_lvl+0x19/0x2e > > [] show_trace+0x12/0x14 > > [] dump_stack+0x14/0x16 > > [] driver_unregister+0x3d/0x43 > > [] pci_unregister_driver+0x10/0x5f > > [] slgt_init+0x9b/0

Re: [bug] hung bootup in various drivers, was: "2.6.21-rc5: known regressions"

2007-03-30 Thread Greg KH
On Fri, Mar 30, 2007 at 02:04:16PM +0200, Ingo Molnar wrote: > > i just found a new category of driver regressions in 2.6.21, doing > allyesconfig bzImage bootup tests: the init methods of various drivers > hangs in driver_unregister(). > > It is caused by this problem: the semantics of driver_

[bug] hung bootup in various drivers, was: "2.6.21-rc5: known regressions"

2007-03-30 Thread Ingo Molnar
i just found a new category of driver regressions in 2.6.21, doing allyesconfig bzImage bootup tests: the init methods of various drivers hangs in driver_unregister(). It is caused by this problem: the semantics of driver_unregister() [also implicitly called in pci_driver_unregister()] has app