lkml.org 
[lkml]   [1997]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Faster timers for Linux 2.1.22

    On Mon, 27 Jan 1997, Theodore Y. Ts'o wrote:

    > From: Keith Owens <kaos@ocs.com.au>
    > Date: Mon, 27 Jan 1997 12:01:00 +1100
    >
    > As for 'buffering', after disable_bh is called, the next interrupt of
    > any kind including (AFAIK) the timer tick will run any outstanding
    > bottom half code. This takes precedence over user driven code. It's a
    > tradeoff, a more local lock and a slightly delayed bh against a global
    > lock that hits every piece of code.
    >
    > Bottom half routines are run when the kernel is on its way out to
    > user-mode. [...]

    with one small exception if my understanding of entry.S is correct:

    ------------------------------------------->
    ret_from_sys_call:
    #ifdef __SMP__
    GET_CURRENT
    #endif
    cmpl $0,SYMBOL_NAME(intr_count)
    jne 1f
    9: movl SYMBOL_NAME(bh_mask),%eax
    andl SYMBOL_NAME(bh_active),%eax
    jne handle_bottom_half
    <-------------------------------------------

    Thus 'slow irq handlers' (keyboard, some networking drivers) and the timer
    irq [they all take the ret_from_sys_call path] call 'do_bottom_half()'
    even if they interrupt kernel code.

    -- mingo


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