lkml.org 
[lkml]   [2000]   [Mar]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: new IRQ scalability changes in 2.3.48


    On Thu, 9 Mar 2000, Andrea Arcangeli wrote:
    >
    > >Each cpu has its own interrupt mask register, so the actual interrupt
    > >handler needn't worry about communicating with other processors.
    >
    > Yes, but we definitely need the per irq-desc locking to avoid to run the
    > irq handler on two CPUs at the same time.

    Indeed. There's probably no way to avoid that lock, so one lock is a
    minimum requirement. That's true even with interrupt controllers that
    don't ever distribute the irq's the way you describe: we need _some_
    synchronization with things like "disable_irq()", "request_irq()" and
    "release_irq()", and a per-irqdescriptor spinlock is just the obvious
    way to do it.

    You could probably play games here and use lockless data structures and
    other magic, but the complexity would probably obviate the gain.

    Linus


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

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