On Mon, 9 Nov 2009, Rafael J. Wysocki wrote: > On Monday 09 November 2009, Mike Galbraith wrote: > > On Mon, 2009-11-09 at 16:47 +0100, Rafael J. Wysocki wrote: > > > On Monday 09 November 2009, Mike Galbraith wrote: > > > > > > > Very likely. What did you do to fix it? > > > > > > > > You don't really wanna know. In 31 with newidle enabled, the below > > > > fixed it. It won't fix 32, though it might cure the resume problem. > > > > > > OK, I'll give it a try. > > It doesn't help. > > Also, I can reproduce the issue with current -git and kernel preepmtion > disabled. > > > I just tried to trigger badness via high speed online/offline combined > > with taskset with CONFIG_PREEMPT enabled, and couldn't make it explode. > > I'm not able to do it this way too, so resume seems to be necessary to trigger > it. I'm going try with the suspend debug in the "core" mode. > > > (damn, wish i could s2ram this box) > > That need not suffice. I have two other boxes that suspend and resume > correctly with 2.6.32-rc, AFAICS. > > However, there seems to be a systematic error somewhere, since the failure > always happens at the same place, ie. list_del_init(cwq->worklist.next); in > run_workqueue(), in preemptible as well as in non-preemptible kernels. > > Which is kind of strange, given the !list_empty(&cwq->worklist) test right > before it. Hmm, no. list_empty() just tells you whether the list is empty or not. It does not care whether the list is corrupted or not. Have you tried to run with list debugging enabled ? Thanks, tglx _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm