* [PATCH -tip] x86: do_IRQ - send EOI for x86-32 on irq without handler
@ 2009-04-03 18:57 Cyrill Gorcunov
2009-04-08 13:02 ` Ingo Molnar
0 siblings, 1 reply; 4+ messages in thread
From: Cyrill Gorcunov @ 2009-04-03 18:57 UTC (permalink / raw)
To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin; +Cc: LKML, Suresh Siddha
For X86-32 if IRQ has no handler it remains non-Ack'ed
even if APIC is not requested for being disabled.
Fix it.
Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
CC: Suresh Siddha <suresh.b.siddha@intel.com>
---
arch/x86/kernel/irq.c | 2 --
1 file changed, 2 deletions(-)
Index: linux-2.6.git/arch/x86/kernel/irq.c
===================================================================
--- linux-2.6.git.orig/arch/x86/kernel/irq.c
+++ linux-2.6.git/arch/x86/kernel/irq.c
@@ -218,10 +218,8 @@ unsigned int __irq_entry do_IRQ(struct p
irq = __get_cpu_var(vector_irq)[vector];
if (!handle_irq(irq, regs)) {
-#ifdef CONFIG_X86_64
if (!disable_apic)
ack_APIC_irq();
-#endif
if (printk_ratelimit())
printk(KERN_EMERG "%s: %d.%d No irq handler for vector (irq %d)\n",
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH -tip] x86: do_IRQ - send EOI for x86-32 on irq without handler
2009-04-03 18:57 [PATCH -tip] x86: do_IRQ - send EOI for x86-32 on irq without handler Cyrill Gorcunov
@ 2009-04-08 13:02 ` Ingo Molnar
2009-04-08 13:25 ` Ingo Molnar
0 siblings, 1 reply; 4+ messages in thread
From: Ingo Molnar @ 2009-04-08 13:02 UTC (permalink / raw)
To: Cyrill Gorcunov, Yinghai Lu
Cc: Thomas Gleixner, H. Peter Anvin, LKML, Suresh Siddha
* Cyrill Gorcunov <gorcunov@openvz.org> wrote:
> For X86-32 if IRQ has no handler it remains non-Ack'ed
> even if APIC is not requested for being disabled.
> Fix it.
nice fix. Did you observe any real hangs in such a situation, or is
this via code review?
Ingo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH -tip] x86: do_IRQ - send EOI for x86-32 on irq without handler
2009-04-08 13:02 ` Ingo Molnar
@ 2009-04-08 13:25 ` Ingo Molnar
2009-04-08 13:57 ` Cyrill Gorcunov
0 siblings, 1 reply; 4+ messages in thread
From: Ingo Molnar @ 2009-04-08 13:25 UTC (permalink / raw)
To: Cyrill Gorcunov, Yinghai Lu
Cc: Thomas Gleixner, H. Peter Anvin, LKML, Suresh Siddha
* Ingo Molnar <mingo@elte.hu> wrote:
>
> * Cyrill Gorcunov <gorcunov@openvz.org> wrote:
>
> > For X86-32 if IRQ has no handler it remains non-Ack'ed
> > even if APIC is not requested for being disabled.
> > Fix it.
>
> nice fix. Did you observe any real hangs in such a situation, or is
> this via code review?
more stuff needs fixing here first:
arch/x86/kernel/irq.c: In function ‘do_IRQ’:
arch/x86/kernel/irq.c:226: error: ‘disable_apic’ undeclared (first use in this function)
arch/x86/kernel/irq.c:226: error: (Each undeclared identifier is reported only once
arch/x86/kernel/irq.c:226: error: for each function it appears in.)
like making 'disable_apic' available everywhere.
Or better yet: introduce a dummy apic->write() method in the
disable_apic=1 case so we can call a straight ack_APIC_irq().
Ingo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH -tip] x86: do_IRQ - send EOI for x86-32 on irq without handler
2009-04-08 13:25 ` Ingo Molnar
@ 2009-04-08 13:57 ` Cyrill Gorcunov
0 siblings, 0 replies; 4+ messages in thread
From: Cyrill Gorcunov @ 2009-04-08 13:57 UTC (permalink / raw)
To: Ingo Molnar
Cc: Yinghai Lu, Thomas Gleixner, H. Peter Anvin, LKML, Suresh Siddha
[Ingo Molnar - Wed, Apr 08, 2009 at 03:25:58PM +0200]
|
| * Ingo Molnar <mingo@elte.hu> wrote:
|
| >
| > * Cyrill Gorcunov <gorcunov@openvz.org> wrote:
| >
| > > For X86-32 if IRQ has no handler it remains non-Ack'ed
| > > even if APIC is not requested for being disabled.
| > > Fix it.
| >
| > nice fix. Did you observe any real hangs in such a situation, or is
| > this via code review?
Code review
|
| more stuff needs fixing here first:
|
| arch/x86/kernel/irq.c: In function ‘do_IRQ’:
| arch/x86/kernel/irq.c:226: error: ‘disable_apic’ undeclared (first use in this function)
| arch/x86/kernel/irq.c:226: error: (Each undeclared identifier is reported only once
| arch/x86/kernel/irq.c:226: error: for each function it appears in.)
|
| like making 'disable_apic' available everywhere.
|
| Or better yet: introduce a dummy apic->write() method in the
| disable_apic=1 case so we can call a straight ack_APIC_irq().
|
| Ingo
|
Ugh! Thanks Ingo! Will check and fix!
Cyrill
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-04-08 13:57 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-03 18:57 [PATCH -tip] x86: do_IRQ - send EOI for x86-32 on irq without handler Cyrill Gorcunov
2009-04-08 13:02 ` Ingo Molnar
2009-04-08 13:25 ` Ingo Molnar
2009-04-08 13:57 ` Cyrill Gorcunov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox