Re: Real-Time Preemption, -RT-2.6.12-final-V0.7.50-24

Karsten Wiese
2005-06-28T17:30:00Z

Hi Ingo,

suffering (not really ;-) double-rated IO-APIC level-interrupts I found the following patch as a solution:

--- arch/i386/kernel/io_apic.c~ 2005-06-28 19:07:49.000000000 +0200
+++ arch/i386/kernel/io_apic.c 2005-06-28 19:07:49.000000000 +0200
@@ -1959,6 +1959,7 @@
static void mask_and_ack_level_ioapic_irq(unsigned int irq)
{
move_irq(irq);
+ mask_IO_APIC_irq(irq);
ack_APIC_irq();
}

--- kernel/irq/handle.c~ 2005-06-28 19:19:32.000000000 +0200
+++ kernel/irq/handle.c 2005-06-28 19:19:32.000000000 +0200
@@ -214,7 +214,6 @@
* hardirq redirection to the irqd process context:
*/
if (redirect_hardirq(desc)) {
- desc->handler->disable(irq);
goto out_no_end;
}

it works here on a PREEMPT_RT 2.6.12-RT-V0.7.50-29 base.
Level-interrupts are sanely rated again.
Didn't check, if the patch breaks XT-PIC mode, which works ok without the patch.
Mainline shows the same effect here (VIA K8T800 UP), didn't dig there yet.

thanks,
Karsten

___________________________________________________________
Gesendet von Yahoo! Mail - Jetzt mit 1GB Speicher kostenlos - Hier anmelden: http://mail.yahoo.de