lkml.org 
[lkml]   [2001]   [May]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [patch] severe softirq handling performance bug, fix, 2.4.5
    On Sun, May 27, 2001 at 09:05:50PM +0200, Ingo Molnar wrote:
    >
    > On Sun, 27 May 2001, Andrea Arcangeli wrote:
    >
    > > I mean everything is fine until the same softirq is marked active
    > > again under do_softirq, in such case neither the do_softirq in do_IRQ
    > > will run it (because we are in the critical section and we hold the
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    > > per-cpu locks), nor we will run it again ourself from the underlying
    ^^^^^^^^^^^^^
    > > do_softirq to avoid live locking into do_softirq.
    >
    > if you mean the stock kernel, this scenario you describe is not how it

    Yes the stock kernel.

    > behaves, because only IRQ contexts can mark a softirq active again. And
    > those IRQ contexts will run do_IRQ() naturally, so while *this*
    > do_softirq() invocation wont run those reactivated softirqs, the IRQ
    > context that just triggered the softirq will do so.

    it won't because the underlying do_softirq did local_bh_disable() and
    the in_interrupt() check will cause the do_softirq from do_IRQ to return
    immediatly.

    Andrea
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 12:54    [W:3.337 / U:1.296 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site