Messages in this thread | | | Date | Sun, 10 Mar 2013 14:48:08 -0400 | From | Sasha Levin <> | Subject | Re: irq_work: WARNING: at kernel/irq_work.c:98 irq_work_needs_cpu+0x8a/0xb0() |
| |
On 03/08/2013 05:20 PM, Paul E. McKenney wrote: > Alternatively, given that this is a debug option, how about replacing > the schedule_timeout_uninterruptible() with something like the following: > > { > unsigned long starttime = jiffies + 2; > > while (ULONG_CMP_LT(jiffies, starttime)) > cpu_relax(); > } > > That way the RCU GP kthread would never go to sleep, and thus would not > have to wait for the timer to wake it up. If this works, then my next > thought would be to try to get at the timer state for the wakeup fo > schedule_timeout_uninterruptible().
It did the trick, I still see those IRQ warnings but the RCU lockup is gone.
Thanks, Sasha
| |