[lkml]   [1999]   [Dec]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: timer_bh behaviour incorrect for 2.2.13?
    On Thu, 9 Dec 1999, William Montgomery wrote:

    >On Thu, 9 Dec 1999, Andrea Arcangeli wrote:
    >> >> > >
    >> >> > > while ((active = get_active_bhs()) {
    >> >
    >> >how about .... __sti(); ?
    >> >
    >> >> > > clear_active_bhs(active);
    >> Yes that' the right place for the __sti(). After reading the active bhs
    >> and before clearing them. Also remove the __sti and __cli() from the
    >> caller.
    >Maybe the __sti(); should come *after* the clear_active_bhs?


    >A bh could get marked just prior to the clear_active_bhs and be lost?

    We atomically only clear the ones that we are going to execute really. See
    the clear_active_bhs implementation. The only thing that matters for UP is
    that we take irq disabled all the time after we seen `active == 0'. Thus
    we can enable interrupts locally _before_ clear_active_bhs but _after_

    >Does it hurt to keep __sti and __cli() in the caller?

    No of course, they should be removed (see my previous email ;).


    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:55    [W:0.021 / U:7.456 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site