Messages in this thread | | | Date | Thu, 6 Jun 2013 13:44:28 -0700 | From | Tejun Heo <> | Subject | Re: [PATCH] Fix lockup related to stop_machine being stuck in __do_softirq. |
| |
On Wed, Jun 05, 2013 at 09:29:54PM -0700, Eric Dumazet wrote: > On Wed, 2013-06-05 at 21:25 -0700, greearb@candelatech.com wrote: > > From: Ben Greear <greearb@candelatech.com> > > > diff --git a/kernel/softirq.c b/kernel/softirq.c > > index 14d7758..f150ad6 100644 > > --- a/kernel/softirq.c > > +++ b/kernel/softirq.c > > @@ -204,6 +204,7 @@ EXPORT_SYMBOL(local_bh_enable_ip); > > * should not be able to lock up the box. > > Could you update the comment ? > > I had the following : > > - * We restart softirq processing for at most 2 ms, > - * and if need_resched() is not set. > + * We restart softirq processing for at most MAX_SOFTIRQ_RESTART times, > + * but break the loop if need_resched() is set or after 2 ms.
It'd be nice to briefly explain why both protections are necessary in the comment and maybe cite this thread. Also, please cc Linus when posting the next round and I think we still want to find out what's going on with infinite softirq, I'll reply in the original thread.
Thanks a lot!
-- tejun
| |