lkml.org 
[lkml]   [2005]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Real-Time Preemption, -RT-2.6.12-final-V0.7.50-24

* Karsten Wiese <annabellesgarden@yahoo.de> wrote:

> looked at -50-33 now and wonder why is mask_IO_APIC_irq() called twice
> from __do_IRQ()? given a threaded interrupt: __do_IRQ() calls
> desc->handler->ack(irq). ack points to
> mask_and_ack_level_ioapic_irq(), which calls mask_IO_APIC_irq(irq).
> some lines later in __do_IRQ() desc->handler->disable(irq) is called.
> disable points to mask_IO_APIC_irq(), now being called a 2nd time. I
> think this 2nd call isn't necessary. Is there a difference between
> masking an interrupt line and disabling it? What am I missing?

you are not missing anything - but i found no easy way for the time
being to get rid of the second masking.

> Back at 2.6.12-rc5-RT-48-16 mask_and_ack_level_ioapic_irq() also
> contained the mask_IO_APIC_irq(irq) call and level interrupt-rates
> where fine. Some versions later it vanished there. Why was that?

i reorganized how redirection is being done, and i've implemented
auto-ACK for the i8259A, to reduce IRQ handling costs. One goal was to
avoid the masking of the interrupt line for the timer interrupt on
i8259A - but i think i'm going to revert that, it's causing too many
problems all around.

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-06-29 08:41    [W:0.124 / U:0.252 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site