Re: GPF in run_workqueue()/list_del_init(cwq->worklist.next) on resume (was: Re: Help needed: Resume problems in 2.6.32-rc, perhaps related to preempt_count leakage in keventd)

Rafael J. Wysocki
2009-11-11T21:17:34Z

On Wednesday 11 November 2009, Linus Torvalds wrote:
>
> On Wed, 11 Nov 2009, Marcel Holtmann wrote:
> >
> > As it seems the btusb_close() only cancels the work workqueue and not
> > the waker workqueue. Could that be the problem.
>
> It's the waker workqueue that Rafael apparently sees with the debug patch
> from Oleg, so yeah, that sounds possible.
>
> Rafael, since apparently htusb_close() _is_ called, does the following
> simpler patch fix it for you? I bet your patch does it too.

Yes and yes.

And in fact this is a post-2.6.31 regression introduced by commit
7bee549e197c9c0e92b89857a409675c1d5e9dff (Bluetooth: Add USB autosuspend
support to btusb driver).

Thanks,
Rafael