Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Jiri Slaby
On 02/11/2013 07:40 AM, Yinghai Lu wrote:
 Can you try attached debug patch?

FWIW this fixes it for me. No more 'derived' or 'nobody' in dmesg.

thanks,
-- 
js
suse labs
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Peter Hurley
On Sun, 2013-02-10 at 22:40 -0800, Yinghai Lu wrote:
 On Sun, Feb 10, 2013 at 12:33 PM, Yinghai Lu ying...@kernel.org wrote:
  On Sun, Feb 10, 2013 at 6:23 AM, Peter Hurley pe...@hurleysoftware.com 
  wrote:
  On Sat, 2013-02-09 at 22:14 -0500, Peter Hurley wrote:
  On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
   On Tue, 5 Feb 2013, Peter Hurley wrote:
  
With -next-20130204:
   
[   33.855570] irq 18: nobody cared (try booting with the irqpoll 
option)
[   33.855580] Pid: 0, comm: swapper/4 Not tainted 
3.8.0-next-20130204-xeon #20130204
[   33.855582] Call Trace:
[   33.855585]  IRQ  [810f1076] __report_bad_irq+0x36/0xe0
[   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
[   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855610]  [810eed89] 
handle_irq_event_percpu+0xc9/0x260
[   33.855614]  [810eef68] handle_irq_event+0x48/0x70
[   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
[   33.855624]  [810182f2] handle_irq+0x22/0x40
[   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
[   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
[   33.855638]  EOI  [810f8e2a] ? 
rcu_eqs_enter_common+0x4a/0x320
[   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
[   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
[   33.855658]  [816c0c0f] start_secondary+0x251/0x258
[   33.855660] handlers:
[   33.855664] [814f98a0] usb_hcd_irq
[   33.855667] Disabling IRQ #18
   
  https://bugzilla.kernel.org/show_bug.cgi?id=53561
 
  Maybe this is some interaction with all the new ACPI code and fixes
  written in those 8 days.
 
  interrupt routing seems get changed:
  next:
 5:  0  0  0  0  0
  0  0  0   IO-APIC-fasteoi   snd_ctxfi
18:  99970 13 16 20  99940
  13 13 16   IO-APIC-fasteoi   uhci_hcd:usb4
  v3.8-rc7:
18:424 15 11112420
  16 18105   IO-APIC-fasteoi   uhci_hcd:usb4, snd_ctxfi
 
  These messages in the bad dmesg log are interesting since PCI INT A is 
  routed
  on
  irq 18 with the kernels that work.
  [8.983246] pci :00:1e.0: can't derive routing for PCI INT A
  [8.983600] snd_ctxfi :09:02.0: PCI INT A: no GSI - using ISA IRQ 5
  ...
 
  acpi_pci_irq_add_prt() add wrong bus for that bridge, because that
  that bridge is not scanned.
 
  Will check if I can produce one patch for it.
 
 Hi Peter,
 
 Can you try attached debug patch?

Fixed, thanks.

Regards,
Peter Hurley


--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Yinghai Lu
On Mon, Feb 11, 2013 at 5:02 AM, Peter Hurley pe...@hurleysoftware.com wrote:
 On Sun, 2013-02-10 at 22:40 -0800, Yinghai Lu wrote:
 On Sun, Feb 10, 2013 at 12:33 PM, Yinghai Lu ying...@kernel.org wrote:
  On Sun, Feb 10, 2013 at 6:23 AM, Peter Hurley pe...@hurleysoftware.com 
  wrote:
  On Sat, 2013-02-09 at 22:14 -0500, Peter Hurley wrote:
  On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
   On Tue, 5 Feb 2013, Peter Hurley wrote:
  
With -next-20130204:
   
[   33.855570] irq 18: nobody cared (try booting with the irqpoll 
option)
[   33.855580] Pid: 0, comm: swapper/4 Not tainted 
3.8.0-next-20130204-xeon #20130204
[   33.855582] Call Trace:
[   33.855585]  IRQ  [810f1076] 
__report_bad_irq+0x36/0xe0
[   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
[   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855610]  [810eed89] 
handle_irq_event_percpu+0xc9/0x260
[   33.855614]  [810eef68] handle_irq_event+0x48/0x70
[   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
[   33.855624]  [810182f2] handle_irq+0x22/0x40
[   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
[   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
[   33.855638]  EOI  [810f8e2a] ? 
rcu_eqs_enter_common+0x4a/0x320
[   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
[   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
[   33.855658]  [816c0c0f] start_secondary+0x251/0x258
[   33.855660] handlers:
[   33.855664] [814f98a0] usb_hcd_irq
[   33.855667] Disabling IRQ #18
   
  https://bugzilla.kernel.org/show_bug.cgi?id=53561
 
  Maybe this is some interaction with all the new ACPI code and fixes
  written in those 8 days.
 
  interrupt routing seems get changed:
  next:
 5:  0  0  0  0  0
  0  0  0   IO-APIC-fasteoi   snd_ctxfi
18:  99970 13 16 20  99940
  13 13 16   IO-APIC-fasteoi   uhci_hcd:usb4
  v3.8-rc7:
18:424 15 11112420
  16 18105   IO-APIC-fasteoi   uhci_hcd:usb4, snd_ctxfi
 
  These messages in the bad dmesg log are interesting since PCI INT A is 
  routed
  on
  irq 18 with the kernels that work.
  [8.983246] pci :00:1e.0: can't derive routing for PCI INT A
  [8.983600] snd_ctxfi :09:02.0: PCI INT A: no GSI - using ISA IRQ 5
  ...
 
  acpi_pci_irq_add_prt() add wrong bus for that bridge, because that
  that bridge is not scanned.
 
  Will check if I can produce one patch for it.

 Hi Peter,

 Can you try attached debug patch?

 Fixed, thanks.

Bjorn, Rafael,

acpi_pci_irq_add_prt need to be called after pci bridge get scanned,
so we can not call it from pci_acpi_setup, after we move dev_register
for pci_dev early.

The attached debug patch move down that calling into
pci_bus_add_devices and that will make prt works again.

Can acpi provide another hook after bridge get scanned?

Thanks

Yinghai


move_add_irq_prt_down.patch
Description: Binary data


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Sedat Dilek
On Mon, Feb 11, 2013 at 8:19 PM, Yinghai Lu ying...@kernel.org wrote:
 On Mon, Feb 11, 2013 at 5:02 AM, Peter Hurley pe...@hurleysoftware.com 
 wrote:
 On Sun, 2013-02-10 at 22:40 -0800, Yinghai Lu wrote:
 On Sun, Feb 10, 2013 at 12:33 PM, Yinghai Lu ying...@kernel.org wrote:
  On Sun, Feb 10, 2013 at 6:23 AM, Peter Hurley pe...@hurleysoftware.com 
  wrote:
  On Sat, 2013-02-09 at 22:14 -0500, Peter Hurley wrote:
  On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
   On Tue, 5 Feb 2013, Peter Hurley wrote:
  
With -next-20130204:
   
[   33.855570] irq 18: nobody cared (try booting with the irqpoll 
option)
[   33.855580] Pid: 0, comm: swapper/4 Not tainted 
3.8.0-next-20130204-xeon #20130204
[   33.855582] Call Trace:
[   33.855585]  IRQ  [810f1076] 
__report_bad_irq+0x36/0xe0
[   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
[   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855610]  [810eed89] 
handle_irq_event_percpu+0xc9/0x260
[   33.855614]  [810eef68] handle_irq_event+0x48/0x70
[   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
[   33.855624]  [810182f2] handle_irq+0x22/0x40
[   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
[   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
[   33.855638]  EOI  [810f8e2a] ? 
rcu_eqs_enter_common+0x4a/0x320
[   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
[   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
[   33.855658]  [816c0c0f] start_secondary+0x251/0x258
[   33.855660] handlers:
[   33.855664] [814f98a0] usb_hcd_irq
[   33.855667] Disabling IRQ #18
   
  https://bugzilla.kernel.org/show_bug.cgi?id=53561
 
  Maybe this is some interaction with all the new ACPI code and fixes
  written in those 8 days.
 
  interrupt routing seems get changed:
  next:
 5:  0  0  0  0  0
  0  0  0   IO-APIC-fasteoi   snd_ctxfi
18:  99970 13 16 20  99940
  13 13 16   IO-APIC-fasteoi   uhci_hcd:usb4
  v3.8-rc7:
18:424 15 11112420
  16 18105   IO-APIC-fasteoi   uhci_hcd:usb4, snd_ctxfi
 
  These messages in the bad dmesg log are interesting since PCI INT A is 
  routed
  on
  irq 18 with the kernels that work.
  [8.983246] pci :00:1e.0: can't derive routing for PCI INT A
  [8.983600] snd_ctxfi :09:02.0: PCI INT A: no GSI - using ISA IRQ 5
  ...
 
  acpi_pci_irq_add_prt() add wrong bus for that bridge, because that
  that bridge is not scanned.
 
  Will check if I can produce one patch for it.

 Hi Peter,

 Can you try attached debug patch?

 Fixed, thanks.

 Bjorn, Rafael,

 acpi_pci_irq_add_prt need to be called after pci bridge get scanned,
 so we can not call it from pci_acpi_setup, after we move dev_register
 for pci_dev early.

 The attached debug patch move down that calling into
 pci_bus_add_devices and that will make prt works again.

 Can acpi provide another hook after bridge get scanned?


23: +   /* need to after bridge is scanned */
24: +   pcibios_irq_setup(dev-dev);

... need to *be called* after...

Even this is a temporary workaround, can you send a separate patch for this?

- Sedat -

P.S.: Still wonder why people use linux-2.6 as prefix in their patches.

 Thanks

 Yinghai
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Yinghai Lu
On Mon, Feb 11, 2013 at 11:45 AM, Sedat Dilek sedat.di...@gmail.com wrote:
 On Mon, Feb 11, 2013 at 8:19 PM, Yinghai Lu ying...@kernel.org wrote:
 On Mon, Feb 11, 2013 at 5:02 AM, Peter Hurley pe...@hurleysoftware.com 
 wrote:
 On Sun, 2013-02-10 at 22:40 -0800, Yinghai Lu wrote:
 On Sun, Feb 10, 2013 at 12:33 PM, Yinghai Lu ying...@kernel.org wrote:
  On Sun, Feb 10, 2013 at 6:23 AM, Peter Hurley pe...@hurleysoftware.com 
  wrote:
  On Sat, 2013-02-09 at 22:14 -0500, Peter Hurley wrote:
  On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
   On Tue, 5 Feb 2013, Peter Hurley wrote:
  
With -next-20130204:
   
[   33.855570] irq 18: nobody cared (try booting with the 
irqpoll option)
[   33.855580] Pid: 0, comm: swapper/4 Not tainted 
3.8.0-next-20130204-xeon #20130204
[   33.855582] Call Trace:
[   33.855585]  IRQ  [810f1076] 
__report_bad_irq+0x36/0xe0
[   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
[   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855610]  [810eed89] 
handle_irq_event_percpu+0xc9/0x260
[   33.855614]  [810eef68] handle_irq_event+0x48/0x70
[   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
[   33.855624]  [810182f2] handle_irq+0x22/0x40
[   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
[   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
[   33.855638]  EOI  [810f8e2a] ? 
rcu_eqs_enter_common+0x4a/0x320
[   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
[   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
[   33.855658]  [816c0c0f] start_secondary+0x251/0x258
[   33.855660] handlers:
[   33.855664] [814f98a0] usb_hcd_irq
[   33.855667] Disabling IRQ #18
   
  https://bugzilla.kernel.org/show_bug.cgi?id=53561
 
  Maybe this is some interaction with all the new ACPI code and fixes
  written in those 8 days.
 
  interrupt routing seems get changed:
  next:
 5:  0  0  0  0  0
  0  0  0   IO-APIC-fasteoi   snd_ctxfi
18:  99970 13 16 20  99940
  13 13 16   IO-APIC-fasteoi   uhci_hcd:usb4
  v3.8-rc7:
18:424 15 11112420
  16 18105   IO-APIC-fasteoi   uhci_hcd:usb4, snd_ctxfi
 
  These messages in the bad dmesg log are interesting since PCI INT A is 
  routed
  on
  irq 18 with the kernels that work.
  [8.983246] pci :00:1e.0: can't derive routing for PCI INT A
  [8.983600] snd_ctxfi :09:02.0: PCI INT A: no GSI - using ISA IRQ 
  5
  ...
 
  acpi_pci_irq_add_prt() add wrong bus for that bridge, because that
  that bridge is not scanned.
 
  Will check if I can produce one patch for it.

 Hi Peter,

 Can you try attached debug patch?

 Fixed, thanks.

 Bjorn, Rafael,

 acpi_pci_irq_add_prt need to be called after pci bridge get scanned,
 so we can not call it from pci_acpi_setup, after we move dev_register
 for pci_dev early.

 The attached debug patch move down that calling into
 pci_bus_add_devices and that will make prt works again.

 Can acpi provide another hook after bridge get scanned?


 23: +   /* need to after bridge is scanned */
 24: +   pcibios_irq_setup(dev-dev);

 ... need to *be called* after...

 Even this is a temporary workaround, can you send a separate patch for this?

again, this is debug patch.

Thanks

Yinghai
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Yinghai Lu
On Mon, Feb 11, 2013 at 11:19 AM, Yinghai Lu ying...@kernel.org wrote:
 On Mon, Feb 11, 2013 at 5:02 AM, Peter Hurley pe...@hurleysoftware.com 
 wrote:
 On Sun, 2013-02-10 at 22:40 -0800, Yinghai Lu wrote:
 On Sun, Feb 10, 2013 at 12:33 PM, Yinghai Lu ying...@kernel.org wrote:
  On Sun, Feb 10, 2013 at 6:23 AM, Peter Hurley pe...@hurleysoftware.com 
  wrote:
  On Sat, 2013-02-09 at 22:14 -0500, Peter Hurley wrote:
  On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
   On Tue, 5 Feb 2013, Peter Hurley wrote:
  
With -next-20130204:
   
[   33.855570] irq 18: nobody cared (try booting with the irqpoll 
option)
[   33.855580] Pid: 0, comm: swapper/4 Not tainted 
3.8.0-next-20130204-xeon #20130204
[   33.855582] Call Trace:
[   33.855585]  IRQ  [810f1076] 
__report_bad_irq+0x36/0xe0
[   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
[   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855610]  [810eed89] 
handle_irq_event_percpu+0xc9/0x260
[   33.855614]  [810eef68] handle_irq_event+0x48/0x70
[   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
[   33.855624]  [810182f2] handle_irq+0x22/0x40
[   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
[   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
[   33.855638]  EOI  [810f8e2a] ? 
rcu_eqs_enter_common+0x4a/0x320
[   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
[   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
[   33.855658]  [816c0c0f] start_secondary+0x251/0x258
[   33.855660] handlers:
[   33.855664] [814f98a0] usb_hcd_irq
[   33.855667] Disabling IRQ #18
   
  https://bugzilla.kernel.org/show_bug.cgi?id=53561
 
  Maybe this is some interaction with all the new ACPI code and fixes
  written in those 8 days.
 
  interrupt routing seems get changed:
  next:
 5:  0  0  0  0  0
  0  0  0   IO-APIC-fasteoi   snd_ctxfi
18:  99970 13 16 20  99940
  13 13 16   IO-APIC-fasteoi   uhci_hcd:usb4
  v3.8-rc7:
18:424 15 11112420
  16 18105   IO-APIC-fasteoi   uhci_hcd:usb4, snd_ctxfi
 
  These messages in the bad dmesg log are interesting since PCI INT A is 
  routed
  on
  irq 18 with the kernels that work.
  [8.983246] pci :00:1e.0: can't derive routing for PCI INT A
  [8.983600] snd_ctxfi :09:02.0: PCI INT A: no GSI - using ISA IRQ 5
  ...
 
  acpi_pci_irq_add_prt() add wrong bus for that bridge, because that
  that bridge is not scanned.
 
  Will check if I can produce one patch for it.

 Hi Peter,

 Can you try attached debug patch?

 Fixed, thanks.

 Bjorn, Rafael,

 acpi_pci_irq_add_prt need to be called after pci bridge get scanned,
 so we can not call it from pci_acpi_setup, after we move dev_register
 for pci_dev early.

 The attached debug patch move down that calling into
 pci_bus_add_devices and that will make prt works again.

 Can acpi provide another hook after bridge get scanned?


Can we extend platform_notify to be
platform_notify(struct device *dev, event) ?

and event could be _ADD, _SCAN, _REMOVE

Thanks

Yinghai
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Yinghai Lu
On Mon, Feb 11, 2013 at 11:57 AM, Yinghai Lu ying...@kernel.org wrote:

 Bjorn, Rafael,

 acpi_pci_irq_add_prt need to be called after pci bridge get scanned,
 so we can not call it from pci_acpi_setup, after we move dev_register
 for pci_dev early.

 The attached debug patch move down that calling into
 pci_bus_add_devices and that will make prt works again.

 Can acpi provide another hook after bridge get scanned?


Rafael, Bjorn,

Can you check attached patch?

Thanks

Yinghai


move_add_irq_prt_down_v2.patch
Description: Binary data


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Bjorn Helgaas
[+cc linux-acpi, linux-pci]

On Mon, Feb 11, 2013 at 01:06:27PM -0800, Yinghai Lu wrote:
 On Mon, Feb 11, 2013 at 11:57 AM, Yinghai Lu ying...@kernel.org wrote:
 
  Bjorn, Rafael,
 
  acpi_pci_irq_add_prt need to be called after pci bridge get scanned,
  so we can not call it from pci_acpi_setup, after we move dev_register
  for pci_dev early.
 
  The attached debug patch move down that calling into
  pci_bus_add_devices and that will make prt works again.
 
  Can acpi provide another hook after bridge get scanned?
 
 Rafael, Bjorn,
 
 Can you check attached patch?

[Yinghai's patch included below for ease of review]

 Subject: [PATCH] ACPI, PCI: add acpi_platform_notify_scan()
 
 Peter Hurley found irq nobody cared, and dmesg has
 
 [8.983246] pci :00:1e.0: can't derive routing for PCI INT A
 [8.983600] snd_ctxfi :09:02.0: PCI INT A: no GSI - using ISA IRQ 5
 
 bisect to
 | commit 4f535093cf8f6da8cfda7c36c2c1ecd2e9586ee4
 | PCI: Put pci_dev in device tree as early as possible
 
 It turns out we need to call acpi_pci_irq_add_prt() after the pci bridges
 are scanned.
 
 Add acpi_platform_notify_scan() to call acpi_pci_irq_add_prt later.
 
 Reported-and-tested-by: Peter Hurley pe...@hurleysoftware.com
 Signed-off-by: Yinghai Lu ying...@kernel.org
 
 ---
  drivers/acpi/glue.c |   12 
  drivers/base/core.c |1 +
  drivers/pci/bus.c   |4 
  drivers/pci/pci-acpi.c  |   27 +--
  include/acpi/acpi_bus.h |1 +
  include/linux/device.h  |3 +--
  6 files changed, 36 insertions(+), 12 deletions(-)
 
 Index: linux-2.6/drivers/acpi/glue.c
 ===
 --- linux-2.6.orig/drivers/acpi/glue.c
 +++ linux-2.6/drivers/acpi/glue.c
 @@ -312,6 +312,17 @@ static int acpi_platform_notify(struct d
   return ret;
  }
  
 +static int acpi_platform_notify_scan(struct device *dev)
 +{
 + struct acpi_bus_type *type;
 +
 + type = acpi_get_bus_type(dev-bus);
 + if (type  type-setup_scan)
 + type-setup_scan(dev);
 +
 + return 0;
 +}
 +
  static int acpi_platform_notify_remove(struct device *dev)
  {
   struct acpi_bus_type *type;
 @@ -331,6 +342,7 @@ int __init init_acpi_device_notify(void)
   return 0;
   }
   platform_notify = acpi_platform_notify;
 + platform_notify_scan = acpi_platform_notify_scan;
   platform_notify_remove = acpi_platform_notify_remove;
   return 0;
  }
 Index: linux-2.6/drivers/base/core.c
 ===
 --- linux-2.6.orig/drivers/base/core.c
 +++ linux-2.6/drivers/base/core.c
 @@ -44,6 +44,7 @@ early_param(sysfs.deprecated, sysfs_de
  #endif
  
  int (*platform_notify)(struct device *dev) = NULL;
 +int (*platform_notify_scan)(struct device *dev) = NULL;

I don't like the idea of adding another global function pointer just
for this.  That seems like overkill for a small, local, problem.

  int (*platform_notify_remove)(struct device *dev) = NULL;
  static struct kobject *dev_kobj;
  struct kobject *sysfs_dev_char_kobj;
 Index: linux-2.6/drivers/pci/bus.c
 ===
 --- linux-2.6.orig/drivers/pci/bus.c
 +++ linux-2.6/drivers/pci/bus.c
 @@ -170,6 +170,10 @@ int pci_bus_add_device(struct pci_dev *d
  {
   int retval;
  
 + /* need to be called after bridge is scanned */
 + if (platform_notify_scan)
 + platform_notify_scan(dev-dev);
 +
   /*
* Can not put in pci_device_add yet because resources
* are not assigned yet for some devices.
 Index: linux-2.6/drivers/pci/pci-acpi.c
 ===
 --- linux-2.6.orig/drivers/pci/pci-acpi.c
 +++ linux-2.6/drivers/pci/pci-acpi.c
 @@ -307,6 +307,22 @@ static void pci_acpi_setup(struct device
   struct pci_dev *pci_dev = to_pci_dev(dev);
   acpi_handle handle = ACPI_HANDLE(dev);
   struct acpi_device *adev;
 +
 + if (acpi_bus_get_device(handle, adev) || !adev-wakeup.flags.valid)
 + return;
 +
 + device_set_wakeup_capable(dev, true);
 + acpi_pci_sleep_wake(pci_dev, false);
 +
 + pci_acpi_add_pm_notifier(adev, pci_dev);
 + if (adev-wakeup.flags.run_wake)
 + device_set_run_wake(dev, true);
 +}
 +
 +static void pci_acpi_setup_scan(struct device *dev)
 +{
 + struct pci_dev *pci_dev = to_pci_dev(dev);
 + acpi_handle handle = ACPI_HANDLE(dev);
   acpi_status status;
   acpi_handle dummy;
  
 @@ -326,16 +342,6 @@ static void pci_acpi_setup(struct device
   pci_dev-subordinate-number : pci_dev-bus-number;
   acpi_pci_irq_add_prt(handle, pci_domain_nr(pci_dev-bus), bus);

The _PRT describes motherboard interrupt wiring, which has nothing to
do with PCI bus numbers.  Our current drivers/acpi/pci_irq.c caches
the PCI bus number along with the _PRT, and I think that's a 

Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Yinghai Lu
On Mon, Feb 11, 2013 at 2:41 PM, Bjorn Helgaas bhelg...@google.com wrote:
 [+cc linux-acpi, linux-pci]

 The _PRT describes motherboard interrupt wiring, which has nothing to
 do with PCI bus numbers.  Our current drivers/acpi/pci_irq.c caches
 the PCI bus number along with the _PRT, and I think that's a mistake.

 The bus number binding means acpi_pci_irq_add_prt() has to happen
 after enumerating everything below a bridge, and it will prevent us
 from doing any bus number reassignment for hotplug.

 I think we should remove the bus numbers from the cached _PRT (or
 maybe even remove the _PRT caching completely).  When we enable a PCI
 device's IRQ, we should search up the PCI device tree looking for a
 _PRT associated with each node, and applying normal PCI bridge
 swizzling when we don't find a _PRT.  I think this can be done without
 using PCI bus numbers at all.


Agreed, will give it try to remove the _PRT caching completely.

Thanks

Yinghai
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-11 Thread Yinghai Lu
On Mon, Feb 11, 2013 at 4:08 PM, Yinghai Lu ying...@kernel.org wrote:
 On Mon, Feb 11, 2013 at 2:41 PM, Bjorn Helgaas bhelg...@google.com wrote:
 [+cc linux-acpi, linux-pci]

 The _PRT describes motherboard interrupt wiring, which has nothing to
 do with PCI bus numbers.  Our current drivers/acpi/pci_irq.c caches
 the PCI bus number along with the _PRT, and I think that's a mistake.

 The bus number binding means acpi_pci_irq_add_prt() has to happen
 after enumerating everything below a bridge, and it will prevent us
 from doing any bus number reassignment for hotplug.

 I think we should remove the bus numbers from the cached _PRT (or
 maybe even remove the _PRT caching completely).  When we enable a PCI
 device's IRQ, we should search up the PCI device tree looking for a
 _PRT associated with each node, and applying normal PCI bridge
 swizzling when we don't find a _PRT.  I think this can be done without
 using PCI bus numbers at all.


 Agreed, will give it try to remove the _PRT caching completely.


Please check attached patch that removes _PRT caching.

Thanks

Yinghai


move_setup_prt_down.patch
Description: Binary data


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-10 Thread Yinghai Lu
On Sun, Feb 10, 2013 at 6:23 AM, Peter Hurley pe...@hurleysoftware.com wrote:
 On Sat, 2013-02-09 at 22:14 -0500, Peter Hurley wrote:
 On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
  On Tue, 5 Feb 2013, Peter Hurley wrote:
 
   With -next-20130204:
  
   [   33.855570] irq 18: nobody cared (try booting with the irqpoll 
   option)
   [   33.855580] Pid: 0, comm: swapper/4 Not tainted 
   3.8.0-next-20130204-xeon #20130204
   [   33.855582] Call Trace:
   [   33.855585]  IRQ  [810f1076] __report_bad_irq+0x36/0xe0
   [   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
   [   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
   [   33.855610]  [810eed89] handle_irq_event_percpu+0xc9/0x260
   [   33.855614]  [810eef68] handle_irq_event+0x48/0x70
   [   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
   [   33.855624]  [810182f2] handle_irq+0x22/0x40
   [   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
   [   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
   [   33.855638]  EOI  [810f8e2a] ? 
   rcu_eqs_enter_common+0x4a/0x320
   [   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
   [   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
   [   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
   [   33.855658]  [816c0c0f] start_secondary+0x251/0x258
   [   33.855660] handlers:
   [   33.855664] [814f98a0] usb_hcd_irq
   [   33.855667] Disabling IRQ #18
  
   From earlier in the boot log:
   [1.297020] uhci_hcd :00:1d.2: setting latency timer to 64
   [1.297032] uhci_hcd :00:1d.2: UHCI Host Controller
   [1.297040] uhci_hcd :00:1d.2: new USB bus registered, assigned 
   bus number 4
   [1.297076] uhci_hcd :00:1d.2: irq 18, io base 0xff40
   [1.297213] hub 4-0:1.0: USB hub found
   [1.297221] hub 4-0:1.0: 2 ports detected
  
   lsusb:
   ...
   Bus 004 Device 002: ID 0764:0501 Cyber Power System, Inc. CP1500 AVR UPS
   Bus 004 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver

 [...]

  If the suggestion above doesn't work out, bisection may be the best way
  to find the answer.

 This bad irq bisected to:

 4f535093cf8f6da8cfda7c36c2c1ecd2e9586ee4 is the first bad commit
 commit 4f535093cf8f6da8cfda7c36c2c1ecd2e9586ee4
 Author: Yinghai Lu ying...@kernel.org
 Date:   Mon Jan 21 13:20:52 2013 -0800

 PCI: Put pci_dev in device tree as early as possible

 We want to put pci_dev structs in the device tree as soon as possible so
 for_each_pci_dev() iteration will not miss them, but driver attachment
 needs to be delayed until after pci_assign_unassigned_resources() to make
 sure all devices have resources assigned first.

 This patch moves device registering from pci_bus_add_devices() to
 pci_device_add(), which happens earlier, leaving driver attachment in
 pci_bus_add_devices().

 It also removes unattached child bus handling in pci_bus_add_devices().
 That's not needed because child bus via pci_add_new_bus() is already
 in parent bus children list.

 [bhelgaas: changelog]
 Signed-off-by: Yinghai Lu ying...@kernel.org
 Signed-off-by: Bjorn Helgaas bhelg...@google.com
 Acked-by: Rafael J. Wysocki rafael.j.wyso...@intel.com

 :04 04 0540c98d04d00de24b4e12fa750f6cd26c5addd2 
 2e24946cb7165a4028b7efb0a622271cc3990005 Mdrivers

 All is fine if I revert these 2 commits:

 40064ac PCI: Remove unused rc in virtfn_add_bus()
 4f53509 (HEAD, refs/bisect/bad) PCI: Put pci_dev in device tree as early as 
 possible

 Any ideas how these are causing the USB HCD core / hid-logitech-dj
 driver to drop interrupts?

 https://bugzilla.kernel.org/show_bug.cgi?id=53561

 Maybe this is some interaction with all the new ACPI code and fixes
 written in those 8 days.

interrupt routing seems get changed:
next:
   5:  0  0  0  0  0
0  0  0   IO-APIC-fasteoi   snd_ctxfi
  18:  99970 13 16 20  99940
13 13 16   IO-APIC-fasteoi   uhci_hcd:usb4
v3.8-rc7:
  18:424 15 11112420
16 18105   IO-APIC-fasteoi   uhci_hcd:usb4, snd_ctxfi

These messages in the bad dmesg log are interesting since PCI INT A is routed
on
irq 18 with the kernels that work.
[8.983246] pci :00:1e.0: can't derive routing for PCI INT A
[8.983600] snd_ctxfi :09:02.0: PCI INT A: no GSI - using ISA IRQ 5
...

acpi_pci_irq_add_prt() add wrong bus for that bridge, because that
that bridge is not scanned.

Will check if I can produce one patch for it.

Thanks

Yinghai
--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-10 Thread Yinghai Lu
On Sun, Feb 10, 2013 at 12:33 PM, Yinghai Lu ying...@kernel.org wrote:
 On Sun, Feb 10, 2013 at 6:23 AM, Peter Hurley pe...@hurleysoftware.com 
 wrote:
 On Sat, 2013-02-09 at 22:14 -0500, Peter Hurley wrote:
 On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
  On Tue, 5 Feb 2013, Peter Hurley wrote:
 
   With -next-20130204:
  
   [   33.855570] irq 18: nobody cared (try booting with the irqpoll 
   option)
   [   33.855580] Pid: 0, comm: swapper/4 Not tainted 
   3.8.0-next-20130204-xeon #20130204
   [   33.855582] Call Trace:
   [   33.855585]  IRQ  [810f1076] __report_bad_irq+0x36/0xe0
   [   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
   [   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
   [   33.855610]  [810eed89] handle_irq_event_percpu+0xc9/0x260
   [   33.855614]  [810eef68] handle_irq_event+0x48/0x70
   [   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
   [   33.855624]  [810182f2] handle_irq+0x22/0x40
   [   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
   [   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
   [   33.855638]  EOI  [810f8e2a] ? 
   rcu_eqs_enter_common+0x4a/0x320
   [   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
   [   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
   [   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
   [   33.855658]  [816c0c0f] start_secondary+0x251/0x258
   [   33.855660] handlers:
   [   33.855664] [814f98a0] usb_hcd_irq
   [   33.855667] Disabling IRQ #18
  
 https://bugzilla.kernel.org/show_bug.cgi?id=53561

 Maybe this is some interaction with all the new ACPI code and fixes
 written in those 8 days.

 interrupt routing seems get changed:
 next:
5:  0  0  0  0  0
 0  0  0   IO-APIC-fasteoi   snd_ctxfi
   18:  99970 13 16 20  99940
 13 13 16   IO-APIC-fasteoi   uhci_hcd:usb4
 v3.8-rc7:
   18:424 15 11112420
 16 18105   IO-APIC-fasteoi   uhci_hcd:usb4, snd_ctxfi

 These messages in the bad dmesg log are interesting since PCI INT A is routed
 on
 irq 18 with the kernels that work.
 [8.983246] pci :00:1e.0: can't derive routing for PCI INT A
 [8.983600] snd_ctxfi :09:02.0: PCI INT A: no GSI - using ISA IRQ 5
 ...

 acpi_pci_irq_add_prt() add wrong bus for that bridge, because that
 that bridge is not scanned.

 Will check if I can produce one patch for it.

Hi Peter,

Can you try attached debug patch?

Thanks

Yinghai


move_add_irq_prt_down.patch
Description: Binary data


[Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-09 Thread Peter Hurley
On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
 On Tue, 5 Feb 2013, Peter Hurley wrote:
 
  With -next-20130204:
  
  [   33.855570] irq 18: nobody cared (try booting with the irqpoll option)
  [   33.855580] Pid: 0, comm: swapper/4 Not tainted 3.8.0-next-20130204-xeon 
  #20130204
  [   33.855582] Call Trace:
  [   33.855585]  IRQ  [810f1076] __report_bad_irq+0x36/0xe0
  [   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
  [   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
  [   33.855610]  [810eed89] handle_irq_event_percpu+0xc9/0x260
  [   33.855614]  [810eef68] handle_irq_event+0x48/0x70
  [   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
  [   33.855624]  [810182f2] handle_irq+0x22/0x40
  [   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
  [   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
  [   33.855638]  EOI  [810f8e2a] ? 
  rcu_eqs_enter_common+0x4a/0x320
  [   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
  [   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
  [   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
  [   33.855658]  [816c0c0f] start_secondary+0x251/0x258
  [   33.855660] handlers:
  [   33.855664] [814f98a0] usb_hcd_irq
  [   33.855667] Disabling IRQ #18
  
  From earlier in the boot log:
  [1.297020] uhci_hcd :00:1d.2: setting latency timer to 64
  [1.297032] uhci_hcd :00:1d.2: UHCI Host Controller
  [1.297040] uhci_hcd :00:1d.2: new USB bus registered, assigned bus 
  number 4
  [1.297076] uhci_hcd :00:1d.2: irq 18, io base 0xff40
  [1.297213] hub 4-0:1.0: USB hub found
  [1.297221] hub 4-0:1.0: 2 ports detected
  
  lsusb:
  ...
  Bus 004 Device 002: ID 0764:0501 Cyber Power System, Inc. CP1500 AVR UPS
  Bus 004 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver

[...]

 If the suggestion above doesn't work out, bisection may be the best way
 to find the answer.

This bad irq bisected to:

4f535093cf8f6da8cfda7c36c2c1ecd2e9586ee4 is the first bad commit
commit 4f535093cf8f6da8cfda7c36c2c1ecd2e9586ee4
Author: Yinghai Lu ying...@kernel.org
Date:   Mon Jan 21 13:20:52 2013 -0800

PCI: Put pci_dev in device tree as early as possible

We want to put pci_dev structs in the device tree as soon as possible so
for_each_pci_dev() iteration will not miss them, but driver attachment
needs to be delayed until after pci_assign_unassigned_resources() to make
sure all devices have resources assigned first.

This patch moves device registering from pci_bus_add_devices() to
pci_device_add(), which happens earlier, leaving driver attachment in
pci_bus_add_devices().

It also removes unattached child bus handling in pci_bus_add_devices().
That's not needed because child bus via pci_add_new_bus() is already
in parent bus children list.

[bhelgaas: changelog]
Signed-off-by: Yinghai Lu ying...@kernel.org
Signed-off-by: Bjorn Helgaas bhelg...@google.com
Acked-by: Rafael J. Wysocki rafael.j.wyso...@intel.com

:04 04 0540c98d04d00de24b4e12fa750f6cd26c5addd2 
2e24946cb7165a4028b7efb0a622271cc3990005 M  drivers

All is fine if I revert these 2 commits:

40064ac PCI: Remove unused rc in virtfn_add_bus()
4f53509 (HEAD, refs/bisect/bad) PCI: Put pci_dev in device tree as early as 
possible

Any ideas how these are causing the USB HCD core / hid-logitech-dj
driver to drop interrupts?

Regards,
Peter Hurley

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-08 Thread Peter Hurley
On Tue, 2013-02-05 at 15:26 -0500, Alan Stern wrote:
 On Tue, 5 Feb 2013, Peter Hurley wrote:
 
  With -next-20130204:
  
  [   33.855570] irq 18: nobody cared (try booting with the irqpoll option)
  [   33.855580] Pid: 0, comm: swapper/4 Not tainted 3.8.0-next-20130204-xeon 
  #20130204
  [   33.855582] Call Trace:
  [   33.855585]  IRQ  [810f1076] __report_bad_irq+0x36/0xe0
  [   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
  [   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
  [   33.855610]  [810eed89] handle_irq_event_percpu+0xc9/0x260
  [   33.855614]  [810eef68] handle_irq_event+0x48/0x70
  [   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
  [   33.855624]  [810182f2] handle_irq+0x22/0x40
  [   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
  [   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
  [   33.855638]  EOI  [810f8e2a] ? 
  rcu_eqs_enter_common+0x4a/0x320
  [   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
  [   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
  [   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
  [   33.855658]  [816c0c0f] start_secondary+0x251/0x258
  [   33.855660] handlers:
  [   33.855664] [814f98a0] usb_hcd_irq
  [   33.855667] Disabling IRQ #18
  
  From earlier in the boot log:
  [1.297020] uhci_hcd :00:1d.2: setting latency timer to 64
  [1.297032] uhci_hcd :00:1d.2: UHCI Host Controller
  [1.297040] uhci_hcd :00:1d.2: new USB bus registered, assigned bus 
  number 4
  [1.297076] uhci_hcd :00:1d.2: irq 18, io base 0xff40
  [1.297213] hub 4-0:1.0: USB hub found
  [1.297221] hub 4-0:1.0: 2 ports detected
  
  lsusb:
  ...
  Bus 004 Device 002: ID 0764:0501 Cyber Power System, Inc. CP1500 AVR UPS
  Bus 004 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
  ...
  
  Didn't have this problem with -next-20120125. One of these commits, maybe?
  next/drivers/usb/core$ git log --oneline next-20130125..next-20130204 -- *
  2c2e865 usb: forbid memory allocation with I/O during bus reset
  e9121a8 Merge remote-tracking branch 'usb/usb-next'
  3b2ab2b Revert usb: Register usb port's acpi power resources
  da0aa71 USB: add usb_hcd_{start,end}_port_resume
  192fef1 usb: enable usb port device's async suspend.
  f6cced1 usb: expose usb port's pm qos flags to user space
  ad493e5 usb: add usb port auto power off mechanism
  971fcd4 usb: add runtime pm support for usb port device
  88bb965 usb: Register usb port's acpi power resources
  54a3ac0 usb: Using correct way to clear usb3.0 device's remote wakeup 
  feature.
 
 None of those commits seems likely to have caused the problem.  The 
 most likely is da0aa71, combined with one you didn't mention:
 
 840008bb USB: UHCI: notify usbcore about port resumes
 
 If you revert these two commits, does that make any difference?  What
 if you revert all of these commits?

None of these commits are directly causing this. I tested Greg's usb
master and usb-next and both run fine for me.

  I didn't see any changes in the drivers/hid/hid-logitech-dj.c or usbhid
  but maybe it's doing something wrong anyway?
  
  I'll open a bugzilla if a bunch more info is necessary.
 
 If the suggestion above doesn't work out, bisection may be the best way
 to find the answer.

Any pointers on how to one of) build a linear history for -next, get
bisect to work on an integration tree, or third option I haven't thought
of?

Thanks,
Peter Hurley


--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-05 Thread Peter Hurley
With -next-20130204:

[   33.855570] irq 18: nobody cared (try booting with the irqpoll option)
[   33.855580] Pid: 0, comm: swapper/4 Not tainted 3.8.0-next-20130204-xeon 
#20130204
[   33.855582] Call Trace:
[   33.855585]  IRQ  [810f1076] __report_bad_irq+0x36/0xe0
[   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
[   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855610]  [810eed89] handle_irq_event_percpu+0xc9/0x260
[   33.855614]  [810eef68] handle_irq_event+0x48/0x70
[   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
[   33.855624]  [810182f2] handle_irq+0x22/0x40
[   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
[   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
[   33.855638]  EOI  [810f8e2a] ? rcu_eqs_enter_common+0x4a/0x320
[   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
[   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
[   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
[   33.855658]  [816c0c0f] start_secondary+0x251/0x258
[   33.855660] handlers:
[   33.855664] [814f98a0] usb_hcd_irq
[   33.855667] Disabling IRQ #18

From earlier in the boot log:
[1.297020] uhci_hcd :00:1d.2: setting latency timer to 64
[1.297032] uhci_hcd :00:1d.2: UHCI Host Controller
[1.297040] uhci_hcd :00:1d.2: new USB bus registered, assigned bus 
number 4
[1.297076] uhci_hcd :00:1d.2: irq 18, io base 0xff40
[1.297213] hub 4-0:1.0: USB hub found
[1.297221] hub 4-0:1.0: 2 ports detected

lsusb:
...
Bus 004 Device 002: ID 0764:0501 Cyber Power System, Inc. CP1500 AVR UPS
Bus 004 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
...

Didn't have this problem with -next-20120125. One of these commits, maybe?
next/drivers/usb/core$ git log --oneline next-20130125..next-20130204 -- *
2c2e865 usb: forbid memory allocation with I/O during bus reset
e9121a8 Merge remote-tracking branch 'usb/usb-next'
3b2ab2b Revert usb: Register usb port's acpi power resources
da0aa71 USB: add usb_hcd_{start,end}_port_resume
192fef1 usb: enable usb port device's async suspend.
f6cced1 usb: expose usb port's pm qos flags to user space
ad493e5 usb: add usb port auto power off mechanism
971fcd4 usb: add runtime pm support for usb port device
88bb965 usb: Register usb port's acpi power resources
54a3ac0 usb: Using correct way to clear usb3.0 device's remote wakeup feature.

I didn't see any changes in the drivers/hid/hid-logitech-dj.c or usbhid
but maybe it's doing something wrong anyway?

I'll open a bugzilla if a bunch more info is necessary.

Regards,
Peter Hurley



--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [-next-20130204] usb/hcd: irq 18: nobody cared

2013-02-05 Thread Alan Stern
On Tue, 5 Feb 2013, Peter Hurley wrote:

 With -next-20130204:
 
 [   33.855570] irq 18: nobody cared (try booting with the irqpoll option)
 [   33.855580] Pid: 0, comm: swapper/4 Not tainted 3.8.0-next-20130204-xeon 
 #20130204
 [   33.855582] Call Trace:
 [   33.855585]  IRQ  [810f1076] __report_bad_irq+0x36/0xe0
 [   33.855600]  [810f152a] note_interrupt+0x1aa/0x200
 [   33.855606]  [8101edf2] ? mwait_idle+0x82/0x1b0
 [   33.855610]  [810eed89] handle_irq_event_percpu+0xc9/0x260
 [   33.855614]  [810eef68] handle_irq_event+0x48/0x70
 [   33.855618]  [810f20ba] handle_fasteoi_irq+0x5a/0x100
 [   33.855624]  [810182f2] handle_irq+0x22/0x40
 [   33.855630]  [816e2a9a] do_IRQ+0x5a/0xd0
 [   33.855636]  [816d97ad] common_interrupt+0x6d/0x6d
 [   33.855638]  EOI  [810f8e2a] ? rcu_eqs_enter_common+0x4a/0x320
 [   33.855646]  [8101edf2] ? mwait_idle+0x82/0x1b0
 [   33.855649]  [8101ed99] ? mwait_idle+0x29/0x1b0
 [   33.855653]  [8101f8a6] cpu_idle+0x116/0x130
 [   33.855658]  [816c0c0f] start_secondary+0x251/0x258
 [   33.855660] handlers:
 [   33.855664] [814f98a0] usb_hcd_irq
 [   33.855667] Disabling IRQ #18
 
 From earlier in the boot log:
 [1.297020] uhci_hcd :00:1d.2: setting latency timer to 64
 [1.297032] uhci_hcd :00:1d.2: UHCI Host Controller
 [1.297040] uhci_hcd :00:1d.2: new USB bus registered, assigned bus 
 number 4
 [1.297076] uhci_hcd :00:1d.2: irq 18, io base 0xff40
 [1.297213] hub 4-0:1.0: USB hub found
 [1.297221] hub 4-0:1.0: 2 ports detected
 
 lsusb:
 ...
 Bus 004 Device 002: ID 0764:0501 Cyber Power System, Inc. CP1500 AVR UPS
 Bus 004 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
 ...
 
 Didn't have this problem with -next-20120125. One of these commits, maybe?
 next/drivers/usb/core$ git log --oneline next-20130125..next-20130204 -- *
 2c2e865 usb: forbid memory allocation with I/O during bus reset
 e9121a8 Merge remote-tracking branch 'usb/usb-next'
 3b2ab2b Revert usb: Register usb port's acpi power resources
 da0aa71 USB: add usb_hcd_{start,end}_port_resume
 192fef1 usb: enable usb port device's async suspend.
 f6cced1 usb: expose usb port's pm qos flags to user space
 ad493e5 usb: add usb port auto power off mechanism
 971fcd4 usb: add runtime pm support for usb port device
 88bb965 usb: Register usb port's acpi power resources
 54a3ac0 usb: Using correct way to clear usb3.0 device's remote wakeup feature.

None of those commits seems likely to have caused the problem.  The 
most likely is da0aa71, combined with one you didn't mention:

840008bb USB: UHCI: notify usbcore about port resumes

If you revert these two commits, does that make any difference?  What
if you revert all of these commits?

 I didn't see any changes in the drivers/hid/hid-logitech-dj.c or usbhid
 but maybe it's doing something wrong anyway?
 
 I'll open a bugzilla if a bunch more info is necessary.

If the suggestion above doesn't work out, bisection may be the best way
to find the answer.

Alan Stern

--
To unsubscribe from this list: send the line unsubscribe linux-usb in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html