lkml.org 
[lkml]   [2001]   [May]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [patch] softirq-2.4.5-B0

    On Sun, 27 May 2001, David S. Miller wrote:

    > Hooray, some sanity in this thread finally :-)

    [ finally i had some sleep after a really long debugging session :-| ]

    > > the attached softirq-2.4.5-B0 patch fixes this problem by calling
    > > do_softirq() from local_bh_enable() [if the bh count is 0, to avoid
    > > recursion].
    >
    > Yikes! I do not like this fix.

    i think we have no choice, unfortunately.

    and i think function calls are not that scary anymore, especially not with
    regparms and similar compiler optimizations. The function is simple, the
    function just goes in and returns in 90% of the cases, which should be
    handled nicely by most BTBs.

    we have other fundamental primitives that are a function call too, eg.
    dget(), and they are used just as frequently. In 2.4 we were moving
    inlined code into functions in a number of cases, and it appeared to work
    out well in most cases.

    > I'd rather local_bh_enable() not become a more heavy primitive.
    >
    > I know, in one respect it makes sense because it parallels how
    > hardware interrupts work, but not this thing is a function call
    > instead of a counter bump :-(

    i believe the important thing is that the function has no serialization or
    other 'heavy' stuff. BHs had the misdesign of not being restarted after
    being re-enabled, and it caused performance problems - we should not
    repeat history.

    Ingo

    -
    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:0.024 / U:0.140 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site