* Re: ipr boot failure caused by MSI (2.6.30-rc1+)
[not found] <1242926159.3007.5.camel@localhost.localdomain>
@ 2009-05-21 18:47 ` Brian King
2009-05-21 19:51 ` James Bottomley
0 siblings, 1 reply; 5+ messages in thread
From: Brian King @ 2009-05-21 18:47 UTC (permalink / raw)
To: James Bottomley; +Cc: Brian King, ppc-dev, Wayne Boyer, linux-scsi
cc'ing linuxppc-dev...
-Brian
James Bottomley wrote:
> Kernels after 2.6.30-rc1 stopped booting on my powerstation. The ipr
> just times out and refuses to probe devices. If I let it drop into the
> initramfs system, this is what the interrupts shows:
>
> (initramfs) cat /proc/interrupts
> CPU0 CPU1 CPU2 CPU3
> 16: 20 10 13 11 MPIC Level pata_amd
> 20: 0 0 0 0 MPIC Level ohci_hcd:usb1, ohci_hcd:usb2
> 21: 0 0 0 0 MPIC-U3MSI Edge ipr
> 68: 37 37 48 37 MPIC Edge serial
> 251: 10 71 69 72 MPIC Edge ipi call function
> 252: 1555 1779 1372 1155 MPIC Edge ipi reschedule
> 253: 0 0 0 0 MPIC Edge ipi call function single
> 254: 0 0 0 0 MPIC Edge ipi debugger
> BAD: 416
>
> So you see the IPR is the only device not receiving them.
>
> I can fix the boot hang by reverting
>
> commit 5a9ef25b14d39b8413364df12cb8d9bb7a673a32
> Author: Wayne Boyer <wayneb@linux.vnet.ibm.com>
> Date: Fri Jan 23 09:17:35 2009 -0800
>
> [SCSI] ipr: add MSI support
>
> The system in question is:
>
> SYSTEM INFORMATION
> Processor = PowerPC,970MP @ 2500 MHz
> I/O Bridge = U4 (4.4)
> SMP Size = 4 (#0 #1 #2 #3)
> Boot-Date = 2009-04-21 17:13:36
> Memory = 2 GB of RAM @ 666 MHz
> Board Type = Bimini (7047191/0000000/1)
> MFG Date = 1608
> Part No. = 10N8748
> FRU No. = 10N7182
> FRU Serial = YL30W8106038
> UUID = 00000000000000000000000000000000
> Flashside = 1 (temporary)
> Version = HEAD
> Build Date = 12-04-2008 16:13
>
> James
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Brian King
Linux on Power Virtualization
IBM Linux Technology Center
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ipr boot failure caused by MSI (2.6.30-rc1+)
2009-05-21 18:47 ` ipr boot failure caused by MSI (2.6.30-rc1+) Brian King
@ 2009-05-21 19:51 ` James Bottomley
2009-05-22 16:23 ` James Bottomley
0 siblings, 1 reply; 5+ messages in thread
From: James Bottomley @ 2009-05-21 19:51 UTC (permalink / raw)
To: Brian King; +Cc: ppc-dev, Wayne Boyer, linux-scsi
On Thu, 2009-05-21 at 13:47 -0500, Brian King wrote:
> cc'ing linuxppc-dev...
>
> -Brian
>
>
> James Bottomley wrote:
> > Kernels after 2.6.30-rc1 stopped booting on my powerstation. The ipr
> > just times out and refuses to probe devices. If I let it drop into the
> > initramfs system, this is what the interrupts shows:
> >
> > (initramfs) cat /proc/interrupts
> > CPU0 CPU1 CPU2 CPU3
> > 16: 20 10 13 11 MPIC Level pata_amd
> > 20: 0 0 0 0 MPIC Level ohci_hcd:usb1, ohci_hcd:usb2
> > 21: 0 0 0 0 MPIC-U3MSI Edge ipr
> > 68: 37 37 48 37 MPIC Edge serial
> > 251: 10 71 69 72 MPIC Edge ipi call function
> > 252: 1555 1779 1372 1155 MPIC Edge ipi reschedule
> > 253: 0 0 0 0 MPIC Edge ipi call function single
> > 254: 0 0 0 0 MPIC Edge ipi debugger
> > BAD: 416
> >
> > So you see the IPR is the only device not receiving them.
> >
> > I can fix the boot hang by reverting
> >
> > commit 5a9ef25b14d39b8413364df12cb8d9bb7a673a32
> > Author: Wayne Boyer <wayneb@linux.vnet.ibm.com>
> > Date: Fri Jan 23 09:17:35 2009 -0800
> >
> > [SCSI] ipr: add MSI support
> >
> > The system in question is:
> >
> > SYSTEM INFORMATION
> > Processor = PowerPC,970MP @ 2500 MHz
> > I/O Bridge = U4 (4.4)
> > SMP Size = 4 (#0 #1 #2 #3)
> > Boot-Date = 2009-04-21 17:13:36
> > Memory = 2 GB of RAM @ 666 MHz
> > Board Type = Bimini (7047191/0000000/1)
> > MFG Date = 1608
> > Part No. = 10N8748
> > FRU No. = 10N7182
> > FRU Serial = YL30W8106038
> > UUID = 00000000000000000000000000000000
> > Flashside = 1 (temporary)
> > Version = HEAD
> > Build Date = 12-04-2008 16:13
OK, so as an update, I booted to the initrd and inserted the network
modules, which are also MSI enabled and this is what I get:
(initramfs) cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3
16: 14 11 11 18 MPIC Level pata_amd
20: 0 0 0 0 MPIC Level ohci_hcd:usb1, ohci_hcd:usb2
21: 0 0 0 0 MPIC-U3MSI Edge ipr
22: 1 0 1 0 MPIC-U3MSI Edge eth0
23: 0 2 1 0 MPIC-U3MSI Edge eth1
68: 193 166 113 177 MPIC Edge serial
251: 16 65 71 70 MPIC Edge ipi call function
252: 1574 1804 1346 1289 MPIC Edge ipi reschedule
253: 0 0 0 0 MPIC Edge ipi call function single
254: 0 0 0 0 MPIC Edge ipi debugger
BAD: 1866
So clearly the MSI interrupts to the network cards are working and it
looks like just a local problem with the ipr rather than a platform
problem with MSI.
James
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ipr boot failure caused by MSI (2.6.30-rc1+)
2009-05-21 19:51 ` James Bottomley
@ 2009-05-22 16:23 ` James Bottomley
2009-05-29 22:01 ` Brian King
0 siblings, 1 reply; 5+ messages in thread
From: James Bottomley @ 2009-05-22 16:23 UTC (permalink / raw)
To: Brian King; +Cc: ppc-dev, Wayne Boyer, linux-scsi
On Thu, 2009-05-21 at 14:51 -0500, James Bottomley wrote:
> On Thu, 2009-05-21 at 13:47 -0500, Brian King wrote:
> > cc'ing linuxppc-dev...
> >
> > -Brian
> >
> >
> > James Bottomley wrote:
> > > Kernels after 2.6.30-rc1 stopped booting on my powerstation. The ipr
> > > just times out and refuses to probe devices. If I let it drop into the
> > > initramfs system, this is what the interrupts shows:
> > >
> > > (initramfs) cat /proc/interrupts
> > > CPU0 CPU1 CPU2 CPU3
> > > 16: 20 10 13 11 MPIC Level pata_amd
> > > 20: 0 0 0 0 MPIC Level ohci_hcd:usb1, ohci_hcd:usb2
> > > 21: 0 0 0 0 MPIC-U3MSI Edge ipr
> > > 68: 37 37 48 37 MPIC Edge serial
> > > 251: 10 71 69 72 MPIC Edge ipi call function
> > > 252: 1555 1779 1372 1155 MPIC Edge ipi reschedule
> > > 253: 0 0 0 0 MPIC Edge ipi call function single
> > > 254: 0 0 0 0 MPIC Edge ipi debugger
> > > BAD: 416
> > >
> > > So you see the IPR is the only device not receiving them.
> > >
> > > I can fix the boot hang by reverting
> > >
> > > commit 5a9ef25b14d39b8413364df12cb8d9bb7a673a32
> > > Author: Wayne Boyer <wayneb@linux.vnet.ibm.com>
> > > Date: Fri Jan 23 09:17:35 2009 -0800
> > >
> > > [SCSI] ipr: add MSI support
> > >
> > > The system in question is:
> > >
> > > SYSTEM INFORMATION
> > > Processor = PowerPC,970MP @ 2500 MHz
> > > I/O Bridge = U4 (4.4)
> > > SMP Size = 4 (#0 #1 #2 #3)
> > > Boot-Date = 2009-04-21 17:13:36
> > > Memory = 2 GB of RAM @ 666 MHz
> > > Board Type = Bimini (7047191/0000000/1)
> > > MFG Date = 1608
> > > Part No. = 10N8748
> > > FRU No. = 10N7182
> > > FRU Serial = YL30W8106038
> > > UUID = 00000000000000000000000000000000
> > > Flashside = 1 (temporary)
> > > Version = HEAD
> > > Build Date = 12-04-2008 16:13
>
> OK, so as an update, I booted to the initrd and inserted the network
> modules, which are also MSI enabled and this is what I get:
>
> (initramfs) cat /proc/interrupts
> CPU0 CPU1 CPU2 CPU3
> 16: 14 11 11 18 MPIC Level pata_amd
> 20: 0 0 0 0 MPIC Level ohci_hcd:usb1, ohci_hcd:usb2
> 21: 0 0 0 0 MPIC-U3MSI Edge ipr
> 22: 1 0 1 0 MPIC-U3MSI Edge eth0
> 23: 0 2 1 0 MPIC-U3MSI Edge eth1
> 68: 193 166 113 177 MPIC Edge serial
> 251: 16 65 71 70 MPIC Edge ipi call function
> 252: 1574 1804 1346 1289 MPIC Edge ipi reschedule
> 253: 0 0 0 0 MPIC Edge ipi call function single
> 254: 0 0 0 0 MPIC Edge ipi debugger
> BAD: 1866
>
> So clearly the MSI interrupts to the network cards are working and it
> looks like just a local problem with the ipr rather than a platform
> problem with MSI.
I saw the quirk fix for this go by:
http://ozlabs.org/pipermail/linuxppc-dev/2009-May/072436.html
Is there an easy way to trigger an interrupt on this device? Preferably
in ipr_probe_ioa() so we can at least print out if the interrupts are
misrouted and fall back from MSI to normal using the PCI infrastructure?
James
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ipr boot failure caused by MSI (2.6.30-rc1+)
2009-05-22 16:23 ` James Bottomley
@ 2009-05-29 22:01 ` Brian King
2009-06-11 3:23 ` Wayne Boyer
0 siblings, 1 reply; 5+ messages in thread
From: Brian King @ 2009-05-29 22:01 UTC (permalink / raw)
To: James Bottomley; +Cc: ppc-dev, Wayne Boyer, linux-scsi
James Bottomley wrote:
> On Thu, 2009-05-21 at 14:51 -0500, James Bottomley wrote:
>> On Thu, 2009-05-21 at 13:47 -0500, Brian King wrote:
>>> cc'ing linuxppc-dev...
>>>
>>> -Brian
>>>
>>>
>>> James Bottomley wrote:
>>>> Kernels after 2.6.30-rc1 stopped booting on my powerstation. The ipr
>>>> just times out and refuses to probe devices. If I let it drop into the
>>>> initramfs system, this is what the interrupts shows:
>>>>
>>>> (initramfs) cat /proc/interrupts
>>>> CPU0 CPU1 CPU2 CPU3
>>>> 16: 20 10 13 11 MPIC Level pata_amd
>>>> 20: 0 0 0 0 MPIC Level ohci_hcd:usb1, ohci_hcd:usb2
>>>> 21: 0 0 0 0 MPIC-U3MSI Edge ipr
>>>> 68: 37 37 48 37 MPIC Edge serial
>>>> 251: 10 71 69 72 MPIC Edge ipi call function
>>>> 252: 1555 1779 1372 1155 MPIC Edge ipi reschedule
>>>> 253: 0 0 0 0 MPIC Edge ipi call function single
>>>> 254: 0 0 0 0 MPIC Edge ipi debugger
>>>> BAD: 416
>>>>
>>>> So you see the IPR is the only device not receiving them.
>>>>
>>>> I can fix the boot hang by reverting
>>>>
>>>> commit 5a9ef25b14d39b8413364df12cb8d9bb7a673a32
>>>> Author: Wayne Boyer <wayneb@linux.vnet.ibm.com>
>>>> Date: Fri Jan 23 09:17:35 2009 -0800
>>>>
>>>> [SCSI] ipr: add MSI support
>>>>
>>>> The system in question is:
>>>>
>>>> SYSTEM INFORMATION
>>>> Processor = PowerPC,970MP @ 2500 MHz
>>>> I/O Bridge = U4 (4.4)
>>>> SMP Size = 4 (#0 #1 #2 #3)
>>>> Boot-Date = 2009-04-21 17:13:36
>>>> Memory = 2 GB of RAM @ 666 MHz
>>>> Board Type = Bimini (7047191/0000000/1)
>>>> MFG Date = 1608
>>>> Part No. = 10N8748
>>>> FRU No. = 10N7182
>>>> FRU Serial = YL30W8106038
>>>> UUID = 00000000000000000000000000000000
>>>> Flashside = 1 (temporary)
>>>> Version = HEAD
>>>> Build Date = 12-04-2008 16:13
>> OK, so as an update, I booted to the initrd and inserted the network
>> modules, which are also MSI enabled and this is what I get:
>>
>> (initramfs) cat /proc/interrupts
>> CPU0 CPU1 CPU2 CPU3
>> 16: 14 11 11 18 MPIC Level pata_amd
>> 20: 0 0 0 0 MPIC Level ohci_hcd:usb1, ohci_hcd:usb2
>> 21: 0 0 0 0 MPIC-U3MSI Edge ipr
>> 22: 1 0 1 0 MPIC-U3MSI Edge eth0
>> 23: 0 2 1 0 MPIC-U3MSI Edge eth1
>> 68: 193 166 113 177 MPIC Edge serial
>> 251: 16 65 71 70 MPIC Edge ipi call function
>> 252: 1574 1804 1346 1289 MPIC Edge ipi reschedule
>> 253: 0 0 0 0 MPIC Edge ipi call function single
>> 254: 0 0 0 0 MPIC Edge ipi debugger
>> BAD: 1866
>>
>> So clearly the MSI interrupts to the network cards are working and it
>> looks like just a local problem with the ipr rather than a platform
>> problem with MSI.
>
> I saw the quirk fix for this go by:
>
> http://ozlabs.org/pipermail/linuxppc-dev/2009-May/072436.html
>
> Is there an easy way to trigger an interrupt on this device? Preferably
> in ipr_probe_ioa() so we can at least print out if the interrupts are
> misrouted and fall back from MSI to normal using the PCI infrastructure?
I just talked with one of the adapter firmware developers and it sounds like
this might be possible. I'll work with Wayne on coding something up to try.
-Brian
--
Brian King
Linux on Power Virtualization
IBM Linux Technology Center
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ipr boot failure caused by MSI (2.6.30-rc1+)
2009-05-29 22:01 ` Brian King
@ 2009-06-11 3:23 ` Wayne Boyer
0 siblings, 0 replies; 5+ messages in thread
From: Wayne Boyer @ 2009-06-11 3:23 UTC (permalink / raw)
To: Brian King; +Cc: James Bottomley, ppc-dev, linux-scsi
Brian King wrote:
> James Bottomley wrote:
>> On Thu, 2009-05-21 at 14:51 -0500, James Bottomley wrote:
>> I saw the quirk fix for this go by:
>>
>> http://ozlabs.org/pipermail/linuxppc-dev/2009-May/072436.html
>>
>> Is there an easy way to trigger an interrupt on this device? Preferably
>> in ipr_probe_ioa() so we can at least print out if the interrupts are
>> misrouted and fall back from MSI to normal using the PCI infrastructure?
>
> I just talked with one of the adapter firmware developers and it sounds like
> this might be possible. I'll work with Wayne on coding something up to try.
>
> -Brian
>
I've put together some code to trigger the test MSI and either fall back to
LSI if it isn't detected, or continue on using MSI. In the routine that
does the setup and test I have this call to request_irq:
rc = request_irq(pdev->irq, ipr_test_intr, 0, IPR_NAME, ioa_cfg);
Note that the flags value is '0'. The question came up as to whether or
not this value should really be IRQF_SHARED. Given that this is for an MSI
interrupt and MSI interrupts are not shared by definition, IRQF_SHARED did
not seem correct.
What should the flags value be in this case?
--
Wayne Boyer
IBM - Beaverton, Oregon
LTC S/W Development - eServerIO
(503) 578-5236, T/L 775-5236
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-06-11 3:23 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1242926159.3007.5.camel@localhost.localdomain>
2009-05-21 18:47 ` ipr boot failure caused by MSI (2.6.30-rc1+) Brian King
2009-05-21 19:51 ` James Bottomley
2009-05-22 16:23 ` James Bottomley
2009-05-29 22:01 ` Brian King
2009-06-11 3:23 ` Wayne Boyer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).