[lkml]   [2002]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH][RFC] per isr in_progress markers
    On Sun, 8 Sep 2002, Ingo Molnar wrote:

    > if we didnt disable the IRQ line then an additional interrupt would be
    > triggered when [*] is done.

    We should be safe from that since ->end() is called after the handler at
    at that stage the irq line is still disabled due to us not ack'ing in

    > it could perhaps be handled the following way:
    > disable IRQ line
    > ack APIC
    > -> call handler
    > while (work_left) {
    > ack interrupt on the card [*]
    > enable IRQ line [**]
    > [... full processing ...]
    > }
    > so after [**] is done we could accept new interrupts, and the amount of
    > time we keep the irq line disabled should be small. Obviously this means
    > driver level changes.

    After looking at the code at bit more the following would still work for
    level triggered via ioapic. Due to that specific irq line being
    effectively disabled until we hit ->end.

    while(work_to_do) {
    ack_interrupt_on_card(); <-- unmask_irq_line in here too

    So it looks like your previous suggestion of driver modification still
    stands, would it be safe then to do a real ack in the isr (for the ioapic



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

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