All of lore.kernel.org
 help / color / mirror / Atom feed
* 2.6.1 - IRQ routing regression on Abit VP6
@ 2004-01-14  4:42 ` Ian Pilcher
  0 siblings, 0 replies; 5+ messages in thread
From: Ian Pilcher @ 2004-01-14  4:42 UTC (permalink / raw)
  To: linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

2.6.0 works fine on this hardware, including the twitchy built-in USB
controllers.

Loading the uhci-hcd module on 2.6.1 gives me the following:

drivers/usb/core/usb.c: registered new driver usbfs
drivers/usb/core/usb.c: registered new driver hub
drivers/usb/host/uhci-hcd.c: USB Universal Host Controller Interface 
driver v2.1
uhci_hcd 0000:00:07.2: UHCI Host Controller
uhci_hcd 0000:00:07.2: irq 225, io base 00009400
uhci_hcd 0000:00:07.2: new USB bus registered, assigned bus number 1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
uhci_hcd 0000:00:07.3: UHCI Host Controller
uhci_hcd 0000:00:07.3: irq 225, io base 00009800
uhci_hcd 0000:00:07.3: new USB bus registered, assigned bus number 2
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
hub 1-0:1.0: new USB device on port 1, assigned address 2
APIC error on CPU1: 00(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU0: 00(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU1: 40(40)
irq 177: nobody cared!
Call Trace:
  [<c010d74a>] __report_bad_irq+0x2a/0x90
  [<c010d840>] note_interrupt+0x70/0xb0
  [<c010dc35>] do_IRQ+0x195/0x220
  [<c011b7ed>] smp_apic_timer_interrupt+0xdd/0x150
  [<c0105000>] rest_init+0x0/0x80
  [<c010bc24>] common_interrupt+0x18/0x20
  [<c0108ac0>] default_idle+0x0/0xc0
  [<c0105000>] rest_init+0x0/0x80
  [<c0108a19>] hlt_idle+0x29/0x40
  [<c0108bbb>] cpu_idle+0x3b/0x50
  [<c03aa4a0>] unknown_bootoption+0x0/0x120
  [<c03aa940>] start_kernel+0x1b0/0x200
  [<c03aa4a0>] unknown_bootoption+0x0/0x120

handlers:
[<c0263d00>] (ide_intr+0x0/0x2c0)
[<c0263d00>] (ide_intr+0x0/0x2c0)
Disabling IRQ #177
usb 1-1: control timeout on ep0out
uhci_hcd 0000:00:07.2: Unlink after no-IRQ?  Different ACPI or APIC 
settings may help.

And so on, until I shut down the system.

The 20031203 ACPI patch fixes the problem.

-- 
========================================================================
Ian Pilcher                                        i.pilcher-Wuw85uim5zDR7s880joybQ@public.gmane.org
========================================================================



-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html

^ permalink raw reply	[flat|nested] 5+ messages in thread

* 2.6.1 - IRQ routing regression on Abit VP6
@ 2004-01-14  4:42 ` Ian Pilcher
  0 siblings, 0 replies; 5+ messages in thread
From: Ian Pilcher @ 2004-01-14  4:42 UTC (permalink / raw)
  To: linux-kernel, acpi-devel

2.6.0 works fine on this hardware, including the twitchy built-in USB
controllers.

Loading the uhci-hcd module on 2.6.1 gives me the following:

drivers/usb/core/usb.c: registered new driver usbfs
drivers/usb/core/usb.c: registered new driver hub
drivers/usb/host/uhci-hcd.c: USB Universal Host Controller Interface 
driver v2.1
uhci_hcd 0000:00:07.2: UHCI Host Controller
uhci_hcd 0000:00:07.2: irq 225, io base 00009400
uhci_hcd 0000:00:07.2: new USB bus registered, assigned bus number 1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
uhci_hcd 0000:00:07.3: UHCI Host Controller
uhci_hcd 0000:00:07.3: irq 225, io base 00009800
uhci_hcd 0000:00:07.3: new USB bus registered, assigned bus number 2
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
hub 1-0:1.0: new USB device on port 1, assigned address 2
APIC error on CPU1: 00(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU0: 00(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU1: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU0: 40(40)
APIC error on CPU1: 40(40)
irq 177: nobody cared!
Call Trace:
  [<c010d74a>] __report_bad_irq+0x2a/0x90
  [<c010d840>] note_interrupt+0x70/0xb0
  [<c010dc35>] do_IRQ+0x195/0x220
  [<c011b7ed>] smp_apic_timer_interrupt+0xdd/0x150
  [<c0105000>] rest_init+0x0/0x80
  [<c010bc24>] common_interrupt+0x18/0x20
  [<c0108ac0>] default_idle+0x0/0xc0
  [<c0105000>] rest_init+0x0/0x80
  [<c0108a19>] hlt_idle+0x29/0x40
  [<c0108bbb>] cpu_idle+0x3b/0x50
  [<c03aa4a0>] unknown_bootoption+0x0/0x120
  [<c03aa940>] start_kernel+0x1b0/0x200
  [<c03aa4a0>] unknown_bootoption+0x0/0x120

handlers:
[<c0263d00>] (ide_intr+0x0/0x2c0)
[<c0263d00>] (ide_intr+0x0/0x2c0)
Disabling IRQ #177
usb 1-1: control timeout on ep0out
uhci_hcd 0000:00:07.2: Unlink after no-IRQ?  Different ACPI or APIC 
settings may help.

And so on, until I shut down the system.

The 20031203 ACPI patch fixes the problem.

-- 
========================================================================
Ian Pilcher                                        i.pilcher@comcast.net
========================================================================


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: 2.6.1 - IRQ routing regression on Abit VP6
       [not found]     ` <4004D220.8010804-Wuw85uim5zDR7s880joybQ@public.gmane.org>
@ 2004-01-14 10:17       ` Ducrot Bruno
  0 siblings, 0 replies; 5+ messages in thread
From: Ducrot Bruno @ 2004-01-14 10:17 UTC (permalink / raw)
  To: Ian Pilcher; +Cc: Li, Shaohua, acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

On Tue, Jan 13, 2004 at 11:22:40PM -0600, Ian Pilcher wrote:
> Li, Shaohua wrote:
> >Did you open CONFIG_PCI_USE_VECTOR? Please try close it or try the 
> >attached patch.
> 
> It sounds like you may not have read all the way to the bottom.  I was
> able to get 2.6.1 working by updating the ACPI to version 20031203.
> 
> So I wasn't asking for help, just reporting a bug.  (And generally
> complaining about such an ugly regressing in a supposedly stable kernel
> series.)
> 

It's just a stupid though, and I'm certainly wrong.  Unless there is 
a 2.7 tree, 2.6 can't be considered "stable".

-- 
Ducrot Bruno

--  Which is worse:  ignorance or apathy?
--  Don't know.  Don't care.


-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: 2.6.1 - IRQ routing regression on Abit VP6
       [not found] ` <571ACEFD467F7749BC50E0A98C17CDD8D5FEB8-SRlDPOYGfgogGBtAFL8yw7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
@ 2004-01-14  5:22   ` Ian Pilcher
       [not found]     ` <4004D220.8010804-Wuw85uim5zDR7s880joybQ@public.gmane.org>
  0 siblings, 1 reply; 5+ messages in thread
From: Ian Pilcher @ 2004-01-14  5:22 UTC (permalink / raw)
  To: Li, Shaohua; +Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

Li, Shaohua wrote:
> Did you open CONFIG_PCI_USE_VECTOR? Please try close it or try the attached patch.

It sounds like you may not have read all the way to the bottom.  I was
able to get 2.6.1 working by updating the ACPI to version 20031203.

So I wasn't asking for help, just reporting a bug.  (And generally
complaining about such an ugly regressing in a supposedly stable kernel
series.)

Thanks for the response, though.

-- 
========================================================================
Ian Pilcher                                        i.pilcher-Wuw85uim5zDR7s880joybQ@public.gmane.org
========================================================================



-------------------------------------------------------
This SF.net email is sponsored by: Perforce Software.
Perforce is the Fast Software Configuration Management System offering
advanced branching capabilities and atomic changes on 50+ platforms.
Free Eval! http://www.perforce.com/perforce/loadprog.html

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: 2.6.1 - IRQ routing regression on Abit VP6
@ 2004-01-14  5:09 Li, Shaohua
       [not found] ` <571ACEFD467F7749BC50E0A98C17CDD8D5FEB8-SRlDPOYGfgogGBtAFL8yw7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
  0 siblings, 1 reply; 5+ messages in thread
From: Li, Shaohua @ 2004-01-14  5:09 UTC (permalink / raw)
  To: Ian Pilcher; +Cc: acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

[-- Attachment #1: Type: text/plain, Size: 3994 bytes --]

Did you open CONFIG_PCI_USE_VECTOR? Please try close it or try the attached patch.

thanks,
-David

> -----Original Message-----
> From: acpi-devel-admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org [mailto:acpi-devel-
> admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org] On Behalf Of Ian Pilcher
> Sent: 2004年1月14日 12:42
> To: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org; acpi-devel@lists.sourceforge.net
> Subject: [ACPI] 2.6.1 - IRQ routing regression on Abit VP6
> 
> 2.6.0 works fine on this hardware, including the twitchy built-in USB
> controllers.
> 
> Loading the uhci-hcd module on 2.6.1 gives me the following:
> 
> drivers/usb/core/usb.c: registered new driver usbfs
> drivers/usb/core/usb.c: registered new driver hub
> drivers/usb/host/uhci-hcd.c: USB Universal Host Controller Interface
> driver v2.1
> uhci_hcd 0000:00:07.2: UHCI Host Controller
> uhci_hcd 0000:00:07.2: irq 225, io base 00009400
> uhci_hcd 0000:00:07.2: new USB bus registered, assigned bus number 1
> hub 1-0:1.0: USB hub found
> hub 1-0:1.0: 2 ports detected
> uhci_hcd 0000:00:07.3: UHCI Host Controller
> uhci_hcd 0000:00:07.3: irq 225, io base 00009800
> uhci_hcd 0000:00:07.3: new USB bus registered, assigned bus number 2
> hub 2-0:1.0: USB hub found
> hub 2-0:1.0: 2 ports detected
> hub 1-0:1.0: new USB device on port 1, assigned address 2
> APIC error on CPU1: 00(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU0: 00(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU1: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU0: 40(40)
> APIC error on CPU1: 40(40)
> irq 177: nobody cared!
> Call Trace:
>   [<c010d74a>] __report_bad_irq+0x2a/0x90
>   [<c010d840>] note_interrupt+0x70/0xb0
>   [<c010dc35>] do_IRQ+0x195/0x220
>   [<c011b7ed>] smp_apic_timer_interrupt+0xdd/0x150
>   [<c0105000>] rest_init+0x0/0x80
>   [<c010bc24>] common_interrupt+0x18/0x20
>   [<c0108ac0>] default_idle+0x0/0xc0
>   [<c0105000>] rest_init+0x0/0x80
>   [<c0108a19>] hlt_idle+0x29/0x40
>   [<c0108bbb>] cpu_idle+0x3b/0x50
>   [<c03aa4a0>] unknown_bootoption+0x0/0x120
>   [<c03aa940>] start_kernel+0x1b0/0x200
>   [<c03aa4a0>] unknown_bootoption+0x0/0x120
> 
> handlers:
> [<c0263d00>] (ide_intr+0x0/0x2c0)
> [<c0263d00>] (ide_intr+0x0/0x2c0)
> Disabling IRQ #177
> usb 1-1: control timeout on ep0out
> uhci_hcd 0000:00:07.2: Unlink after no-IRQ?  Different ACPI or APIC
> settings may help.
> 
> And so on, until I shut down the system.
> 
> The 20031203 ACPI patch fixes the problem.
> 
> --
> ========================================================================
> Ian Pilcher                                        i.pilcher-Wuw85uim5zDR7s880joybQ@public.gmane.org
> ========================================================================
> 
> 
> 
> -------------------------------------------------------
> This SF.net email is sponsored by: Perforce Software.
> Perforce is the Fast Software Configuration Management System offering
> advanced branching capabilities and atomic changes on 50+ platforms.
> Free Eval! http://www.perforce.com/perforce/loadprog.html
> _______________________________________________
> Acpi-devel mailing list
> Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> https://lists.sourceforge.net/lists/listinfo/acpi-devel

[-- Attachment #2: sci_vector-2.6.1 --]
[-- Type: application/octet-stream, Size: 3276 bytes --]

diff -Nur linux-2.6.1.orig/arch/i386/kernel/acpi/boot.c linux-2.6.1/arch/i386/kernel/acpi/boot.c
--- linux-2.6.1.orig/arch/i386/kernel/acpi/boot.c	2004-01-08 22:59:56.000000000 -0800
+++ linux-2.6.1/arch/i386/kernel/acpi/boot.c	2004-01-13 14:15:57.000000000 -0800
@@ -32,6 +32,7 @@
 #include <asm/apic.h>
 #include <asm/io.h>
 #include <asm/mpspec.h>
+#include <linux/irq.h>
 
 #if defined (CONFIG_X86_LOCAL_APIC)
 #include <mach_apic.h>
@@ -275,7 +276,15 @@
 }
 #endif /* CONFIG_ACPI_BUS */
 
-
+#ifdef CONFIG_X86_IO_APIC
+int
+acpi_irq_to_vector (u32 irq)
+{
+	if (use_pci_vector() && !platform_legacy_irq(irq))
+ 		irq = IO_APIC_VECTOR(irq);
+	return irq;
+}
+#endif
 
 static unsigned long __init
 acpi_scan_rsdp (
diff -Nur linux-2.6.1.orig/arch/i386/kernel/mpparse.c linux-2.6.1/arch/i386/kernel/mpparse.c
--- linux-2.6.1.orig/arch/i386/kernel/mpparse.c	2004-01-08 22:59:19.000000000 -0800
+++ linux-2.6.1/arch/i386/kernel/mpparse.c	2004-01-13 14:15:57.000000000 -0800
@@ -1120,7 +1120,8 @@
 
 		/* Don't set up the ACPI SCI because it's already set up */
                 if (acpi_fadt.sci_int == irq) {
-                        entry->irq = irq; /*we still need to set entry's irq*/
+			irq = acpi_irq_to_vector(irq);
+			entry->irq = irq; /* we still need to set entry's irq */
 			continue;
                 }
 	
@@ -1147,18 +1148,14 @@
 		if ((1<<bit) & mp_ioapic_routing[ioapic].pin_programmed[idx]) {
 			printk(KERN_DEBUG "Pin %d-%d already programmed\n",
 				mp_ioapic_routing[ioapic].apic_id, ioapic_pin);
- 			if (use_pci_vector() && !platform_legacy_irq(irq))
- 				irq = IO_APIC_VECTOR(irq);
- 			entry->irq = irq;
+ 			entry->irq = acpi_irq_to_vector(irq);
 			continue;
 		}
 
 		mp_ioapic_routing[ioapic].pin_programmed[idx] |= (1<<bit);
 
 		if (!io_apic_set_pci_routing(ioapic, ioapic_pin, irq, edge_level, active_high_low)) {
- 			if (use_pci_vector() && !platform_legacy_irq(irq))
- 				irq = IO_APIC_VECTOR(irq);
- 			entry->irq = irq;
+ 			entry->irq = acpi_irq_to_vector(irq);
  		}
 		printk(KERN_DEBUG "%02x:%02x:%02x[%c] -> %d-%d -> IRQ %d\n",
 			entry->id.segment, entry->id.bus, 
diff -Nur linux-2.6.1.orig/drivers/acpi/osl.c linux-2.6.1/drivers/acpi/osl.c
--- linux-2.6.1.orig/drivers/acpi/osl.c	2004-01-08 22:59:56.000000000 -0800
+++ linux-2.6.1/drivers/acpi/osl.c	2004-01-13 16:07:35.000000000 -0800
@@ -249,7 +249,7 @@
 	 */
 	irq = acpi_fadt.sci_int;
 
-#ifdef CONFIG_IA64
+#if defined(CONFIG_IA64) || defined(CONFIG_PCI_USE_VECTOR)
 	irq = acpi_irq_to_vector(irq);
 	if (irq < 0) {
 		printk(KERN_ERR PREFIX "SCI (ACPI interrupt %d) not registered\n",
@@ -272,7 +272,7 @@
 acpi_os_remove_interrupt_handler(u32 irq, OSD_HANDLER handler)
 {
 	if (acpi_irq_handler) {
-#ifdef CONFIG_IA64
+#if defined(CONFIG_IA64) || defined(CONFIG_PCI_USE_VECTOR)
 		irq = acpi_irq_to_vector(irq);
 #endif
 		free_irq(irq, acpi_irq);
diff -Nur linux-2.6.1.orig/include/asm-i386/acpi.h linux-2.6.1/include/asm-i386/acpi.h
--- linux-2.6.1.orig/include/asm-i386/acpi.h	2004-01-08 23:00:02.000000000 -0800
+++ linux-2.6.1/include/asm-i386/acpi.h	2004-01-13 14:15:57.000000000 -0800
@@ -116,6 +116,7 @@
 
 #ifdef CONFIG_X86_IO_APIC
 extern int skip_ioapic_setup;
+extern int acpi_irq_to_vector (u32 irq);
 
 static inline void disable_ioapic_setup(void)
 {

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2004-01-14 10:17 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-01-14  4:42 2.6.1 - IRQ routing regression on Abit VP6 Ian Pilcher
2004-01-14  4:42 ` Ian Pilcher
2004-01-14  5:09 Li, Shaohua
     [not found] ` <571ACEFD467F7749BC50E0A98C17CDD8D5FEB8-SRlDPOYGfgogGBtAFL8yw7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
2004-01-14  5:22   ` Ian Pilcher
     [not found]     ` <4004D220.8010804-Wuw85uim5zDR7s880joybQ@public.gmane.org>
2004-01-14 10:17       ` Ducrot Bruno

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.