* RE: [PATCH 1/2] powerpc: Move opcode definitions from kvm/emulate.c to asm/ppc-opcode.h
From: Jia Hongtao-B38951 @ 2013-04-23 6:36 UTC (permalink / raw)
To: Michael Ellerman; +Cc: Wood Scott-B07421, linuxppc-dev@lists.ozlabs.org
In-Reply-To: <20130423052951.GB20902@concordia>
> -----Original Message-----
> From: Linuxppc-dev [mailto:linuxppc-dev-
> bounces+b38951=3Dfreescale.com@lists.ozlabs.org] On Behalf Of Michael
> Ellerman
> Sent: Tuesday, April 23, 2013 1:30 PM
> To: Jia Hongtao-B38951
> Cc: Wood Scott-B07421; linuxppc-dev@lists.ozlabs.org
> Subject: Re: [PATCH 1/2] powerpc: Move opcode definitions from
> kvm/emulate.c to asm/ppc-opcode.h
>=20
> On Tue, Apr 23, 2013 at 10:39:35AM +0800, Jia Hongtao wrote:
> > Opcode and xopcode are useful definitions not just for KVM. Move these
> > definitions to asm/ppc-opcode.h for public use.
>=20
> Agreed. Though nearly everything else in ppc-opcode.h uses PPC_INST_FOO,
> or at least PPC_FOO, any reason not to update these to match?
>=20
> cheers
These definitions are firstly used by KVM defined like OP_31_XOP_TRAP.
Two ways to extract these definitions for public use:
1. Like this patch did. For keeping the KVM code that using these
definitions unchanged we do not update them to match.
2. Move these definitions to another .h file like my last patch did:
http://patchwork.ozlabs.org/patch/235646/
You can see the comments there.
Thanks.
-Hongtao
^ permalink raw reply
* Re: [PATCH -V6 05/27] powerpc: New hugepage directory format
From: Paul Mackerras @ 2013-04-23 7:01 UTC (permalink / raw)
To: Aneesh Kumar K.V; +Cc: linuxppc-dev, David Gibson
In-Reply-To: <1366624861-24948-6-git-send-email-aneesh.kumar@linux.vnet.ibm.com>
On Mon, Apr 22, 2013 at 03:30:39PM +0530, Aneesh Kumar K.V wrote:
> Instead of storing shift value in hugepd pointer we use mmu_psize_def index
> so that we can fit all the supported hugepage size in 4 bits
That works, but does mean that we have to scan the mmu_psize_defs[]
array to work out the encoding for a particular page size. Instead,
we could use the fact that all large page sizes are powers of 4, as
are all supported page sizes on embedded processors. So we could
encode using page_code = (page_order - 12) / 2, where page_order is
the log base 2 of the page size, and that lets us represent all power
of 4 page sizes between 2^12 (4kB) and 2^42 bytes (4TB).
Paul.
^ permalink raw reply
* [PATCH v2] powerpc/fsl-pci:fix incorrect iounmap pci hose->private_data
From: Roy Zang @ 2013-04-23 15:18 UTC (permalink / raw)
To: linuxppc-dev; +Cc: Yuanquan Chen
pci hose->private_data will be used by other function, for example,
fsl_pcie_check_link(), so do not iounmap it.
fix the kerenl crash on T4240:
Unable to handle kernel paging request for data at address
0x8000080080060f14
Faulting instruction address: 0xc000000000032554
Oops: Kernel access of bad area, sig: 11 [#1]
SMP NR_CPUS=24 T4240 QDS
Modules linked in:
NIP: c000000000032554 LR: c00000000003254c CTR: c00000000001e5c0
REGS: c000000179143440 TRAP: 0300 Not tainted
(3.8.8-rt2-00754-g951f064-dirt)
MSR: 0000000080029000 <CE,EE,ME> CR: 24adbe22 XER: 00000000
SOFTE: 0
DEAR: 8000080080060f14, ESR: 0000000000000000
TASK = c00000017913d2c0[1] 'swapper/0' THREAD: c000000179140000 CPU: 2
GPR00: c00000000003254c c0000001791436c0 c000000000ae2998
0000000000000027
GPR04: 0000000000000000 00000000000005a5 0000000000000000
0000000000000002
GPR08: 3030303038303038 c000000000a2d4d0 c000000000aebeb8
c000000000af2998
GPR12: 0000000024adbe22 c00000000fffa800 c000000000001be0
0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000
0000000000000000
GPR20: 0000000000000000 0000000000000000 0000000000000000
c0000000009ddf70
GPR24: c0000000009e8d40 c000000000af2998 c000000000b1529c
c000000179143b40
GPR28: c0000001799b4000 c000000179143c00 8000080080060000
c000000000727ec8
NIP [c000000000032554] .fsl_pcie_check_link+0x104/0x150
LR [c00000000003254c] .fsl_pcie_check_link+0xfc/0x150
Call Trace:
[c0000001791436c0] [c00000000003254c] .fsl_pcie_check_link+0xfc/0x150
(unreliab)
[c000000179143a30] [c0000000000325d4]
.fsl_indirect_read_config+0x34/0xb0
[c000000179143ad0] [c0000000002c7ee8]
.pci_bus_read_config_byte+0x88/0xd0
[c000000179143b90] [c0000000009c0528] .pci_apply_final_quirks+0x9c/0x18c
[c000000179143c40] [c00000000000142c] .do_one_initcall+0x5c/0x1f0
[c000000179143cf0] [c0000000009a0bb4] .kernel_init_freeable+0x180/0x264
[c000000179143db0] [c000000000001bfc] .kernel_init+0x1c/0x420
[c000000179143e30] [c0000000000008b4] .ret_from_kernel_thread+0x64/0xb0
Instruction dump:
60000000 4bffffa0 ebc301d0 3fe2ffc4 3c62ffe0 3bff5530 38638a78 7fe4fb78
7fc5f378 486ea77d 60000000 7c0004ac <801e0f14> 0c000000 4c00012c
3c62ffe0
---[ end trace f841fbc03c9d2e1b ]---
Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
Rebooting in 180 seconds..
Signed-off-by: Yuanquan Chen <Yuanquan.Chen@freescale.com>
Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
---
based on Kumar's next branch
v2:v1, fix the exit issue
arch/powerpc/sysdev/fsl_pci.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/arch/powerpc/sysdev/fsl_pci.c b/arch/powerpc/sysdev/fsl_pci.c
index f823304..cffe7ed 100644
--- a/arch/powerpc/sysdev/fsl_pci.c
+++ b/arch/powerpc/sysdev/fsl_pci.c
@@ -244,12 +244,12 @@ static void setup_pci_atmu(struct pci_controller *hose)
if (paddr_hi == paddr_lo) {
pr_err("%s: No outbound window space\n", name);
- goto out;
+ return;
}
if (paddr_lo == 0) {
pr_err("%s: No space for inbound window\n", name);
- goto out;
+ return;
}
/* setup PCSRBAR/PEXCSRBAR */
@@ -395,9 +395,6 @@ static void setup_pci_atmu(struct pci_controller *hose)
pr_info("%s: DMA window size is 0x%llx\n", name,
(u64)hose->dma_window_size);
}
-
-out:
- iounmap(pci);
}
static void __init setup_pci_cmd(struct pci_controller *hose)
--
1.7.9.5
^ permalink raw reply related
* Re: [PATCH -V6 05/27] powerpc: New hugepage directory format
From: Aneesh Kumar K.V @ 2013-04-23 8:42 UTC (permalink / raw)
To: Paul Mackerras; +Cc: linuxppc-dev, David Gibson
In-Reply-To: <20130423070103.GB30092@iris.ozlabs.ibm.com>
Paul Mackerras <paulus@samba.org> writes:
> On Mon, Apr 22, 2013 at 03:30:39PM +0530, Aneesh Kumar K.V wrote:
>
>> Instead of storing shift value in hugepd pointer we use mmu_psize_def index
>> so that we can fit all the supported hugepage size in 4 bits
>
> That works, but does mean that we have to scan the mmu_psize_defs[]
> array to work out the encoding for a particular page size.
We do the scan only when allocating hugepgd. While walking it is only
mmu_psize_defs dereference. Yes, that could possibly have a performance
impact, but having a well defined way to map page shift to a smaller
index and using the same method all the place is nice. I will try to
measure the impact and switch to the below method if needed.
> Instead,
> we could use the fact that all large page sizes are powers of 4, as
> are all supported page sizes on embedded processors. So we could
> encode using page_code = (page_order - 12) / 2, where page_order is
> the log base 2 of the page size, and that lets us represent all power
> of 4 page sizes between 2^12 (4kB) and 2^42 bytes (4TB).
I guess i can add this as an addon patch on the top of the series if the
current patch series is going in to Benh's tree ?
-aneesh
^ permalink raw reply
* Re: PROBLEM: Only 2 of 4 cores used on IBM Cell blades and no threads shown in spufs
From: Michael Ellerman @ 2013-04-23 9:12 UTC (permalink / raw)
To: Dennis Schridde; +Cc: cbe-oss-dev, linuxppc-dev, arnd
In-Reply-To: <1470334.YUWOQ37ijW@ernie>
On Mon, Apr 22, 2013 at 06:44:13PM +0200, Dennis Schridde wrote:
> Hello!
Hi Dennis,
> [1.] One line summary of the problem:
> Only 2 of 4 cores used on IBM Cell blades and no threads shown in spufs
>
>
> [2.] Full description of the problem/report:
> On my IBM Cell blades, only 2 out of the 4 CPU cores are being used, even when
> several threads are running.
Yes you're right, I see that too.
For me it is fixed by applying the following patch, it should be in v3.10:
http://patchwork.ozlabs.org/patch/230103/
Maybe you can try it.
> Also /spu is always empty, despite the SPUs being
Yes I see that too.
> For testing, I started an instance of cellminer with --ppe 2 --spe 16 (2
> threads on the PPEs, 16 on the SPEs) and htop reports two CPU cores being used
> at 100% and two others at 0%, while 4 threads are running (each at 50% CPU
> utilisation -> they share a core).
Does your cellminer actually work? ie. does it run OK?
I am using a fractal benchmark I had lying around, and it appears to
work, and runs fast enough that it must be running on the SPUs (I think).
So it sounds like we have some weirdness with stuff not appearing in
/spu, but spu programs are still able to run. Which is odd to say the
least.
cheers
^ permalink raw reply
* Re: [PATCH v2] powerpc/fsl-pci:fix incorrect iounmap pci hose->private_data
From: Kevin Hao @ 2013-04-23 9:13 UTC (permalink / raw)
To: Roy Zang; +Cc: Yuanquan Chen, linuxppc-dev
In-Reply-To: <1366730283-14606-1-git-send-email-tie-fei.zang@freescale.com>
[-- Attachment #1: Type: text/plain, Size: 3981 bytes --]
On Tue, Apr 23, 2013 at 11:18:03PM +0800, Roy Zang wrote:
> pci hose->private_data will be used by other function, for example,
> fsl_pcie_check_link(), so do not iounmap it.
I already sent out a same patch ten days ago. :-)
http://patchwork.ozlabs.org/patch/236293/
Thanks,
Kevin
>
> fix the kerenl crash on T4240:
>
> Unable to handle kernel paging request for data at address
> 0x8000080080060f14
> Faulting instruction address: 0xc000000000032554
> Oops: Kernel access of bad area, sig: 11 [#1]
> SMP NR_CPUS=24 T4240 QDS
> Modules linked in:
> NIP: c000000000032554 LR: c00000000003254c CTR: c00000000001e5c0
> REGS: c000000179143440 TRAP: 0300 Not tainted
> (3.8.8-rt2-00754-g951f064-dirt)
> MSR: 0000000080029000 <CE,EE,ME> CR: 24adbe22 XER: 00000000
> SOFTE: 0
> DEAR: 8000080080060f14, ESR: 0000000000000000
> TASK = c00000017913d2c0[1] 'swapper/0' THREAD: c000000179140000 CPU: 2
> GPR00: c00000000003254c c0000001791436c0 c000000000ae2998
> 0000000000000027
> GPR04: 0000000000000000 00000000000005a5 0000000000000000
> 0000000000000002
> GPR08: 3030303038303038 c000000000a2d4d0 c000000000aebeb8
> c000000000af2998
> GPR12: 0000000024adbe22 c00000000fffa800 c000000000001be0
> 0000000000000000
> GPR16: 0000000000000000 0000000000000000 0000000000000000
> 0000000000000000
> GPR20: 0000000000000000 0000000000000000 0000000000000000
> c0000000009ddf70
> GPR24: c0000000009e8d40 c000000000af2998 c000000000b1529c
> c000000179143b40
> GPR28: c0000001799b4000 c000000179143c00 8000080080060000
> c000000000727ec8
> NIP [c000000000032554] .fsl_pcie_check_link+0x104/0x150
> LR [c00000000003254c] .fsl_pcie_check_link+0xfc/0x150
> Call Trace:
> [c0000001791436c0] [c00000000003254c] .fsl_pcie_check_link+0xfc/0x150
> (unreliab)
> [c000000179143a30] [c0000000000325d4]
> .fsl_indirect_read_config+0x34/0xb0
> [c000000179143ad0] [c0000000002c7ee8]
> .pci_bus_read_config_byte+0x88/0xd0
> [c000000179143b90] [c0000000009c0528] .pci_apply_final_quirks+0x9c/0x18c
> [c000000179143c40] [c00000000000142c] .do_one_initcall+0x5c/0x1f0
> [c000000179143cf0] [c0000000009a0bb4] .kernel_init_freeable+0x180/0x264
> [c000000179143db0] [c000000000001bfc] .kernel_init+0x1c/0x420
> [c000000179143e30] [c0000000000008b4] .ret_from_kernel_thread+0x64/0xb0
> Instruction dump:
> 60000000 4bffffa0 ebc301d0 3fe2ffc4 3c62ffe0 3bff5530 38638a78 7fe4fb78
> 7fc5f378 486ea77d 60000000 7c0004ac <801e0f14> 0c000000 4c00012c
> 3c62ffe0
> ---[ end trace f841fbc03c9d2e1b ]---
>
> Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
>
> Rebooting in 180 seconds..
>
> Signed-off-by: Yuanquan Chen <Yuanquan.Chen@freescale.com>
> Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
> ---
> based on Kumar's next branch
> v2:v1, fix the exit issue
>
> arch/powerpc/sysdev/fsl_pci.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/arch/powerpc/sysdev/fsl_pci.c b/arch/powerpc/sysdev/fsl_pci.c
> index f823304..cffe7ed 100644
> --- a/arch/powerpc/sysdev/fsl_pci.c
> +++ b/arch/powerpc/sysdev/fsl_pci.c
> @@ -244,12 +244,12 @@ static void setup_pci_atmu(struct pci_controller *hose)
>
> if (paddr_hi == paddr_lo) {
> pr_err("%s: No outbound window space\n", name);
> - goto out;
> + return;
> }
>
> if (paddr_lo == 0) {
> pr_err("%s: No space for inbound window\n", name);
> - goto out;
> + return;
> }
>
> /* setup PCSRBAR/PEXCSRBAR */
> @@ -395,9 +395,6 @@ static void setup_pci_atmu(struct pci_controller *hose)
> pr_info("%s: DMA window size is 0x%llx\n", name,
> (u64)hose->dma_window_size);
> }
> -
> -out:
> - iounmap(pci);
> }
>
> static void __init setup_pci_cmd(struct pci_controller *hose)
> --
> 1.7.9.5
>
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/linuxppc-dev
[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]
^ permalink raw reply
* Re: [PATCH] powerpc/pci: fix PCI-e devices rescan issue on powerpc platform
From: Chen Yuanquan-B41889 @ 2013-04-23 9:26 UTC (permalink / raw)
To: Bjorn Helgaas
Cc: Yuanquan Chen, Hiroo Matsumoto, linux-pci, bhelgaas, linuxppc-dev
In-Reply-To: <51652C20.2060105@freescale.com>
On 04/10/2013 05:08 PM, Chen Yuanquan-B41889 wrote:
> On 04/03/2013 12:08 PM, Chen Yuanquan-B41889 wrote:
>> On 04/02/2013 11:10 PM, Benjamin Herrenschmidt wrote:
>>> On Tue, 2013-04-02 at 19:26 +0800, Yuanquan Chen wrote:
>>>> So we move the DMA & IRQ initialization code from
>>>> pcibios_setup_devices() and
>>>> construct a new function pcibios_enable_device. We call this
>>>> function in
>>>> pcibios_enable_device, which will be called by PCI-e rescan code.
>>>> At the
>>>> meanwhile, we avoid the the impact on cardbus. I also validate this
>>>> patch with
>>>> silicon's PCIe-sata which encounters the IRQ issue.
>>> My worry is that this delays the setup of the IRQ and DMA to very
>>> late in
>>> the process, possibly after the quirks have been run, which can be
>>> problematic. We have platform hooks that might try to "fixup" specific
>>> IRQ issues on some platforms (especially macs) which I worry might fail
>>> if delayed that way (I may be wrong, I don't have a specific case in
>>> mind,
>>> but I would feel better if we kept setting up these things earlier).
>>>
>>> Cheers,
>>> Ben.
>>>
>>
>> Hi Ben,
>>
>> I have checked all the quirk functions which are declared in kernel
>> arch/powerpc
>> with command :
>> grep DECLARE_PCI_FIXUP_ `find arch/powerpc/ *.[hc]`
>>
>> All the quirk function are defined as DECLARE_PCI_FIXUP_EARLY ,
>> DECLARE_PCI_FIXUP_HEADER
>> and DECLARE_PCI_FIXUP_FINAL, except quirk_uli5229() in
>> arch/powerpc/platforms/fsl_uli1575.c, which is
>> defined both as DECLARE_PCI_FIXUP_HEADER and
>> DECLARE_PCI_FIXUP_RESUME. So the quirk_uli5229()
>> will also be called with PCI pm module. The quirk functions defined
>> as xxx_FINAL, HEADER and EARLY,
>> will be called in the path:
>>
>> pci_scan_child_bus()->pci_scan_slot()->pci_scan_single_device()->pci_scan_device()->pci_setup_device()
>>
>> ->pci_device_add()
>>
>> the pci_scan_slot() is called earlier than pcibios_fixup_bus() even
>> for the first scan of PCI-e bus, so the quirk
>> functions on powerpc platform is called before the DMA & IRQ fixup.
>> So in reality, the delay of DMA & IRQ fixup
>> won't affect anything.
>>
>> Regards,
>> Yuanquan
>>
>
> Hi Ben,
>
> How do you think about this? Do you have any comment?
>
> Thanks,
> Yuanquan
>
Hi Bjorn,
There's no response from Ben. How do you think about this patch? What's
your advice?
Thanks,
Yuanquan
>>>
>>>
>>>
>>
>
>
>
^ permalink raw reply
* Re: [PATCH v2] powerpc/fsl-pci:fix incorrect iounmap pci hose->private_data
From: Roy Zang @ 2013-04-23 17:33 UTC (permalink / raw)
To: Kevin Hao; +Cc: Yuanquan Chen, linuxppc-dev
In-Reply-To: <20130423091327.GA23644@pek-khao-d1.corp.ad.wrs.com>
On 04/23/2013 05:13 PM, Kevin Hao wrote:
> On Tue, Apr 23, 2013 at 11:18:03PM +0800, Roy Zang wrote:
>> pci hose->private_data will be used by other function, for example,
>> fsl_pcie_check_link(), so do not iounmap it.
> I already sent out a same patch ten days ago. :-)
>
> http://patchwork.ozlabs.org/patch/236293/
>
> Thanks,
> Kevin
>
I do not notice it. That is good :-)
Kumar,
You can pick up the post from Kevin.
Thanks.
Roy
^ permalink raw reply
* Re: [PATCH] powerpc/fsl-pci: don't unmap the PCI SoC controller registers in setup_pci_atmu
From: Roy Zang @ 2013-04-23 17:37 UTC (permalink / raw)
To: Kevin Hao; +Cc: linuxppc
In-Reply-To: <1365837281-27002-1-git-send-email-haokexin@gmail.com>
On 04/13/2013 03:14 PM, Kevin Hao wrote:
> In patch 34642bbb (powerpc/fsl-pci: Keep PCI SoC controller registers in
> pci_controller) we choose to keep the map of the PCI SoC controller
> registers. But we missed to delete the unmap in setup_pci_atmu
> function. This will cause the following call trace once we access
> the PCI SoC controller registers later.
>
> Unable to handle kernel paging request for data at address 0x8000080080040f14
> Faulting instruction address: 0xc00000000002ea58
> Oops: Kernel access of bad area, sig: 11 [#1]
> SMP NR_CPUS=24 T4240 QDS
> Modules linked in:
> NIP: c00000000002ea58 LR: c00000000002eaf4 CTR: c00000000002eac0
> REGS: c00000017e10b4a0 TRAP: 0300 Not tainted (3.9.0-rc1-00052-gfa3529f-dirty)
> MSR: 0000000080029000 <CE,EE,ME> CR: 28adbe22 XER: 00000000
> SOFTE: 0
> DEAR: 8000080080040f14, ESR: 0000000000000000
> TASK = c00000017e100000[1] 'swapper/0' THREAD: c00000017e108000 CPU: 2
> GPR00: 0000000000000000 c00000017e10b720 c0000000009928d8 c00000017e578e00
> GPR04: 0000000000000000 000000000000000c 0000000000000001 c00000017e10bb40
> GPR08: 0000000000000000 8000080080040000 0000000000000000 0000000000000016
> GPR12: 0000000088adbe22 c00000000fffa800 c000000000001ba0 0000000000000000
> GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
> GPR20: 0000000000000000 0000000000000000 0000000000000000 c0000000008a5b70
> GPR24: c0000000008af938 c0000000009a28d8 c0000000009bb5dc c00000017e10bb40
> GPR28: c00000017e32a400 c00000017e10bc00 c00000017e32a400 c00000017e578e00
> NIP [c00000000002ea58] .fsl_pcie_check_link+0x88/0xf0
> LR [c00000000002eaf4] .fsl_indirect_read_config+0x34/0xb0
> Call Trace:
> [c00000017e10b720] [c00000017e10b7a0] 0xc00000017e10b7a0 (unreliable)
> [c00000017e10ba30] [c00000000002eaf4] .fsl_indirect_read_config+0x34/0xb0
> [c00000017e10bad0] [c00000000033aa08] .pci_bus_read_config_byte+0x88/0xd0
> [c00000017e10bb90] [c00000000088d708] .pci_apply_final_quirks+0x9c/0x18c
> [c00000017e10bc40] [c0000000000013dc] .do_one_initcall+0x5c/0x1f0
> [c00000017e10bcf0] [c00000000086ebac] .kernel_init_freeable+0x180/0x26c
> [c00000017e10bdb0] [c000000000001bbc] .kernel_init+0x1c/0x460
> [c00000017e10be30] [c000000000000880] .ret_from_kernel_thread+0x64/0xe4
> Instruction dump:
> 38210310 2b800015 4fdde842 7c600026 5463fffe e8010010 7c0803a6 4e800020
> 60000000 60000000 e92301d0 7c0004ac <80690f14> 0c030000 4c00012c 38210310
> ---[ end trace 7a8fe0cbccb7d992 ]---
>
> Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
>
> Signed-off-by: Kevin Hao <haokexin@gmail.com>
> ---
>
acked.
thanks.
Roy
^ permalink raw reply
* Re: [linuxppc-release] [PATCH v2 01/15] powerpc/85xx: cache operations for Freescale SoCs based on BOOK3E
From: Zhao Chenhui @ 2013-04-23 9:53 UTC (permalink / raw)
To: Kumar Gala, Scott Wood; +Cc: linuxppc-dev, linux-kernel
In-Reply-To: <1366368468-29143-1-git-send-email-chenhui.zhao@freescale.com>
Hi Kumar, Scott,
Do you have any comments on this set of patches?
Best Regards,
-Chenhui
On Fri, Apr 19, 2013 at 06:47:34PM +0800, Zhao Chenhui wrote:
> These cache operations support Freescale SoCs based on BOOK3E.
> Move L1 cache operations to fsl_booke_cache.S in order to maintain
> easily. And, add cache operations for backside L2 cache and platform cache.
>
> The backside L2 cache appears on e500mc and e5500 core. The platform cache
> supported by this patch is L2 Look-Aside Cache, which appears on SoCs
> with e500v1/e500v2 core, such as MPC8572, P1020, etc.
>
> Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com>
> Signed-off-by: Li Yang <leoli@freescale.com>
> ---
> arch/powerpc/include/asm/cacheflush.h | 8 ++
> arch/powerpc/kernel/Makefile | 1 +
> arch/powerpc/kernel/fsl_booke_cache.S | 210 +++++++++++++++++++++++++++++++++
> arch/powerpc/kernel/head_fsl_booke.S | 74 ------------
> 4 files changed, 219 insertions(+), 74 deletions(-)
> create mode 100644 arch/powerpc/kernel/fsl_booke_cache.S
>
^ permalink raw reply
* Re: [PATCH] powerpc/pci: fix PCI-e devices rescan issue on powerpc platform
From: Benjamin Herrenschmidt @ 2013-04-23 10:05 UTC (permalink / raw)
To: Chen Yuanquan-B41889
Cc: Bjorn Helgaas, Yuanquan Chen, Hiroo Matsumoto, linuxppc-dev,
linux-pci
In-Reply-To: <517653D8.8000205@freescale.com>
On Tue, 2013-04-23 at 17:26 +0800, Chen Yuanquan-B41889 wrote:
> There's no response from Ben. How do you think about this patch?
> What's
> your advice?
Didn't Michael put your patch in -next while I was on vacation ? I'll
check tomorrow.
Cheers,
Ben.
^ permalink raw reply
* RE: [PATCH v3 1/4] powerpc/mpic: add irq_set_wake support
From: Wang Dongsheng-B40534 @ 2013-04-23 10:10 UTC (permalink / raw)
To: galak@kernel.crashing.org
Cc: Wood Scott-B07421, linuxppc-dev@lists.ozlabs.org
In-Reply-To: <1366155021.23030.24@snotra>
Hi Kumar,
Could you apply these patches?
Thanks.
[v3,1/4] powerpc/mpic: add irq_set_wake support
http://patchwork.ozlabs.org/patch/234934/
[v3,2/4] powerpc/mpic: add global timer support
http://patchwork.ozlabs.org/patch/234935/
[v3,3/4] powerpc/mpic: create mpic subsystem object
http://patchwork.ozlabs.org/patch/234936/
[v3,4/4] powerpc/fsl: add MPIC timer wakeup support
http://patchwork.ozlabs.org/patch/234937/
> -----Original Message-----
> From: Wood Scott-B07421
> Sent: Wednesday, April 17, 2013 7:30 AM
> To: Wang Dongsheng-B40534
> Cc: Wood Scott-B07421; linuxppc-dev@lists.ozlabs.org;
> galak@kernel.crashing.org
> Subject: Re: [PATCH v3 1/4] powerpc/mpic: add irq_set_wake support
>=20
> ACK
>=20
> -Scott
>=20
> On 04/16/2013 05:58:52 AM, Wang Dongsheng-B40534 wrote:
> > Hi scott,
> >
> > Could you ACK these patches?
> >
> > [PATCH v3 2/4] powerpc/mpic: add global timer support
> > [PATCH v3 3/4] powerpc/mpic: create mpic subsystem object
> > [PATCH v3 4/4] powerpc/fsl: add MPIC timer wakeup support
> >
> > Thanks.
> >
^ permalink raw reply
* Re: [PATCH] powerpc/pci: fix PCI-e devices rescan issue on powerpc platform
From: Chen Yuanquan-B41889 @ 2013-04-23 10:51 UTC (permalink / raw)
To: Benjamin Herrenschmidt
Cc: Bjorn Helgaas, Yuanquan Chen, Hiroo Matsumoto, linuxppc-dev,
linux-pci
In-Reply-To: <1366711520.2886.24.camel@pasglop>
On 04/23/2013 06:05 PM, Benjamin Herrenschmidt wrote:
> On Tue, 2013-04-23 at 17:26 +0800, Chen Yuanquan-B41889 wrote:
>> There's no response from Ben. How do you think about this patch?
>> What's
>> your advice?
> Didn't Michael put your patch in -next while I was on vacation ? I'll
> check tomorrow.
>
> Cheers,
> Ben.
>
Hi Ben,
I have checked the latest kernel(v3.9-rc7). This patch has been applied.
Thanks,
Yuanquan
>
>
>
^ permalink raw reply
* [PATCH v2 0/5] powerpc/powernv: PHB3 Support
From: Gavin Shan @ 2013-04-23 11:03 UTC (permalink / raw)
To: linuxppc-dev; +Cc: Gavin Shan
The patchset includes minimal support for PHB3. Initially, flag "PNV_PHB_IODA2"
is introduced to differentiate IODA2 compliant PHB3 from other types of PHBs and
do initialization accordingly for PHB3. Besides, variable IODA2 tables reside in
system memory and we allocate them in kernel, then pass them to f/w and enable
the corresponding BARs through OPAL API. The P/Q bits of IVE should be handled
on PHB3 by software and the patchset intends to cover that as well.
NOTE: The first patch comes from Ben.
v1 -> v2
* Introduce CONFIG_POWERNV_MSI, which is similiar to CONFIG_PSERIES_MSI
* Enable CONFIG_PPC_MSI_BITMAP while selecting CONFIG_POWERNV_MSI
* Eleminate (struct pnv_phb::msi_count) since it has been removed in
linux-next
* Replace (CONFIG_PPC_POWERNV && CONFIG_PCI_MSI) with CONFIG_POWERNV_MSI
* Move declaration of pnv_pci_msi_eoi() to asm/xics.h
* Remove unnecessary "#ifdef ... #endif" in icp-native.c
* Add support to invalidate TCE
* Let the IODA2 table allocated by firmware and kernel to retrieve them
through device-tree
---
arch/powerpc/include/asm/iommu.h | 1 +
arch/powerpc/include/asm/opal.h | 5 +-
arch/powerpc/include/asm/xics.h | 3 +
arch/powerpc/platforms/powernv/Kconfig | 5 +
arch/powerpc/platforms/powernv/pci-ioda.c | 209 +++++++++++++++++++++++----
arch/powerpc/platforms/powernv/pci-p5ioc2.c | 2 +
arch/powerpc/platforms/powernv/pci.c | 74 ++++------
arch/powerpc/platforms/powernv/pci.h | 24 +++-
arch/powerpc/sysdev/Kconfig | 1 +
arch/powerpc/sysdev/xics/icp-native.c | 27 ++++-
10 files changed, 267 insertions(+), 84 deletions(-)
Thanks,
Gavin
^ permalink raw reply
* [PATCH 4/5] powerpc/powernv: Patch MSI EOI handler on P8
From: Gavin Shan @ 2013-04-23 11:03 UTC (permalink / raw)
To: linuxppc-dev; +Cc: Gavin Shan
In-Reply-To: <1366715034-24594-1-git-send-email-shangw@linux.vnet.ibm.com>
The EOI handler of MSI/MSI-X interrupts for P8 (PHB3) need additional
steps to handle the P/Q bits in IVE before EOIing the corresponding
interrupt. The patch changes the EOI handler to cover that.
Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com>
---
arch/powerpc/include/asm/xics.h | 3 ++
arch/powerpc/platforms/powernv/pci-ioda.c | 33 +++++++++++++++++++++++++++++
arch/powerpc/platforms/powernv/pci.c | 19 ++++++++++++++++
arch/powerpc/platforms/powernv/pci.h | 1 +
arch/powerpc/sysdev/xics/icp-native.c | 27 ++++++++++++++++++++++-
5 files changed, 82 insertions(+), 1 deletions(-)
diff --git a/arch/powerpc/include/asm/xics.h b/arch/powerpc/include/asm/xics.h
index 4ae9a09..c4b364b 100644
--- a/arch/powerpc/include/asm/xics.h
+++ b/arch/powerpc/include/asm/xics.h
@@ -72,6 +72,9 @@ extern int ics_opal_init(void);
static inline int ics_opal_init(void) { return -ENODEV; }
#endif
+/* Extra EOI handler for PHB3 */
+extern int pnv_pci_msi_eoi(unsigned int hw_irq);
+
/* ICS instance, hooked up to chip_data of an irq */
struct ics {
struct list_head link;
diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c
index 0c15870..8ec77a7 100644
--- a/arch/powerpc/platforms/powernv/pci-ioda.c
+++ b/arch/powerpc/platforms/powernv/pci-ioda.c
@@ -646,6 +646,37 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev,
return 0;
}
+static int pnv_pci_ioda_msi_eoi(struct pnv_phb *phb, unsigned int hw_irq)
+{
+ u8 p_bit = 1, q_bit = 1;
+ long rc;
+
+ while (p_bit || q_bit) {
+ rc = opal_pci_get_xive_reissue(phb->opal_id,
+ hw_irq - phb->msi_base, &p_bit, &q_bit);
+ if (rc) {
+ pr_warning("%s: Failed to get P/Q bits of IRQ#%d "
+ "on PHB#%d, rc=%ld\n", __func__, hw_irq,
+ phb->hose->global_number, rc);
+ return -EIO;
+ }
+ if (!p_bit && !q_bit)
+ break;
+
+ rc = opal_pci_set_xive_reissue(phb->opal_id,
+ hw_irq - phb->msi_base, p_bit, q_bit);
+ if (rc) {
+ pr_warning("%s: Failed to clear P/Q (%01d/%01d) of "
+ "IRQ#%d on PHB#%d, rc=%ld\n", __func__,
+ p_bit, q_bit, hw_irq,
+ phb->hose->global_number, rc);
+ return -EIO;
+ }
+ }
+
+ return 0;
+}
+
static void pnv_pci_init_ioda_msis(struct pnv_phb *phb)
{
unsigned int count;
@@ -667,6 +698,8 @@ static void pnv_pci_init_ioda_msis(struct pnv_phb *phb)
}
phb->msi_setup = pnv_pci_ioda_msi_setup;
+ if (phb->type == PNV_PHB_IODA2)
+ phb->msi_eoi = pnv_pci_ioda_msi_eoi;
phb->msi32_support = 1;
pr_info(" Allocated bitmap for %d MSIs (base IRQ 0x%x)\n",
count, phb->msi_base);
diff --git a/arch/powerpc/platforms/powernv/pci.c b/arch/powerpc/platforms/powernv/pci.c
index 83514dc..1a03f42 100644
--- a/arch/powerpc/platforms/powernv/pci.c
+++ b/arch/powerpc/platforms/powernv/pci.c
@@ -115,6 +115,25 @@ static void pnv_teardown_msi_irqs(struct pci_dev *pdev)
irq_dispose_mapping(entry->irq);
}
}
+
+int pnv_pci_msi_eoi(unsigned int hw_irq)
+{
+ struct pci_controller *hose, *tmp;
+ struct pnv_phb *phb = NULL;
+
+ list_for_each_entry_safe(hose, tmp, &hose_list, list_node) {
+ phb = hose->private_data;
+ if (hw_irq >= phb->msi_base &&
+ hw_irq < phb->msi_base + phb->msi_bmp.irq_count) {
+ if (!phb->msi_eoi)
+ return -EEXIST;
+ return phb->msi_eoi(phb, hw_irq);
+ }
+ }
+
+ /* For LSI interrupts, we needn't do it */
+ return 0;
+}
#endif /* CONFIG_PCI_MSI */
static void pnv_pci_dump_p7ioc_diag_data(struct pnv_phb *phb)
diff --git a/arch/powerpc/platforms/powernv/pci.h b/arch/powerpc/platforms/powernv/pci.h
index c048c29..c6690b3 100644
--- a/arch/powerpc/platforms/powernv/pci.h
+++ b/arch/powerpc/platforms/powernv/pci.h
@@ -81,6 +81,7 @@ struct pnv_phb {
int (*msi_setup)(struct pnv_phb *phb, struct pci_dev *dev,
unsigned int hwirq, unsigned int is_64,
struct msi_msg *msg);
+ int (*msi_eoi)(struct pnv_phb *phb, unsigned int hw_irq);
void (*dma_dev_setup)(struct pnv_phb *phb, struct pci_dev *pdev);
void (*fixup_phb)(struct pci_controller *hose);
u32 (*bdfn_to_pe)(struct pnv_phb *phb, struct pci_bus *bus, u32 devfn);
diff --git a/arch/powerpc/sysdev/xics/icp-native.c b/arch/powerpc/sysdev/xics/icp-native.c
index 48861d3..38dd2b1 100644
--- a/arch/powerpc/sysdev/xics/icp-native.c
+++ b/arch/powerpc/sysdev/xics/icp-native.c
@@ -89,6 +89,22 @@ static void icp_native_eoi(struct irq_data *d)
icp_native_set_xirr((xics_pop_cppr() << 24) | hw_irq);
}
+static void icp_p8_native_eoi(struct irq_data *d)
+{
+ unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d);
+ int ret;
+
+ /* Let firmware handle P/Q bits */
+ if (hw_irq != XICS_IPI) {
+ ret = pnv_pci_msi_eoi(hw_irq);
+ WARN_ON_ONCE(ret);
+ }
+
+ /* EOI on ICP */
+ iosync();
+ icp_native_set_xirr((xics_pop_cppr() << 24) | hw_irq);
+}
+
static void icp_native_teardown_cpu(void)
{
int cpu = smp_processor_id();
@@ -264,7 +280,7 @@ static int __init icp_native_init_one_node(struct device_node *np,
return 0;
}
-static const struct icp_ops icp_native_ops = {
+static struct icp_ops icp_native_ops = {
.get_irq = icp_native_get_irq,
.eoi = icp_native_eoi,
.set_priority = icp_native_set_cpu_priority,
@@ -296,6 +312,15 @@ int __init icp_native_init(void)
if (found == 0)
return -ENODEV;
+ /* Change the EOI handler for P8 */
+#ifdef CONFIG_POWERNV_MSI
+ np = of_find_compatible_node(NULL, NULL, "ibm,power8-xicp");
+ if (np) {
+ icp_native_ops.eoi = icp_p8_native_eoi;
+ of_node_put(np);
+ }
+#endif
+
icp_ops = &icp_native_ops;
return 0;
--
1.7.5.4
^ permalink raw reply related
* [PATCH 2/5] powerpc/powernv: Retrieve IODA2 tables explicitly
From: Gavin Shan @ 2013-04-23 11:03 UTC (permalink / raw)
To: linuxppc-dev; +Cc: Gavin Shan
In-Reply-To: <1366715034-24594-1-git-send-email-shangw@linux.vnet.ibm.com>
The PHB3, which is compatible with IODA2, have lots of tables (RTT/
PETLV/PEST/IVT/RBA) in system memory and have corresponding BARs to
trace the system memory address. The tables have been allocated in
firmware and exported through device-tree. The patch retrieves the
tables explicitly.
Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com>
---
arch/powerpc/include/asm/opal.h | 5 +--
arch/powerpc/platforms/powernv/pci-ioda.c | 35 +++++++++++++++++++++++++++++
arch/powerpc/platforms/powernv/pci.h | 13 ++++++++++
3 files changed, 50 insertions(+), 3 deletions(-)
diff --git a/arch/powerpc/include/asm/opal.h b/arch/powerpc/include/asm/opal.h
index a4b28f1..0af7ba0 100644
--- a/arch/powerpc/include/asm/opal.h
+++ b/arch/powerpc/include/asm/opal.h
@@ -491,9 +491,8 @@ int64_t opal_pci_map_pe_mmio_window(uint64_t phb_id, uint16_t pe_number,
uint16_t window_type, uint16_t window_num,
uint16_t segment_num);
int64_t opal_pci_set_phb_table_memory(uint64_t phb_id, uint64_t rtt_addr,
- uint64_t ivt_addr, uint64_t ivt_len,
- uint64_t reject_array_addr,
- uint64_t peltv_addr);
+ uint64_t peltv_addr, uint64_t pest_addr,
+ uint64_t ivt_addr, uint64_t rba_addr);
int64_t opal_pci_set_pe(uint64_t phb_id, uint64_t pe_number, uint64_t bus_dev_func,
uint8_t bus_compare, uint8_t dev_compare, uint8_t func_compare,
uint8_t pe_action);
diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c
index 3d4e958..0c15870 100644
--- a/arch/powerpc/platforms/powernv/pci-ioda.c
+++ b/arch/powerpc/platforms/powernv/pci-ioda.c
@@ -852,6 +852,23 @@ static u32 pnv_ioda_bdfn_to_pe(struct pnv_phb *phb, struct pci_bus *bus,
return phb->ioda.pe_rmap[(bus->number << 8) | devfn];
}
+static void __init pnv_pci_get_ioda2_table(struct device_node *np,
+ const char *name,
+ void **table,
+ unsigned int *len)
+{
+ const u32 *prop32;
+ u64 base;
+
+ prop32 = of_get_property(np, name, NULL);
+ if (prop32) {
+ base = be32_to_cpup(prop32);
+ base = base << 32 | be32_to_cpup(prop32 + 1);
+ *table = __va(base);
+ *len = be32_to_cpup(prop32 + 2);
+ }
+}
+
void __init pnv_pci_init_ioda_phb(struct device_node *np, int ioda_type)
{
struct pci_controller *hose;
@@ -998,6 +1015,24 @@ void __init pnv_pci_init_ioda_phb(struct device_node *np, int ioda_type)
ppc_md.pcibios_window_alignment = pnv_pci_window_alignment;
pci_add_flags(PCI_REASSIGN_ALL_RSRC);
+ /* Retrieve variable IODA2 tables */
+ if (ioda_type == PNV_PHB_IODA2) {
+ pnv_pci_get_ioda2_table(np, "ibm,opal-rtt-table",
+ &phb->ioda.tbl_rtt, &phb->ioda.rtt_len);
+ pnv_pci_get_ioda2_table(np, "ibm,opal-peltv-table",
+ &phb->ioda.tbl_peltv, &phb->ioda.peltv_len);
+ pnv_pci_get_ioda2_table(np, "ibm,opal-pest-table",
+ &phb->ioda.tbl_pest, &phb->ioda.pest_len);
+ pnv_pci_get_ioda2_table(np, "ibm,opal-ivt-table",
+ &phb->ioda.tbl_ivt, &phb->ioda.ivt_len);
+ pnv_pci_get_ioda2_table(np, "ibm,opal-rba-table",
+ &phb->ioda.tbl_rba, &phb->ioda.rba_len);
+ /* Get IVE stride */
+ prop32 = of_get_property(np, "ibm,opal-ive-stride", NULL);
+ if (prop32)
+ phb->ioda.ive_stride = be32_to_cpup(prop32);
+ }
+
/* Reset IODA tables to a clean state */
rc = opal_pci_reset(phb_id, OPAL_PCI_IODA_TABLE_RESET, OPAL_ASSERT_RESET);
if (rc)
diff --git a/arch/powerpc/platforms/powernv/pci.h b/arch/powerpc/platforms/powernv/pci.h
index f6314d6..c048c29 100644
--- a/arch/powerpc/platforms/powernv/pci.h
+++ b/arch/powerpc/platforms/powernv/pci.h
@@ -100,6 +100,19 @@ struct pnv_phb {
unsigned int io_segsize;
unsigned int io_pci_base;
+ /* Variable tables for IODA2 */
+ void *tbl_rtt;
+ void *tbl_peltv;
+ void *tbl_pest;
+ void *tbl_ivt;
+ void *tbl_rba;
+ unsigned int ive_stride;
+ unsigned int rtt_len;
+ unsigned int peltv_len;
+ unsigned int pest_len;
+ unsigned int ivt_len;
+ unsigned int rba_len;
+
/* PE allocation bitmap */
unsigned long *pe_alloc;
--
1.7.5.4
^ permalink raw reply related
* [PATCH 1/5] powerpc/powernv: Supports PHB3
From: Gavin Shan @ 2013-04-23 11:03 UTC (permalink / raw)
To: linuxppc-dev; +Cc: Gavin Shan
In-Reply-To: <1366715034-24594-1-git-send-email-shangw@linux.vnet.ibm.com>
The patch intends to initialize PHB3 during system boot stage. The
flag "PNV_PHB_MODEL_PHB3" is introduced to differentiate IODA2
compatible PHB3 from other types of PHBs.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
arch/powerpc/platforms/powernv/pci-ioda.c | 62 +++++++++++++++--------------
arch/powerpc/platforms/powernv/pci.c | 7 +++-
arch/powerpc/platforms/powernv/pci.h | 8 ++-
3 files changed, 43 insertions(+), 34 deletions(-)
diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c
index a5c5f15..3d4e958 100644
--- a/arch/powerpc/platforms/powernv/pci-ioda.c
+++ b/arch/powerpc/platforms/powernv/pci-ioda.c
@@ -852,18 +852,19 @@ static u32 pnv_ioda_bdfn_to_pe(struct pnv_phb *phb, struct pci_bus *bus,
return phb->ioda.pe_rmap[(bus->number << 8) | devfn];
}
-void __init pnv_pci_init_ioda1_phb(struct device_node *np)
+void __init pnv_pci_init_ioda_phb(struct device_node *np, int ioda_type)
{
struct pci_controller *hose;
static int primary = 1;
struct pnv_phb *phb;
unsigned long size, m32map_off, iomap_off, pemap_off;
const u64 *prop64;
+ const u32 *prop32;
u64 phb_id;
void *aux;
long rc;
- pr_info(" Initializing IODA OPAL PHB %s\n", np->full_name);
+ pr_info(" Initializing IODA%d OPAL PHB %s\n", ioda_type, np->full_name);
prop64 = of_get_property(np, "ibm,opal-phbid", NULL);
if (!prop64) {
@@ -890,37 +891,34 @@ void __init pnv_pci_init_ioda1_phb(struct device_node *np)
hose->last_busno = 0xff;
hose->private_data = phb;
phb->opal_id = phb_id;
- phb->type = PNV_PHB_IODA1;
+ phb->type = ioda_type;
/* Detect specific models for error handling */
if (of_device_is_compatible(np, "ibm,p7ioc-pciex"))
phb->model = PNV_PHB_MODEL_P7IOC;
+ else if (of_device_is_compatible(np, "ibm,p8-pciex"))
+ phb->model = PNV_PHB_MODEL_PHB3;
else
phb->model = PNV_PHB_MODEL_UNKNOWN;
- /* We parse "ranges" now since we need to deduce the register base
- * from the IO base
- */
+ /* Parse 32-bit and IO ranges (if any) */
pci_process_bridge_OF_ranges(phb->hose, np, primary);
primary = 0;
- /* Magic formula from Milton */
+ /* Get registers */
phb->regs = of_iomap(np, 0);
if (phb->regs == NULL)
pr_err(" Failed to map registers !\n");
-
- /* XXX This is hack-a-thon. This needs to be changed so that:
- * - we obtain stuff like PE# etc... from device-tree
- * - we properly re-allocate M32 ourselves
- * (the OFW one isn't very good)
- */
-
/* Initialize more IODA stuff */
- phb->ioda.total_pe = 128;
+ prop32 = of_get_property(np, "ibm,opal-num-pes", NULL);
+ if (!prop32)
+ phb->ioda.total_pe = 1;
+ else
+ phb->ioda.total_pe = *prop32;
phb->ioda.m32_size = resource_size(&hose->mem_resources[0]);
- /* OFW Has already off top 64k of M32 space (MSI space) */
+ /* FW Has already off top 64k of M32 space (MSI space) */
phb->ioda.m32_size += 0x10000;
phb->ioda.m32_segsize = phb->ioda.m32_size / phb->ioda.total_pe;
@@ -930,7 +928,10 @@ void __init pnv_pci_init_ioda1_phb(struct device_node *np)
phb->ioda.io_segsize = phb->ioda.io_size / phb->ioda.total_pe;
phb->ioda.io_pci_base = 0; /* XXX calculate this ? */
- /* Allocate aux data & arrays */
+ /* Allocate aux data & arrays
+ *
+ * XXX TODO: Don't allocate io segmap on PHB3
+ */
size = _ALIGN_UP(phb->ioda.total_pe / 8, sizeof(unsigned long));
m32map_off = size;
size += phb->ioda.total_pe * sizeof(phb->ioda.m32_segmap[0]);
@@ -960,7 +961,7 @@ void __init pnv_pci_init_ioda1_phb(struct device_node *np)
hose->mem_resources[2].start = 0;
hose->mem_resources[2].end = 0;
-#if 0
+#if 0 /* We should really do that ... */
rc = opal_pci_set_phb_mem_window(opal->phb_id,
window_type,
window_num,
@@ -974,16 +975,6 @@ void __init pnv_pci_init_ioda1_phb(struct device_node *np)
phb->ioda.m32_size, phb->ioda.m32_segsize,
phb->ioda.io_size, phb->ioda.io_segsize);
- if (phb->regs) {
- pr_devel(" BUID = 0x%016llx\n", in_be64(phb->regs + 0x100));
- pr_devel(" PHB2_CR = 0x%016llx\n", in_be64(phb->regs + 0x160));
- pr_devel(" IO_BAR = 0x%016llx\n", in_be64(phb->regs + 0x170));
- pr_devel(" IO_BAMR = 0x%016llx\n", in_be64(phb->regs + 0x178));
- pr_devel(" IO_SAR = 0x%016llx\n", in_be64(phb->regs + 0x180));
- pr_devel(" M32_BAR = 0x%016llx\n", in_be64(phb->regs + 0x190));
- pr_devel(" M32_BAMR = 0x%016llx\n", in_be64(phb->regs + 0x198));
- pr_devel(" M32_SAR = 0x%016llx\n", in_be64(phb->regs + 0x1a0));
- }
phb->hose->ops = &pnv_pci_ops;
/* Setup RID -> PE mapping function */
@@ -1011,7 +1002,18 @@ void __init pnv_pci_init_ioda1_phb(struct device_node *np)
rc = opal_pci_reset(phb_id, OPAL_PCI_IODA_TABLE_RESET, OPAL_ASSERT_RESET);
if (rc)
pr_warning(" OPAL Error %ld performing IODA table reset !\n", rc);
- opal_pci_set_pe(phb_id, 0, 0, 7, 1, 1 , OPAL_MAP_PE);
+
+ /*
+ * On IODA1 map everything to PE#0, on IODA2 we assume the IODA reset
+ * has cleared the RTT which has the same effect
+ */
+ if (ioda_type == PNV_PHB_IODA1)
+ opal_pci_set_pe(phb_id, 0, 0, 7, 1, 1 , OPAL_MAP_PE);
+}
+
+void pnv_pci_init_ioda2_phb(struct device_node *np)
+{
+ pnv_pci_init_ioda_phb(np, PNV_PHB_IODA2);
}
void __init pnv_pci_init_ioda_hub(struct device_node *np)
@@ -1034,6 +1036,6 @@ void __init pnv_pci_init_ioda_hub(struct device_node *np)
for_each_child_of_node(np, phbn) {
/* Look for IODA1 PHBs */
if (of_device_is_compatible(phbn, "ibm,ioda-phb"))
- pnv_pci_init_ioda1_phb(phbn);
+ pnv_pci_init_ioda_phb(phbn, PNV_PHB_IODA1);
}
}
diff --git a/arch/powerpc/platforms/powernv/pci.c b/arch/powerpc/platforms/powernv/pci.c
index 42eee93..83514dc 100644
--- a/arch/powerpc/platforms/powernv/pci.c
+++ b/arch/powerpc/platforms/powernv/pci.c
@@ -492,12 +492,13 @@ static void pnv_pci_dma_dev_setup(struct pci_dev *pdev)
pnv_pci_dma_fallback_setup(hose, pdev);
}
-/* Fixup wrong class code in p7ioc root complex */
+/* Fixup wrong class code in p7ioc and p8 root complex */
static void pnv_p7ioc_rc_quirk(struct pci_dev *dev)
{
dev->class = PCI_CLASS_BRIDGE_PCI << 8;
}
DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_IBM, 0x3b9, pnv_p7ioc_rc_quirk);
+DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_IBM, 0x2da, pnv_p7ioc_rc_quirk);
static int pnv_pci_probe_mode(struct pci_bus *bus)
{
@@ -558,6 +559,10 @@ void __init pnv_pci_init(void)
if (!found_ioda)
for_each_compatible_node(np, NULL, "ibm,p5ioc2")
pnv_pci_init_p5ioc2_hub(np);
+
+ /* Look for ioda2 built-in PHB3's */
+ for_each_compatible_node(np, NULL, "ibm,ioda2-phb")
+ pnv_pci_init_ioda2_phb(np);
}
/* Setup the linkage between OF nodes and PHBs */
diff --git a/arch/powerpc/platforms/powernv/pci.h b/arch/powerpc/platforms/powernv/pci.h
index 42ddfba..f6314d6 100644
--- a/arch/powerpc/platforms/powernv/pci.h
+++ b/arch/powerpc/platforms/powernv/pci.h
@@ -4,9 +4,9 @@
struct pci_dn;
enum pnv_phb_type {
- PNV_PHB_P5IOC2,
- PNV_PHB_IODA1,
- PNV_PHB_IODA2,
+ PNV_PHB_P5IOC2 = 0,
+ PNV_PHB_IODA1 = 1,
+ PNV_PHB_IODA2 = 2,
};
/* Precise PHB model for error management */
@@ -14,6 +14,7 @@ enum pnv_phb_model {
PNV_PHB_MODEL_UNKNOWN,
PNV_PHB_MODEL_P5IOC2,
PNV_PHB_MODEL_P7IOC,
+ PNV_PHB_MODEL_PHB3,
};
#define PNV_PCI_DIAG_BUF_SIZE 4096
@@ -148,6 +149,7 @@ extern void pnv_pci_setup_iommu_table(struct iommu_table *tbl,
u64 dma_offset);
extern void pnv_pci_init_p5ioc2_hub(struct device_node *np);
extern void pnv_pci_init_ioda_hub(struct device_node *np);
+extern void pnv_pci_init_ioda2_phb(struct device_node *np);
#endif /* __POWERNV_PCI_H */
--
1.7.5.4
^ permalink raw reply related
* [PATCH 3/5] powerpc/powernv: Add option CONFIG_POWERNV_MSI
From: Gavin Shan @ 2013-04-23 11:03 UTC (permalink / raw)
To: linuxppc-dev; +Cc: Gavin Shan
In-Reply-To: <1366715034-24594-1-git-send-email-shangw@linux.vnet.ibm.com>
As Michael Ellerman suggested, to add CONFIG_POWERNV_MSI for PowerNV
platform. That's similar to CONFIG_PSERIES_MSI for pSeries platform.
For now, we don't make it dependent on CONFIG_EEH since it's not ready
to enable that yet.
Apart from that, we also enable CONFIG_PPC_MSI_BITMAP on selecting
CONFIG_POWERNV_MSI.
Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com>
---
arch/powerpc/platforms/powernv/Kconfig | 5 +++++
arch/powerpc/sysdev/Kconfig | 1 +
2 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/arch/powerpc/platforms/powernv/Kconfig b/arch/powerpc/platforms/powernv/Kconfig
index 74fea5c..d3e840d 100644
--- a/arch/powerpc/platforms/powernv/Kconfig
+++ b/arch/powerpc/platforms/powernv/Kconfig
@@ -8,6 +8,11 @@ config PPC_POWERNV
select PPC_PCI_CHOICE if EMBEDDED
default y
+config POWERNV_MSI
+ bool "Support PCI MSI on PowerNV platform"
+ depends on PCI_MSI
+ default y
+
config PPC_POWERNV_RTAS
depends on PPC_POWERNV
bool "Support for RTAS based PowerNV platforms such as BML"
diff --git a/arch/powerpc/sysdev/Kconfig b/arch/powerpc/sysdev/Kconfig
index a84fecf..ab4cb54 100644
--- a/arch/powerpc/sysdev/Kconfig
+++ b/arch/powerpc/sysdev/Kconfig
@@ -19,6 +19,7 @@ config PPC_MSI_BITMAP
default y if MPIC
default y if FSL_PCI
default y if PPC4xx_MSI
+ default y if POWERNV_MSI
source "arch/powerpc/sysdev/xics/Kconfig"
--
1.7.5.4
^ permalink raw reply related
* [PATCH 5/5] powerpc/powernv: TCE invalidation for PHB3
From: Gavin Shan @ 2013-04-23 11:03 UTC (permalink / raw)
To: linuxppc-dev; +Cc: Gavin Shan
In-Reply-To: <1366715034-24594-1-git-send-email-shangw@linux.vnet.ibm.com>
The TCE should be invalidated while it's created or free'd. The
approach to do that for IODA1 and IODA2 compliant PHBs are different.
So the patch differentiate them with virtualized interface hooked
to the PHB. It's notable that the PCI address is used to invalidate
the corresponding TCE on IODA2 compliant PHB3.
Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com>
---
arch/powerpc/include/asm/iommu.h | 1 +
arch/powerpc/platforms/powernv/pci-ioda.c | 79 ++++++++++++++++++++++++++-
arch/powerpc/platforms/powernv/pci-p5ioc2.c | 2 +
arch/powerpc/platforms/powernv/pci.c | 48 ++---------------
arch/powerpc/platforms/powernv/pci.h | 2 +
5 files changed, 86 insertions(+), 46 deletions(-)
diff --git a/arch/powerpc/include/asm/iommu.h b/arch/powerpc/include/asm/iommu.h
index cbfe678..0db308e 100644
--- a/arch/powerpc/include/asm/iommu.h
+++ b/arch/powerpc/include/asm/iommu.h
@@ -76,6 +76,7 @@ struct iommu_table {
struct iommu_pool large_pool;
struct iommu_pool pools[IOMMU_NR_POOLS];
unsigned long *it_map; /* A simple allocation bitmap for now */
+ void *sysdata;
};
struct scatterlist;
diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c
index 8ec77a7..a4b1c9a 100644
--- a/arch/powerpc/platforms/powernv/pci-ioda.c
+++ b/arch/powerpc/platforms/powernv/pci-ioda.c
@@ -448,6 +448,73 @@ static void pnv_ioda_setup_bus_dma(struct pnv_ioda_pe *pe, struct pci_bus *bus)
}
}
+static void pnv_pci_ioda1_tce_invalidate(struct iommu_table *tbl,
+ u64 *startp, u64 *endp)
+{
+ u64 __iomem *invalidate = (u64 __iomem *)tbl->it_index;
+ unsigned long start, end, inc;
+
+ start = __pa(startp);
+ end = __pa(endp);
+
+ /* BML uses this case for p6/p7/galaxy2: Shift addr and put in node */
+ if (tbl->it_busno) {
+ start <<= 12;
+ end <<= 12;
+ inc = 128 << 12;
+ start |= tbl->it_busno;
+ end |= tbl->it_busno;
+ } else if (tbl->it_type & TCE_PCI_SWINV_PAIR) {
+ /* p7ioc-style invalidation, 2 TCEs per write */
+ start |= (1ull << 63);
+ end |= (1ull << 63);
+ inc = 16;
+ } else {
+ /* Default (older HW) */
+ inc = 128;
+ }
+
+ end |= inc - 1; /* round up end to be different than start */
+
+ mb(); /* Ensure above stores are visible */
+ while (start <= end) {
+ __raw_writeq(start, invalidate);
+ start += inc;
+ }
+
+ /*
+ * The iommu layer will do another mb() for us on build()
+ * and we don't care on free()
+ */
+}
+
+static void pnv_pci_ioda2_tce_invalidate(struct iommu_table *tbl,
+ u64 *startp, u64 *endp)
+{
+ unsigned long start, end, inc;
+ u64 __iomem *invalidate = (u64 __iomem *)tbl->it_index;
+ struct pnv_ioda_pe *pe = container_of(tbl, struct pnv_ioda_pe,
+ tce32_table);
+
+ /* We'll invalidate DMA address in PE scope */
+ start = 0x2ul << 60;
+ start |= (pe->pe_number & 0xFF);
+ end = start;
+
+ /* Figure out the start, end and step */
+ inc = tbl->it_offset + (((u64)startp - tbl->it_base) / sizeof(u64));
+ start |= (inc << 12);
+ inc = tbl->it_offset + (((u64)endp - tbl->it_base) / sizeof(u64));
+ end |= (inc << 12);
+ inc = (0x1ul << 12);
+ mb();
+
+ while (start <= end) {
+ __raw_writeq(start, invalidate);
+ start += inc;
+ }
+}
+
static void pnv_pci_ioda_setup_dma_pe(struct pnv_phb *phb,
struct pnv_ioda_pe *pe, unsigned int base,
unsigned int segs)
@@ -509,6 +576,9 @@ static void pnv_pci_ioda_setup_dma_pe(struct pnv_phb *phb,
pnv_pci_setup_iommu_table(tbl, addr, TCE32_TABLE_SIZE * segs,
base << 28);
+ /* Hook the IOMMU table to PHB */
+ tbl->sysdata = phb;
+
/* OPAL variant of P7IOC SW invalidated TCEs */
swinvp = of_get_property(phb->hose->dn, "ibm,opal-tce-kill", NULL);
if (swinvp) {
@@ -519,8 +589,9 @@ static void pnv_pci_ioda_setup_dma_pe(struct pnv_phb *phb,
*/
tbl->it_busno = 0;
tbl->it_index = (unsigned long)ioremap(be64_to_cpup(swinvp), 8);
- tbl->it_type = TCE_PCI_SWINV_CREATE | TCE_PCI_SWINV_FREE
- | TCE_PCI_SWINV_PAIR;
+ tbl->it_type = TCE_PCI_SWINV_CREATE | TCE_PCI_SWINV_FREE;
+ if (phb->type == PNV_PHB_IODA1)
+ tbl->it_type |= TCE_PCI_SWINV_PAIR;
}
iommu_init_table(tbl, phb->hose->node);
@@ -1032,6 +1103,10 @@ void __init pnv_pci_init_ioda_phb(struct device_node *np, int ioda_type)
/* Setup TCEs */
phb->dma_dev_setup = pnv_pci_ioda_dma_dev_setup;
+ if (ioda_type == PNV_PHB_IODA1)
+ phb->dma_tce_invalidate = pnv_pci_ioda1_tce_invalidate;
+ else
+ phb->dma_tce_invalidate = pnv_pci_ioda2_tce_invalidate;
/* Setup MSI support */
pnv_pci_init_ioda_msis(phb);
diff --git a/arch/powerpc/platforms/powernv/pci-p5ioc2.c b/arch/powerpc/platforms/powernv/pci-p5ioc2.c
index d5c066e..a5f791b 100644
--- a/arch/powerpc/platforms/powernv/pci-p5ioc2.c
+++ b/arch/powerpc/platforms/powernv/pci-p5ioc2.c
@@ -167,6 +167,8 @@ static void __init pnv_pci_init_p5ioc2_phb(struct device_node *np,
/* Setup TCEs */
phb->dma_dev_setup = pnv_pci_p5ioc2_dma_dev_setup;
+ phb->dma_tce_invalidate = NULL;
+ phb->p5ioc2.iommu_table.sysdata = phb;
pnv_pci_setup_iommu_table(&phb->p5ioc2.iommu_table,
tce_mem, tce_size, 0);
}
diff --git a/arch/powerpc/platforms/powernv/pci.c b/arch/powerpc/platforms/powernv/pci.c
index 1a03f42..d406cc0 100644
--- a/arch/powerpc/platforms/powernv/pci.c
+++ b/arch/powerpc/platforms/powernv/pci.c
@@ -348,52 +348,11 @@ struct pci_ops pnv_pci_ops = {
.write = pnv_pci_write_config,
};
-
-static void pnv_tce_invalidate(struct iommu_table *tbl,
- u64 *startp, u64 *endp)
-{
- u64 __iomem *invalidate = (u64 __iomem *)tbl->it_index;
- unsigned long start, end, inc;
-
- start = __pa(startp);
- end = __pa(endp);
-
-
- /* BML uses this case for p6/p7/galaxy2: Shift addr and put in node */
- if (tbl->it_busno) {
- start <<= 12;
- end <<= 12;
- inc = 128 << 12;
- start |= tbl->it_busno;
- end |= tbl->it_busno;
- }
- /* p7ioc-style invalidation, 2 TCEs per write */
- else if (tbl->it_type & TCE_PCI_SWINV_PAIR) {
- start |= (1ull << 63);
- end |= (1ull << 63);
- inc = 16;
- }
- /* Default (older HW) */
- else
- inc = 128;
-
- end |= inc - 1; /* round up end to be different than start */
-
- mb(); /* Ensure above stores are visible */
- while (start <= end) {
- __raw_writeq(start, invalidate);
- start += inc;
- }
- /* The iommu layer will do another mb() for us on build() and
- * we don't care on free()
- */
-}
-
-
static int pnv_tce_build(struct iommu_table *tbl, long index, long npages,
unsigned long uaddr, enum dma_data_direction direction,
struct dma_attrs *attrs)
{
+ struct pnv_phb *phb = tbl->sysdata;
u64 proto_tce;
u64 *tcep, *tces;
u64 rpn;
@@ -414,13 +373,14 @@ static int pnv_tce_build(struct iommu_table *tbl, long index, long npages,
* of flags if that becomes the case
*/
if (tbl->it_type & TCE_PCI_SWINV_CREATE)
- pnv_tce_invalidate(tbl, tces, tcep - 1);
+ phb->dma_tce_invalidate(tbl, tces, tcep - 1);
return 0;
}
static void pnv_tce_free(struct iommu_table *tbl, long index, long npages)
{
+ struct pnv_phb *phb = tbl->sysdata;
u64 *tcep, *tces;
tces = tcep = ((u64 *)tbl->it_base) + index - tbl->it_offset;
@@ -429,7 +389,7 @@ static void pnv_tce_free(struct iommu_table *tbl, long index, long npages)
*(tcep++) = 0;
if (tbl->it_type & TCE_PCI_SWINV_FREE)
- pnv_tce_invalidate(tbl, tces, tcep - 1);
+ phb->dma_tce_invalidate(tbl, tces, tcep - 1);
}
static unsigned long pnv_tce_get(struct iommu_table *tbl, long index)
diff --git a/arch/powerpc/platforms/powernv/pci.h b/arch/powerpc/platforms/powernv/pci.h
index c6690b3..79a725e 100644
--- a/arch/powerpc/platforms/powernv/pci.h
+++ b/arch/powerpc/platforms/powernv/pci.h
@@ -83,6 +83,8 @@ struct pnv_phb {
struct msi_msg *msg);
int (*msi_eoi)(struct pnv_phb *phb, unsigned int hw_irq);
void (*dma_dev_setup)(struct pnv_phb *phb, struct pci_dev *pdev);
+ void (*dma_tce_invalidate)(struct iommu_table *tbl,
+ u64 *startp, u64 *endp);
void (*fixup_phb)(struct pci_controller *hose);
u32 (*bdfn_to_pe)(struct pnv_phb *phb, struct pci_bus *bus, u32 devfn);
--
1.7.5.4
^ permalink raw reply related
* Re: [PATCH] powerpc/pci: fix PCI-e devices rescan issue on powerpc platform
From: Michael Ellerman @ 2013-04-23 11:30 UTC (permalink / raw)
To: Chen Yuanquan-B41889
Cc: Yuanquan Chen, Hiroo Matsumoto, linux-pci, Bjorn Helgaas,
linuxppc-dev
In-Reply-To: <5176679D.7090008@freescale.com>
On Tue, Apr 23, 2013 at 06:51:09PM +0800, Chen Yuanquan-B41889 wrote:
> On 04/23/2013 06:05 PM, Benjamin Herrenschmidt wrote:
> >On Tue, 2013-04-23 at 17:26 +0800, Chen Yuanquan-B41889 wrote:
> >>There's no response from Ben. How do you think about this patch?
> >>What's
> >>your advice?
> >Didn't Michael put your patch in -next while I was on vacation ? I'll
> >check tomorrow.
> >
> >Cheers,
> >Ben.
> >
>
> Hi Ben,
>
> I have checked the latest kernel(v3.9-rc7). This patch has been applied.
No it's not in v3.9-rc7.
It is in my test branch, which is in linux-next.
http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit?id=37f02195bee9c25ce44e25204f40b7961a6d7c9d
cheers
^ permalink raw reply
* Re: PROBLEM: Only 2 of 4 cores used on IBM Cell blades and no threads shown in spufs
From: Dennis Schridde @ 2013-04-23 11:51 UTC (permalink / raw)
To: Michael Ellerman; +Cc: cbe-oss-dev, linuxppc-dev, arnd
In-Reply-To: <20130423091246.GA18195@concordia>
[-- Attachment #1: Type: text/plain, Size: 1011 bytes --]
Hello Michael!
Am Tue, 23 Apr 2013 19:12:47 +1000
schrieb Michael Ellerman <michael@ellerman.id.au>:
> On Mon, Apr 22, 2013 at 06:44:13PM +0200, Dennis Schridde wrote:
> For me it is fixed by applying the following patch, it should be in
> v3.10:
I am currently compiling the patched kernel. Will report back with the
results later.
> Does your cellminer actually work? ie. does it run OK?
>
> I am using a fractal benchmark I had lying around, and it appears to
> work, and runs fast enough that it must be running on the SPUs (I
> think).
>
> So it sounds like we have some weirdness with stuff not appearing in
> /spu, but spu programs are still able to run. Which is odd to say the
> least.
Yes, that seems to be exactly what I see here. The SPE code seems to be
actually running (cellminer reports SPU threads being created and it
runs at 42 Megahash/s - which is coming closer and closer to the
expected ~60Mh/s, given that I started with about 6Mh/s), just /spu is
empty.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply
* Re: PROBLEM: Only 2 of 4 cores used on IBM Cell blades and no threads shown in spufs
From: Dennis Schridde @ 2013-04-23 12:01 UTC (permalink / raw)
To: arnd, linuxppc-dev, cbe-oss-dev
In-Reply-To: <1470334.YUWOQ37ijW@ernie>
[-- Attachment #1: Type: text/plain, Size: 1300 bytes --]
Am Mon, 22 Apr 2013 18:44:13 +0200
schrieb Dennis Schridde <devurandom@gmx.net>:
> [4.] Kernel information
>
> [4.1.] Kernel version (from /proc/version):
> I am using the Linux 3.8.8 kernel (vanilla-sources-3.8.8 on
> Gentoo/Linux): # cat /proc/version
> Linux version 3.8.8 (root@blade00) (gcc version 4.7.2 (Gentoo
> 4.7.2-r1 p1.5, pie-0.5.5) ) #2 SMP Mon Apr 22 18:21:20 CEST 2013
Actually this is only partially correct.
I applied following patch by Grant Likely
<grant.likely@secretlab.ca> to fix some IRQ mapping problems:
diff --git a/arch/powerpc/platforms/cell/pmu.c
b/arch/powerpc/platforms/cell/pmu.c index 59c1a16..348a27b 100644
--- a/arch/powerpc/platforms/cell/pmu.c
+++ b/arch/powerpc/platforms/cell/pmu.c
@@ -382,7 +382,7 @@ static int __init cbe_init_pm_irq(void)
unsigned int irq;
int rc, node;
- for_each_node(node) {
+ for_each_online_node(node) {
irq = irq_create_mapping(NULL, IIC_IRQ_IOEX_PMI |
(node <<
IIC_IRQ_NODE_SHIFT)); if (irq == NO_IRQ) {
And now I also applied the patch by Michael Ellerman
<michael@ellerman.id.au> that supposedly fixes the
all-processes-running-on-CPU0 issue - I will report back with results
later.
--Dennis
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply
* [PATCH] powerpc/cell: Only iterate over online nodes in cbe_init_pm_irq()
From: Michael Ellerman @ 2013-04-23 12:14 UTC (permalink / raw)
To: linuxppc-dev; +Cc: devurandom
None of the cell platforms support CPU hotplug, so we should iterate
only over online nodes when setting PMU interrupts.
This also fixes a warning during boot when NODES_SHIFT is large enough:
WARNING: at /scratch/michael/src/kmk/linus/kernel/irq/irqdomain.c:766
...
NIP [c0000000000db278] .irq_linear_revmap+0x30/0x58
LR [c0000000000dc2a0] .irq_create_mapping+0x38/0x1a8
Call Trace:
[c0000003fc9c3af0] [c0000000000dc2a0] .irq_create_mapping+0x38/0x1a8 (unreliable)
[c0000003fc9c3b80] [c000000000655c1c] .__machine_initcall_cell_cbe_init_pm_irq+0x84/0x158
[c0000003fc9c3c20] [c00000000000afb4] .do_one_initcall+0x5c/0x1e0
[c0000003fc9c3cd0] [c000000000644580] .kernel_init_freeable+0x238/0x328
[c0000003fc9c3db0] [c00000000000b784] .kernel_init+0x1c/0x120
[c0000003fc9c3e30] [c000000000009fb8] .ret_from_kernel_thread+0x64/0xac
This is caused by us overflowing our linear revmap because we're
requesting too many interrupts.
Reported-by: Dennis Schridde <devurandom@gmx.net>
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
---
arch/powerpc/platforms/cell/pmu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/platforms/cell/pmu.c b/arch/powerpc/platforms/cell/pmu.c
index 59c1a16..348a27b 100644
--- a/arch/powerpc/platforms/cell/pmu.c
+++ b/arch/powerpc/platforms/cell/pmu.c
@@ -382,7 +382,7 @@ static int __init cbe_init_pm_irq(void)
unsigned int irq;
int rc, node;
- for_each_node(node) {
+ for_each_online_node(node) {
irq = irq_create_mapping(NULL, IIC_IRQ_IOEX_PMI |
(node << IIC_IRQ_NODE_SHIFT));
if (irq == NO_IRQ) {
--
1.7.10.4
^ permalink raw reply related
* Re: PROBLEM: Only 2 of 4 cores used on IBM Cell blades and no threads shown in spufs
From: Michael Ellerman @ 2013-04-23 12:16 UTC (permalink / raw)
To: Dennis Schridde; +Cc: cbe-oss-dev, linuxppc-dev, arnd
In-Reply-To: <20130423140116.0a40c2c6@samson>
On Tue, Apr 23, 2013 at 02:01:16PM +0200, Dennis Schridde wrote:
> Am Mon, 22 Apr 2013 18:44:13 +0200
> schrieb Dennis Schridde <devurandom@gmx.net>:
> > [4.] Kernel information
> >
> > [4.1.] Kernel version (from /proc/version):
> > I am using the Linux 3.8.8 kernel (vanilla-sources-3.8.8 on
> > Gentoo/Linux): # cat /proc/version
> > Linux version 3.8.8 (root@blade00) (gcc version 4.7.2 (Gentoo
> > 4.7.2-r1 p1.5, pie-0.5.5) ) #2 SMP Mon Apr 22 18:21:20 CEST 2013
>
> Actually this is only partially correct.
>
> I applied following patch by Grant Likely
> <grant.likely@secretlab.ca> to fix some IRQ mapping problems:
Ah yes, I forgot I also have basically the same patch. I've just sent it
to the list.
We appear to have a number of problems with the irq mapping on cell,
that patch fixes the worst of them but there are more.
cheers
^ permalink raw reply
* Re: [PATCH] powerpc/cell: Only iterate over online nodes in cbe_init_pm_irq()
From: Dennis Schridde @ 2013-04-23 12:45 UTC (permalink / raw)
To: Michael Ellerman; +Cc: linuxppc-dev
In-Reply-To: <1366719291-29414-1-git-send-email-michael@ellerman.id.au>
[-- Attachment #1.1: Type: text/plain, Size: 551 bytes --]
Hello everyone!
I have been testing this patch (given to me by Grant Likely
<grant.likely@secretlab.ca>) with various kernel versions (3.6.2, 3.6.11,
3.8.6, 3.8.8) since November and can confirm that it solves part of the IRQ
mapping issue on Cell (namely the one Michael mentioned) and does not cause
any additional noticable problems.
Some problems remain after this patch, as can be seen in the attached
dmesg.log. If further information is required to debug this, or you need some
help in testing more patches, please contact me.
--Dennis
[-- Attachment #1.2: blade00-dmesg.log --]
[-- Type: text/x-log, Size: 60051 bytes --]
[ 0.000000] Allocated 20480 bytes for 32 pacas at c00000000fffb000
[ 0.000000] Using Cell machine description
[ 0.000000] Page orders: linear mapping = 24, virtual = 12, io = 12, vmemmap = 24
[ 0.000000] Found initrd at 0xc000000004265000:0xc000000004c22964
[ 0.000000] Found legacy serial port 0 for /axon@10000000000/plb5/plb4/opb/serial@40000200
[ 0.000000] mem=14540000200, taddr=14540000200, irq=0, clk=14745600, speed=19200
[ 0.000000] Found legacy serial port 1 for /axon@10000000000/plb5/plb4/opb/serial@40000300
[ 0.000000] mem=14540000300, taddr=14540000300, irq=0, clk=14745600, speed=115200
[ 0.000000] Found legacy serial port 2 for /axon@30000000000/plb5/plb4/opb/serial@40000200
[ 0.000000] mem=34540000200, taddr=34540000200, irq=0, clk=14745600, speed=-1
[ 0.000000] Found legacy serial port 3 for /axon@30000000000/plb5/plb4/opb/serial@40000300
[ 0.000000] mem=34540000300, taddr=34540000300, irq=0, clk=14745600, speed=-1
[ 0.000000] bootconsole [udbg0] enabled
[ 0.000000] CPU maps initialized for 2 threads per core
[ 0.000000] (thread shift is 1)
[ 0.000000] Freed 16384 bytes for unused pacas
[ 0.000000] Starting Linux PPC64 #1 SMP Tue Apr 16 10:08:12 CEST 2013
[ 0.000000] -----------------------------------------------------
[ 0.000000] ppc64_pft_size = 0x0
[ 0.000000] physicalMemorySize = 0x200000000
[ 0.000000] htab_address = 0xc000000078000000
[ 0.000000] htab_hash_mask = 0xfffff
[ 0.000000] -----------------------------------------------------
[ 0.000000] Linux version 3.8.6-aufs (root@blade00) (gcc version 4.7.2 (Gentoo 4.7.2-r1 p1.5, pie-0.5.5) ) #1 SMP Tue Apr 16 10:08:12 CEST 2013
[ 0.000000] *** 0000 : CF000012
[ 0.000000] *** 0000 : Setup Arch
[ 0.000000] [boot]0012 Setup Arch
[ 0.000000] Node 0 Memory: 0x0-0x100000000
[ 0.000000] Node 1 Memory: 0x100000000-0x200000000
[ 0.000000] mmio NVRAM, 1020k at 0x14502000000 mapped to d000080080008000
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x00000000-0x1ffffffff]
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x00000000-0xffffffff]
[ 0.000000] node 1: [mem 0x100000000-0x1ffffffff]
[ 0.000000] On node 0 totalpages: 1048576
[ 0.000000] DMA zone: 14336 pages used for memmap
[ 0.000000] DMA zone: 0 pages reserved
[ 0.000000] DMA zone: 1034240 pages, LIFO batch:31
[ 0.000000] On node 1 totalpages: 1048576
[ 0.000000] DMA zone: 14336 pages used for memmap
[ 0.000000] DMA zone: 0 pages reserved
[ 0.000000] DMA zone: 1034240 pages, LIFO batch:31
[ 0.000000] *** 0000 : CF000015
[ 0.000000] *** 0000 : Setup Done
[ 0.000000] [boot]0015 Setup Done
[ 0.000000] PERCPU: Embedded 11 pages/cpu @c000000000800000 s14848 r0 d30208 u262144
[ 0.000000] pcpu-alloc: s14848 r0 d30208 u262144 alloc=1*1048576
[ 0.000000] pcpu-alloc: [0] 0 1 2 3
[ 0.000000] Built 2 zonelists in Node order, mobility grouping on. Total pages: 2068480
[ 0.000000] Policy zone: DMA
[ 0.000000] Kernel command line: ksdevice=bootif lang= ip=eth0:dhcp root=nfs:192.168.100.1:/export/gentoo/root-ppc64 text
[ 0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[ 0.000000] freeing bootmem node 0
[ 0.000000] freeing bootmem node 1
[ 0.000000] Memory: 8058732k/8388608k available (6164k kernel code, 329876k reserved, 676k data, 398k bss, 2072k init)
[ 0.000000] SLUB: Genslabs=15, HWalign=128, Order=0-3, MinObjects=0, CPUs=4, Nodes=256
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] RCU restricting CPUs from NR_CPUS=32 to nr_cpu_ids=4.
[ 0.000000] NR_IRQS:512 nr_irqs:512 16
[ 0.000000] IIC for CPU 0 target id 0xe : /be@20000000000/interrupt-controller@508400
[ 0.000000] IIC for CPU 1 target id 0xf : /be@20000000000/interrupt-controller@508400
[ 0.000000] IIC for CPU 2 target id 0x1e : /be@20100000000/interrupt-controller@508400
[ 0.000000] IIC for CPU 3 target id 0x1f : /be@20100000000/interrupt-controller@508400
[ 0.000000] mpic: Setting up MPIC " MPIC " version 1.2 at 0, max 4 CPUs
[ 0.000000] mpic: ISU size: 128, shift: 7, mask: 7f
[ 0.000000] mpic: Initializing for 128 sources
[ 0.000000] /axon@10000000000/interrupt-controller: hooking up to IRQ 43
[ 0.000000] mpic: Setting up MPIC " MPIC " version 1.2 at 0, max 4 CPUs
[ 0.000000] mpic: ISU size: 128, shift: 7, mask: 7f
[ 0.000000] mpic: Initializing for 128 sources
[ 0.000000] /axon@30000000000/interrupt-controller: hooking up to IRQ 299
[ 0.000000] time_init: decrementer frequency = 26.664333 MHz
[ 0.000000] time_init: processor frequency = 3200.000000 MHz
[ 0.000000] clocksource: timebase mult[2580d717] shift[24] registered
[ 0.000000] clockevent: decrementer mult[6d37946] shift[32] cpu[0]
[ 0.000000] Console: colour dummy device 80x25
[ 0.065086] pid_max: default: 32768 minimum: 301
[ 0.095333] Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes)
[ 0.151126] Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes)
[ 0.198839] Mount-cache hash table entries: 256
[ 0.227727] Brought up 4 CPUs
[ 0.245016] Node 0 CPUs: 0-1
[ 0.245025] Node 1 CPUs: 2-3
[ 0.245668] devtmpfs: initialized
[ 0.316341] NET: Registered protocol family 16
[ 0.342793] iommu: node 0, dynamic window 0x0-0x80000000 fixed window 0x80000000-0x280000000
[ 0.344192] IOMMU: Using strong ordering for fixed mapping
[ 0.378559] IOMMU table initialized, virtual merging enabled
[ 0.412058] iommu: node 1, dynamic window 0x0-0x80000000 fixed window 0x80000000-0x280000000
[ 0.414287] IOMMU: Using strong ordering for fixed mapping
[ 0.468866] PCI: Probing PCI hardware
[ 0.490341] PCI: Probing PCI hardware done
[ 0.490734] irq: irq-93==>hwirq-0x5d mapping failed: -22
[ 0.522130] ------------[ cut here ]------------
[ 0.549706] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 0.591895] Modules linked in:
[ 0.610126] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 0.652317] REGS: c0000000fe667190 TRAP: 0700 Not tainted (3.8.6-aufs)
[ 0.692940] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 44000024 XER: 00000000
[ 0.739817] SOFTE: 1
[ 0.752840] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667410 c000000000699cb0 000000000000002c
GPR04: 0000000000000000 0000000078e26d37 0000000000000008 0000000000000000
GPR08: 0000000078eef1c4 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000000fe006078 000000000000005e
GPR24: 0000000000000174 000000000000005d 000000000000005d c0000000fe65fc00
GPR28: c0000000fe006060 000000000000005d c000000000643be0 000000000000005d
[ 1.119009] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 1.159628] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 1.199731] Call Trace:
[ 1.214318] [c0000000fe667410] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 1.269528] [c0000000fe6674e0] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 1.313801] [c0000000fe667580] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 1.359639] [c0000000fe667630] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 1.404429] [c0000000fe6676c0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 1.445057] [c0000000fe667750] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 1.488287] [c0000000fe667850] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 1.538810] [c0000000fe6678f0] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 1.585687] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 1.632564] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 1.678404] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 1.736219] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 1.779445] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 1.825281] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 1.865907] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 1.911738] Instruction dump:
[ 1.929448] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 1.975803] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 2.023213] ---[ end trace 093b23e74665976f ]---
[ 2.051302] irq: irq-59==>hwirq-0x3b mapping failed: -22
[ 2.082642] ------------[ cut here ]------------
[ 2.110236] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 2.152425] Modules linked in:
[ 2.170657] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 2.212846] REGS: c0000000fe666fb0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 2.259200] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 44000024 XER: 00000000
[ 2.306076] SOFTE: 1
[ 2.319100] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667230 c000000000699cb0 000000000000002c
GPR04: 0000000000000000 000000007b5d549f 0000000000000008 0000000000000000
GPR08: 000000007b69dec9 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000000fe006078 000000000000003c
GPR24: 00000000000000ec 000000000000003b 000000000000003b c0000000fe803100
GPR28: c0000000fe006060 000000000000003b c000000000643be0 000000000000003b
[ 2.685263] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 2.725888] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 2.765991] Call Trace:
[ 2.780579] [c0000000fe667230] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 2.835789] [c0000000fe667300] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 2.880062] [c0000000fe6673a0] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 2.925896] [c0000000fe667450] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 2.970690] [c0000000fe6674e0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 3.011315] [c0000000fe667570] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 3.054548] [c0000000fe667670] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 3.105070] [c0000000fe667710] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 3.151946] [c0000000fe667800] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 3.198824] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 3.245701] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 3.292577] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 3.338414] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 3.396228] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 3.439457] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 3.485294] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 3.525921] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 3.571752] Instruction dump:
[ 3.589461] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 3.635817] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 3.683216] ---[ end trace 093b23e746659770 ]---
[ 3.711776] irq: irq-18==>hwirq-0x2 mapping failed: -22
[ 3.742608] ------------[ cut here ]------------
[ 3.770199] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 3.812387] Modules linked in:
[ 3.830618] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 3.872808] REGS: c0000000fe666ec0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 3.919162] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 44000024 XER: 00000000
[ 3.966038] SOFTE: 1
[ 3.979061] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667140 c000000000699cb0 000000000000002b
GPR04: 0000000000000000 000000007e00bb99 0000000000000008 0000000000000000
GPR08: 000000007e0d404e 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000000fe006078 0000000000000013
GPR24: 0000000000000008 0000000000000002 0000000000000012 c0000000fe803500
GPR28: c0000000fe006060 0000000000000012 c000000000643be0 0000000000000002
[ 4.345224] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 4.385850] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 4.425953] Call Trace:
[ 4.440540] [c0000000fe667140] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 4.495750] [c0000000fe667210] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 4.540023] [c0000000fe6672b0] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 4.585858] [c0000000fe667360] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 4.630651] [c0000000fe6673f0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 4.671277] [c0000000fe667480] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 4.714509] [c0000000fe667580] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 4.765032] [c0000000fe667620] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 4.811908] [c0000000fe667710] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 4.858786] [c0000000fe667800] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 4.905662] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 4.952539] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 4.999415] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 5.045253] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 5.103067] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 5.146297] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 5.192132] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 5.232760] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 5.278590] Instruction dump:
[ 5.296299] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 5.342655] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 5.390054] ---[ end trace 093b23e746659771 ]---
[ 5.419401] irq: irq-102==>hwirq-0x66 mapping failed: -22
[ 5.451267] ------------[ cut here ]------------
[ 5.478859] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 5.521048] Modules linked in:
[ 5.539279] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 5.581470] REGS: c0000000fe6670a0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 5.627823] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 5.674700] SOFTE: 1
[ 5.687723] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667320 c000000000699cb0 000000000000002d
GPR04: 0000000000000000 0000000080b79860 0000000000000008 0000000000000000
GPR08: 0000000080c47261 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000000fe006078 0000000000000067
GPR24: 0000000000000198 0000000000000066 0000000000000066 c0000000fe806f00
GPR28: c0000000fe006060 0000000000000066 c000000000643be0 0000000000000066
[ 6.053885] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 6.094512] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 6.134614] Call Trace:
[ 6.149201] [c0000000fe667320] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 6.204412] [c0000000fe6673f0] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 6.248684] [c0000000fe667490] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 6.294520] [c0000000fe667540] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 6.339313] [c0000000fe6675d0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 6.379940] [c0000000fe667660] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 6.423171] [c0000000fe667760] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 6.473693] [c0000000fe667800] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 6.520570] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 6.567447] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 6.614324] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 6.660160] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 6.717975] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 6.761204] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 6.807039] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 6.847667] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 6.893498] Instruction dump:
[ 6.911208] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 6.957563] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 7.004962] ---[ end trace 093b23e746659772 ]---
[ 7.032744] irq: irq-110==>hwirq-0x6e mapping failed: -22
[ 7.064870] ------------[ cut here ]------------
[ 7.092465] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 7.134654] Modules linked in:
[ 7.152885] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 7.195074] REGS: c0000000fe6670a0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 7.241429] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 7.288306] SOFTE: 1
[ 7.301328] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667320 c000000000699cb0 000000000000002d
GPR04: 0000000000000000 0000000083483c8a 0000000000000008 0000000000000000
GPR08: 000000008354f799 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000000fe006078 000000000000006f
GPR24: 00000000000001b8 000000000000006e 000000000000006e c0000000fe806f00
GPR28: c0000000fe006060 000000000000006e c000000000643be0 000000000000006e
[ 7.667491] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 7.708117] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 7.748219] Call Trace:
[ 7.762807] [c0000000fe667320] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 7.818018] [c0000000fe6673f0] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 7.862290] [c0000000fe667490] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 7.908125] [c0000000fe667540] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 7.952918] [c0000000fe6675d0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 7.993545] [c0000000fe667660] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 8.036776] [c0000000fe667760] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 8.087299] [c0000000fe667800] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 8.134175] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 8.181053] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 8.227929] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 8.273765] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 8.331580] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 8.374810] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 8.420646] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 8.461272] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 8.507103] Instruction dump:
[ 8.524813] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 8.571169] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 8.618568] ---[ end trace 093b23e746659773 ]---
[ 8.646369] irq: irq-39==>hwirq-0x27 mapping failed: -22
[ 8.677955] ------------[ cut here ]------------
[ 8.705551] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 8.747738] Modules linked in:
[ 8.765970] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 8.808160] REGS: c0000000fe6670a0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 8.854513] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 8.901390] SOFTE: 1
[ 8.914413] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667320 c000000000699cb0 000000000000002c
GPR04: 0000000000000000 0000000085d8c1ca 0000000000000008 0000000000000000
GPR08: 0000000085e54682 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000000fe006078 0000000000000028
GPR24: 000000000000009c 0000000000000027 0000000000000027 c0000000fe807000
GPR28: c0000000fe006060 0000000000000027 c000000000643be0 0000000000000027
[ 9.280577] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 9.321202] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 9.361304] Call Trace:
[ 9.375891] [c0000000fe667320] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 9.431102] [c0000000fe6673f0] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 9.475374] [c0000000fe667490] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 9.521210] [c0000000fe667540] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 9.566002] [c0000000fe6675d0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 9.606630] [c0000000fe667660] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 9.649861] [c0000000fe667760] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 9.700383] [c0000000fe667800] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 9.747260] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 9.794137] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 9.841014] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 9.886851] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 9.944665] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 9.987895] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 10.033731] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 10.074357] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 10.120188] Instruction dump:
[ 10.137898] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 10.184254] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 10.231652] ---[ end trace 093b23e746659774 ]---
[ 10.259697] irq: irq-93==>hwirq-0x5d mapping failed: -22
[ 10.291040] ------------[ cut here ]------------
[ 10.318635] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 10.360823] Modules linked in:
[ 10.379055] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 10.421245] REGS: c0000000fe667190 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 10.467599] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 10.514475] SOFTE: 1
[ 10.527498] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667410 c000000000699cb0 000000000000002c
GPR04: 0000000000000000 00000000886910b7 0000000000000008 0000000000000000
GPR08: 0000000088759576 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000001fe001018 000000000000005e
GPR24: 0000000000000174 000000000000005d 000000000000005d c0000001fe743100
GPR28: c0000001fe001000 000000000000005d c000000000643be0 000000000000005d
[ 10.893662] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 10.934287] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 10.974389] Call Trace:
[ 10.988976] [c0000000fe667410] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 11.044187] [c0000000fe6674e0] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 11.088460] [c0000000fe667580] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 11.134294] [c0000000fe667630] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 11.179088] [c0000000fe6676c0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 11.219715] [c0000000fe667750] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 11.262946] [c0000000fe667850] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 11.313468] [c0000000fe6678f0] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 11.360346] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 11.407222] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 11.453058] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 11.510873] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 11.554103] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 11.599938] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 11.640565] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 11.686396] Instruction dump:
[ 11.704106] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 11.750461] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 11.797861] ---[ end trace 093b23e746659775 ]---
[ 11.825985] irq: irq-59==>hwirq-0x3b mapping failed: -22
[ 11.857353] ------------[ cut here ]------------
[ 11.884947] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 11.927135] Modules linked in:
[ 11.945367] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 11.987557] REGS: c0000000fe666fb0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 12.033911] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 12.080787] SOFTE: 1
[ 12.093810] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667230 c000000000699cb0 000000000000002c
GPR04: 0000000000000000 000000008ae64d23 0000000000000008 0000000000000000
GPR08: 000000008af2dcbb 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000001fe001018 000000000000003c
GPR24: 00000000000000ec 000000000000003b 000000000000003b c0000001fe743600
GPR28: c0000001fe001000 000000000000003b c000000000643be0 000000000000003b
[ 12.459974] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 12.500599] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 12.540701] Call Trace:
[ 12.555288] [c0000000fe667230] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 12.610499] [c0000000fe667300] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 12.654772] [c0000000fe6673a0] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 12.700607] [c0000000fe667450] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 12.745400] [c0000000fe6674e0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 12.786027] [c0000000fe667570] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 12.829258] [c0000000fe667670] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 12.879780] [c0000000fe667710] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 12.926658] [c0000000fe667800] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 12.973534] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 13.020411] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 13.067288] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 13.113125] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 13.170939] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 13.214169] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 13.260005] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 13.300631] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 13.346462] Instruction dump:
[ 13.364172] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 13.410527] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 13.457926] ---[ end trace 093b23e746659776 ]---
[ 13.486091] irq: irq-20==>hwirq-0x2 mapping failed: -22
[ 13.516898] ------------[ cut here ]------------
[ 13.544492] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 13.586680] Modules linked in:
[ 13.604912] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 13.647101] REGS: c0000000fe666ec0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 13.693456] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 13.740333] SOFTE: 1
[ 13.753356] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667140 c000000000699cb0 000000000000002b
GPR04: 0000000000000000 000000008d89b97c 0000000000000008 0000000000000000
GPR08: 000000008d9612d7 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000001fe001018 0000000000000015
GPR24: 0000000000000008 0000000000000002 0000000000000014 c0000001fe743900
GPR28: c0000001fe001000 0000000000000014 c000000000643be0 0000000000000002
[ 14.119519] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 14.160144] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 14.200246] Call Trace:
[ 14.214833] [c0000000fe667140] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 14.270044] [c0000000fe667210] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 14.314317] [c0000000fe6672b0] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 14.360152] [c0000000fe667360] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 14.404945] [c0000000fe6673f0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 14.445571] [c0000000fe667480] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 14.488802] [c0000000fe667580] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 14.539325] [c0000000fe667620] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 14.586202] [c0000000fe667710] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 14.633079] [c0000000fe667800] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 14.679956] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 14.726833] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 14.773710] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 14.819546] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 14.877361] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 14.920591] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 14.966426] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 15.007053] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 15.052885] Instruction dump:
[ 15.070594] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 15.116950] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 15.164348] ---[ end trace 093b23e746659777 ]---
[ 15.193877] irq: irq-108==>hwirq-0x66 mapping failed: -22
[ 15.225769] ------------[ cut here ]------------
[ 15.253363] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 15.295550] Modules linked in:
[ 15.313782] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 15.355972] REGS: c0000000fe6670a0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 15.402326] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 15.449202] SOFTE: 1
[ 15.462226] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667320 c000000000699cb0 000000000000002d
GPR04: 0000000000000000 0000000090406ac4 0000000000000008 0000000000000000
GPR08: 00000000904d5a9f 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000001fe001018 000000000000006d
GPR24: 0000000000000198 0000000000000066 000000000000006c c0000001fe74c400
GPR28: c0000001fe001000 000000000000006c c000000000643be0 0000000000000066
[ 15.828389] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 15.869013] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 15.909117] Call Trace:
[ 15.923704] [c0000000fe667320] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 15.978914] [c0000000fe6673f0] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 16.023187] [c0000000fe667490] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 16.069022] [c0000000fe667540] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 16.113814] [c0000000fe6675d0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 16.154441] [c0000000fe667660] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 16.197673] [c0000000fe667760] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 16.248196] [c0000000fe667800] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 16.295072] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 16.341949] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 16.388826] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 16.434662] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 16.492476] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 16.535707] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 16.581542] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 16.622168] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 16.668000] Instruction dump:
[ 16.685710] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 16.732066] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 16.779464] ---[ end trace 093b23e746659778 ]---
[ 16.807242] irq: irq-110==>hwirq-0x6e mapping failed: -22
[ 16.839373] ------------[ cut here ]------------
[ 16.866968] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 16.909155] Modules linked in:
[ 16.927387] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 16.969576] REGS: c0000000fe6670a0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 17.015931] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 17.062808] SOFTE: 1
[ 17.075831] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667320 c000000000699cb0 000000000000002d
GPR04: 0000000000000000 0000000092d124ca 0000000000000008 0000000000000000
GPR08: 0000000092dddfc6 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000001fe001018 000000000000006f
GPR24: 00000000000001b8 000000000000006e 000000000000006e c0000001fe74c400
GPR28: c0000001fe001000 000000000000006e c000000000643be0 000000000000006e
[ 17.441994] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 17.482619] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 17.522722] Call Trace:
[ 17.537310] [c0000000fe667320] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 17.592520] [c0000000fe6673f0] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 17.636792] [c0000000fe667490] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 17.682627] [c0000000fe667540] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 17.727421] [c0000000fe6675d0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 17.768047] [c0000000fe667660] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 17.811278] [c0000000fe667760] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 17.861801] [c0000000fe667800] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 17.908678] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 17.955555] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 18.002431] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 18.048268] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 18.106082] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 18.149312] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 18.195148] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 18.235775] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 18.281606] Instruction dump:
[ 18.299315] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 18.345671] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 18.393070] ---[ end trace 093b23e746659779 ]---
[ 18.420872] irq: irq-42==>hwirq-0x27 mapping failed: -22
[ 18.452457] ------------[ cut here ]------------
[ 18.480052] WARNING: at /usr/src/linux-3.8.6-aufs/kernel/irq/irqdomain.c:467
[ 18.522241] Modules linked in:
[ 18.540472] NIP: c0000000000bdeac LR: c0000000000bdea8 CTR: c000000000025670
[ 18.582662] REGS: c0000000fe6670a0 TRAP: 0700 Tainted: G W (3.8.6-aufs)
[ 18.629016] MSR: 9000000000029032 <SF,HV,EE,ME,IR,DR,RI> CR: 84000024 XER: 00000000
[ 18.675893] SOFTE: 1
[ 18.688916] TASK = c0000000fe668000[1] 'swapper/0' THREAD: c0000000fe664000 CPU: 0
GPR00: c0000000000bdea8 c0000000fe667320 c000000000699cb0 000000000000002c
GPR04: 0000000000000000 000000009561a9f3 0000000000000008 0000000000000000
GPR08: 00000000956e2ec4 0000000000000000 0000000000000000 0000000000000000
GPR12: d000070000000000 c00000000fffb000 c00000000000a460 0000000000000000
GPR16: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
GPR20: 0000000000000000 0000000000000000 c0000001fe001018 000000000000002b
GPR24: 000000000000009c 0000000000000027 000000000000002a c0000001fe74c500
GPR28: c0000001fe001000 000000000000002a c000000000643be0 0000000000000027
[ 19.055078] NIP [c0000000000bdeac] .irq_domain_associate_many+0x264/0x290
[ 19.095704] LR [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290
[ 19.135807] Call Trace:
[ 19.150394] [c0000000fe667320] [c0000000000bdea8] .irq_domain_associate_many+0x260/0x290 (unreliable)
[ 19.205604] [c0000000fe6673f0] [c0000000000be928] .irq_create_mapping+0xc8/0x1d0
[ 19.249876] [c0000000fe667490] [c0000000000bead8] .irq_create_of_mapping+0xa8/0x170
[ 19.295712] [c0000000fe667540] [c000000000290c30] .irq_of_parse_and_map+0x40/0x58
[ 19.340505] [c0000000fe6675d0] [c000000000290df0] .of_irq_count+0x30/0x58
[ 19.381131] [c0000000fe667660] [c00000000029182c] .of_device_alloc+0x1ec/0x288
[ 19.424363] [c0000000fe667760] [c00000000029191c] .of_platform_device_create_pdata+0x54/0xf8
[ 19.474886] [c0000000fe667800] [c000000000291b04] .of_platform_bus_create+0x144/0x1e0
[ 19.521763] [c0000000fe6678f0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 19.568640] [c0000000fe6679e0] [c000000000291b60] .of_platform_bus_create+0x1a0/0x1e0
[ 19.615516] [c0000000fe667ad0] [c000000000291d50] .of_platform_bus_probe+0xd0/0x140
[ 19.661353] [c0000000fe667b70] [c0000000004109e4] .__machine_initcall_cell_cell_publish_devices+0x54/0x1b0
[ 19.719167] [c0000000fe667c40] [c000000000009e70] .do_one_initcall+0x168/0x1d0
[ 19.762397] [c0000000fe667d00] [c0000000003ffb6c] .kernel_init_freeable+0x14c/0x21c
[ 19.808233] [c0000000fe667db0] [c00000000000a47c] .kernel_init+0x1c/0x108
[ 19.848859] [c0000000fe667e30] [c000000000008cd8] .ret_from_kernel_thread+0x64/0x8c
[ 19.894691] Instruction dump:
[ 19.912401] 7fa4eb78 7ca507b4 4828c965 60000000 0fe00000 3860ffea 4bffff80 e87e8020
[ 19.958756] 7fa4eb78 7fe5fb78 4828c945 60000000 <0fe00000> 39200000 7f83e378 7f44d378
[ 20.006154] ---[ end trace 093b23e74665977a ]---
[ 20.033998] iommu: missing iommu for <no-node> (node -1)
[ 20.065580] iommu: missing iommu for <no-node> (node -1)
[ 20.097448] axon_msi: setup MSIC on /axon@10000000000/plb5/msic@4000004400003000
[ 20.097647] axon_msi: setup MSIC on /axon@30000000000/plb5/msic@4000004400003000
[ 20.098925] bio: create slab <bio-0> at 0
[ 20.122808] vgaarb: loaded
[ 20.138920] Switching to clocksource timebase
[ 20.171194] NET: Registered protocol family 2
[ 20.197448] TCP established hash table entries: 65536 (order: 8, 1048576 bytes)
[ 20.242041] TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
[ 20.284006] TCP: Hash tables configured (established 65536 bind 65536)
[ 20.322737] TCP: reno registered
[ 20.341968] UDP hash table entries: 4096 (order: 5, 131072 bytes)
[ 20.378547] UDP-Lite hash table entries: 4096 (order: 5, 131072 bytes)
[ 20.417767] PCI: CLS 0 bytes, default 128
[ 20.417908] Unpacking initramfs...
[ 20.998378] Freeing initrd memory: 9976k freed
[ 21.026844] iommu: missing iommu for <no-node> (node -1)
[ 21.058400] Setting up PCI bus /axon@10000000000/plb5/plb4/pcix@4000004600000000
[ 21.102499] PCI host bridge /axon@10000000000/plb5/plb4/pcix@4000004600000000 ranges:
[ 21.149865] IO 0x0000014608000000..0x000001460800ffff -> 0x0000000000000000
[ 21.192573] MEM 0x0000014780000000..0x00000147bfffffff -> 0x0000000080000000
[ 21.235804] MEM 0x00000147c0000000..0x00000147ffffffff -> 0x00000000c0000000 Prefetch
[ 21.283303] of-pci 14600000000.pcix: PCI host bridge to bus 0000:00
[ 21.320704] pci_bus 0000:00: root bus resource [io 0x10000-0x1ffff] (bus address [0x0000-0xffff])
[ 21.374351] pci_bus 0000:00: root bus resource [mem 0x14780000000-0x147bfffffff] (bus address [0x80000000-0xbfffffff])
[ 21.438415] pci_bus 0000:00: root bus resource [mem 0x147c0000000-0x147ffffffff pref] (bus address [0xc0000000-0xffffffff])
[ 21.505081] pci_bus 0000:00: root bus resource [bus 00-ff]
[ 21.537895] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to ff
[ 21.537995] pci 0000:00:01.0: [14e4:16a8] type 00 class 0x020000
[ 21.538100] pci 0000:00:01.0: reg 10: [mem 0x14780000000-0x1478000ffff 64bit]
[ 21.538535] pci 0000:00:01.0: PME# supported from D3hot D3cold
[ 21.538676] pci 0000:00:01.1: [14e4:16a8] type 00 class 0x020000
[ 21.538785] pci 0000:00:01.1: reg 10: [mem 0x14780010000-0x1478001ffff 64bit]
[ 21.539213] pci 0000:00:01.1: PME# supported from D3hot D3cold
[ 21.539379] pci_bus 0000:00: busn_res: [bus 00-ff] end is updated to 00
[ 21.539606] Setting up PCI bus /axon@10000000000/plb5/pciex@a00000a000000000
[ 21.581406] PCI host bridge /axon@10000000000/plb5/pciex@a00000a000000000 ranges:
[ 21.626704] IO 0x000001a100000000..0x000001a10000ffff -> 0x0000000000000000
[ 21.669416] MEM 0x000001c080000000..0x000001c0bfffffff -> 0x0000000080000000
[ 21.712642] MEM 0x000001c0c0000000..0x000001c0ffffffff -> 0x00000000c0000000 Prefetch
[ 21.760128] of-pci D18000002400.pciex: PCI host bridge to bus 0001:00
[ 21.798585] pci_bus 0001:00: root bus resource [io 0x21000-0x30fff] (bus address [0x0000-0xffff])
[ 21.852232] pci_bus 0001:00: root bus resource [mem 0x1c080000000-0x1c0bfffffff] (bus address [0x80000000-0xbfffffff])
[ 21.916296] pci_bus 0001:00: root bus resource [mem 0x1c0c0000000-0x1c0ffffffff pref] (bus address [0xc0000000-0xffffffff])
[ 21.982968] pci_bus 0001:00: root bus resource [bus 00-ff]
[ 22.015778] pci_bus 0001:00: busn_res: [bus 00-ff] end is updated to ff
[ 22.015874] pci 0001:00:00.0: [1014:032c] type 01 class 0x060400
[ 22.015969] pci 0001:00:00.0: reg 10: [mem 0x00000000-0x7fffffff 64bit pref]
[ 22.016023] pci 0001:00:00.0: reg 38: [mem 0x1c0ffff8000-0x1c0ffffffff pref]
[ 22.016091] PCI: Hiding resources on Axon PCIE RC 0001:00:00.0
[ 22.016322] pci 0001:00:00.0: supports D1 D2
[ 22.016329] pci 0001:00:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 22.016469] irq: no irq domain found for /axon@10000000000/plb5/pciex-utl@a00000a000004000 !
[ 22.066811] pci 0001:00:00.0: PCI bridge to [bus 01]
[ 22.096348] pci_bus 0001:00: busn_res: [bus 00-ff] end is updated to 01
[ 22.096492] Setting up PCI bus /axon@10000000000/plb5/pciex@a00000a200000000
[ 22.138454] PCI host bridge /axon@10000000000/plb5/pciex@a00000a200000000 ranges:
[ 22.183757] IO 0x000001a300000000..0x000001a30000ffff -> 0x0000000000000000
[ 22.226467] MEM 0x000001d080000000..0x000001d0bfffffff -> 0x0000000080000000
[ 22.269700] MEM 0x000001d0c0000000..0x000001d0ffffffff -> 0x00000000c0000000 Prefetch
[ 22.317183] of-pci D18000002800.pciex: PCI host bridge to bus 0002:00
[ 22.355637] pci_bus 0002:00: root bus resource [io 0x32000-0x41fff] (bus address [0x0000-0xffff])
[ 22.409286] pci_bus 0002:00: root bus resource [mem 0x1d080000000-0x1d0bfffffff] (bus address [0x80000000-0xbfffffff])
[ 22.473351] pci_bus 0002:00: root bus resource [mem 0x1d0c0000000-0x1d0ffffffff pref] (bus address [0xc0000000-0xffffffff])
[ 22.540019] pci_bus 0002:00: root bus resource [bus 00-ff]
[ 22.572831] pci_bus 0002:00: busn_res: [bus 00-ff] end is updated to ff
[ 22.572925] pci 0002:00:00.0: [1014:032c] type 01 class 0x060400
[ 22.573019] pci 0002:00:00.0: reg 10: [mem 0x00000000-0x7fffffff 64bit pref]
[ 22.573072] pci 0002:00:00.0: reg 38: [mem 0x1d0ffff8000-0x1d0ffffffff pref]
[ 22.573139] PCI: Hiding resources on Axon PCIE RC 0002:00:00.0
[ 22.573370] pci 0002:00:00.0: supports D1 D2
[ 22.573377] pci 0002:00:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 22.573513] irq: no irq domain found for /axon@10000000000/plb5/pciex-utl@a00000a200004000 !
[ 22.623873] pci 0002:00:00.0: PCI bridge to [bus 01]
[ 22.653403] pci_bus 0002:00: busn_res: [bus 00-ff] end is updated to 01
[ 22.653571] Setting up PCI bus /axon@30000000000/plb5/plb4/pcix@4000004600000000
[ 22.697598] PCI host bridge /axon@30000000000/plb5/plb4/pcix@4000004600000000 ranges:
[ 22.744978] IO 0x0000034608000000..0x000003460800ffff -> 0x0000000000000000
[ 22.787688] MEM 0x0000034780000000..0x00000347bfffffff -> 0x0000000080000000
[ 22.830920] MEM 0x00000347c0000000..0x00000347ffffffff -> 0x00000000c0000000 Prefetch
[ 22.878412] of-pci 34600000000.pcix: PCI host bridge to bus 0003:00
[ 22.915816] pci_bus 0003:00: root bus resource [io 0x43000-0x52fff] (bus address [0x0000-0xffff])
[ 22.969462] pci_bus 0003:00: root bus resource [mem 0x34780000000-0x347bfffffff] (bus address [0x80000000-0xbfffffff])
[ 23.033529] pci_bus 0003:00: root bus resource [mem 0x347c0000000-0x347ffffffff pref] (bus address [0xc0000000-0xffffffff])
[ 23.100200] pci_bus 0003:00: root bus resource [bus 00-ff]
[ 23.133010] pci_bus 0003:00: busn_res: [bus 00-ff] end is updated to ff
[ 23.133069] pci 0003:00:01.0: [1033:0035] type 00 class 0x0c0310
[ 23.133151] pci 0003:00:01.0: reg 10: [mem 0x34780000000-0x34780000fff]
[ 23.133512] pci 0003:00:01.0: supports D1 D2
[ 23.133520] pci 0003:00:01.0: PME# supported from D0 D1 D2 D3hot
[ 23.133611] pci 0003:00:01.1: [1033:0035] type 00 class 0x0c0310
[ 23.133691] pci 0003:00:01.1: reg 10: [mem 0x34780001000-0x34780001fff]
[ 23.134068] pci 0003:00:01.1: supports D1 D2
[ 23.134076] pci 0003:00:01.1: PME# supported from D0 D1 D2 D3hot
[ 23.134167] pci 0003:00:01.2: [1033:00e0] type 00 class 0x0c0320
[ 23.134247] pci 0003:00:01.2: reg 10: [mem 0x34780002000-0x347800020ff]
[ 23.134605] pci 0003:00:01.2: supports D1 D2
[ 23.134612] pci 0003:00:01.2: PME# supported from D0 D1 D2 D3hot
[ 23.134776] pci_bus 0003:00: busn_res: [bus 00-ff] end is updated to 00
[ 23.236836] pci 0003:00:01.2: enabling device (0140 -> 0142)
[ 23.270411] Setting up PCI bus /axon@30000000000/plb5/pciex@a00000a000000000
[ 23.312464] PCI host bridge /axon@30000000000/plb5/pciex@a00000a000000000 ranges:
[ 23.357765] IO 0x000003a100000000..0x000003a10000ffff -> 0x0000000000000000
[ 23.400470] MEM 0x000003c080000000..0x000003c0bfffffff -> 0x0000000080000000
[ 23.443702] MEM 0x000003c0c0000000..0x000003c0ffffffff -> 0x00000000c0000000 Prefetch
[ 23.491188] of-pci D38000002400.pciex: PCI host bridge to bus 0004:00
[ 23.529643] pci_bus 0004:00: root bus resource [io 0x54000-0x63fff] (bus address [0x0000-0xffff])
[ 23.583289] pci_bus 0004:00: root bus resource [mem 0x3c080000000-0x3c0bfffffff] (bus address [0x80000000-0xbfffffff])
[ 23.647356] pci_bus 0004:00: root bus resource [mem 0x3c0c0000000-0x3c0ffffffff pref] (bus address [0xc0000000-0xffffffff])
[ 23.714024] pci_bus 0004:00: root bus resource [bus 00-ff]
[ 23.746836] pci_bus 0004:00: busn_res: [bus 00-ff] end is updated to ff
[ 23.746935] pci 0004:00:00.0: [1014:032c] type 01 class 0x060400
[ 23.747035] pci 0004:00:00.0: reg 10: [mem 0x00000000-0x7fffffff 64bit pref]
[ 23.747093] pci 0004:00:00.0: reg 38: [mem 0x3c0ffff8000-0x3c0ffffffff pref]
[ 23.747163] PCI: Hiding resources on Axon PCIE RC 0004:00:00.0
[ 23.747409] pci 0004:00:00.0: supports D1 D2
[ 23.747416] pci 0004:00:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 23.747563] irq: no irq domain found for /axon@30000000000/plb5/pciex-utl@a00000a000004000 !
[ 23.797937] pci 0004:00:00.0: PCI bridge to [bus 01]
[ 23.827465] pci_bus 0004:00: busn_res: [bus 00-ff] end is updated to 01
[ 23.827605] Setting up PCI bus /axon@30000000000/plb5/pciex@a00000a200000000
[ 23.869564] PCI host bridge /axon@30000000000/plb5/pciex@a00000a200000000 ranges:
[ 23.914870] IO 0x000003a300000000..0x000003a30000ffff -> 0x0000000000000000
[ 23.957576] MEM 0x000003d080000000..0x000003d0bfffffff -> 0x0000000080000000
[ 24.000807] MEM 0x000003d0c0000000..0x000003d0ffffffff -> 0x00000000c0000000 Prefetch
[ 24.048303] of-pci D38000002800.pciex: PCI host bridge to bus 0005:00
[ 24.086747] pci_bus 0005:00: root bus resource [io 0x65000-0x74fff] (bus address [0x0000-0xffff])
[ 24.140395] pci_bus 0005:00: root bus resource [mem 0x3d080000000-0x3d0bfffffff] (bus address [0x80000000-0xbfffffff])
[ 24.204462] pci_bus 0005:00: root bus resource [mem 0x3d0c0000000-0x3d0ffffffff pref] (bus address [0xc0000000-0xffffffff])
[ 24.271129] pci_bus 0005:00: root bus resource [bus 00-ff]
[ 24.303941] pci_bus 0005:00: busn_res: [bus 00-ff] end is updated to ff
[ 24.304047] pci 0005:00:00.0: [1014:032c] type 01 class 0x060400
[ 24.304146] pci 0005:00:00.0: reg 10: [mem 0x00000000-0x7fffffff 64bit pref]
[ 24.304203] pci 0005:00:00.0: reg 38: [mem 0x3d0ffff8000-0x3d0ffffffff pref]
[ 24.304272] PCI: Hiding resources on Axon PCIE RC 0005:00:00.0
[ 24.304517] pci 0005:00:00.0: supports D1 D2
[ 24.304524] pci 0005:00:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 24.304664] irq: no irq domain found for /axon@30000000000/plb5/pciex-utl@a00000a200004000 !
[ 24.355200] pci 0005:01:00.0: [15b3:634a] type 00 class 0x0c0600
[ 24.355378] pci 0005:01:00.0: reg 10: [mem 0x3d080000000-0x3d0800fffff 64bit]
[ 24.355524] pci 0005:01:00.0: reg 18: [mem 0x3d0c0000000-0x3d0c1ffffff 64bit pref]
[ 24.356526] pci 0005:00:00.0: PCI bridge to [bus 01]
[ 24.385809] pci 0005:00:00.0: bridge window [mem 0x3d080000000-0x3d0800fffff]
[ 24.385844] pci 0005:00:00.0: bridge window [mem 0x3d0c0000000-0x3d0c1ffffff 64bit pref]
[ 24.385934] pci_bus 0005:00: busn_res: [bus 00-ff] end is updated to 01
[ 24.386274] iommu: missing iommu for <no-node> (node -1)
[ 24.423030] iommu: missing iommu for <no-node> (node -1)
[ 24.463050] msgmni has been set to 15888
[ 24.500072] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[ 24.543980] io scheduler noop registered
[ 24.567417] io scheduler deadline registered
[ 24.593225] io scheduler cfq registered (default)
[ 24.664957] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[ 24.702646] iommu: missing iommu for <no-node> (node -1)
[ 24.756219] serial8250.0: ttyS0 at MMIO 0x14540000200 (irq = 16) is a U6_16550A
[ 24.799650] console [ttyS0] enabled, bootconsole disabled
[ 24.885615] serial8250.0: ttyS1 at MMIO 0x14540000300 (irq = 17) is a U6_16550A
[ 24.950843] serial8250.0: ttyS2 at MMIO 0x34540000200 (irq = 18) is a U6_16550A
[ 25.016425] serial8250.0: ttyS3 at MMIO 0x34540000300 (irq = 19) is a U6_16550A
[ 25.061120] mousedev: PS/2 mouse device common for all mice
[ 25.094572] cpuidle: using governor ladder
[ 25.119166] cpuidle: using governor menu
[ 25.143019] TCP: cubic registered
[ 25.162962] Key type dns_resolver registered
[ 25.191007] /usr/src/linux-3.8.6-aufs/drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
[ 25.246286] Freeing unused kernel memory: 2072k freed
[ 25.598515] dracut: dracut-027-ebfd8cd
[ 25.870831] RPC: Registered named UNIX socket transport module.
[ 25.906410] RPC: Registered udp transport module.
[ 25.934647] RPC: Registered tcp transport module.
[ 25.962878] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 26.060180] NET: Registered protocol family 1
[ 26.128272] NET: Registered protocol family 10
[ 26.288658] systemd-udevd[143]: starting version 200
[ 26.565854] pps_core: LinuxPPS API ver. 1 registered
[ 26.595737] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 26.657618] PTP clock support registered
[ 26.720952] tg3.c:v3.128 (December 03, 2012)
[ 26.746875] tg3 0000:00:01.0: enabling device (0140 -> 0142)
[ 26.812886] tg3 0000:00:01.0 eth0: Tigon3 [partno(none) rev 2100] (PCIX:100MHz:64-bit) MAC address 00:1a:64:b8:08:18
[ 26.876142] tg3 0000:00:01.0 eth0: attached PHY is serdes (1000Base-SX Ethernet) (WireSpeed[0], EEE[0])
[ 26.932674] tg3 0000:00:01.0 eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[0]
[ 26.942744] usbcore: registered new interface driver usbfs
[ 26.942899] usbcore: registered new interface driver hub
[ 27.044642] tg3 0000:00:01.0 eth0: dma_rwctrl[769f4000] dma_mask[64-bit]
[ 27.085684] usbcore: registered new device driver usb
[ 27.101276] tg3 0000:00:01.1: enabling device (0140 -> 0142)
[ 27.110440] tg3 0000:00:01.1 eth1: Tigon3 [partno(none) rev 2100] (PCIX:100MHz:64-bit) MAC address 00:1a:64:b8:08:19
[ 27.110454] tg3 0000:00:01.1 eth1: attached PHY is serdes (1000Base-SX Ethernet) (WireSpeed[0], EEE[0])
[ 27.110467] tg3 0000:00:01.1 eth1: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[0] TSOcap[1]
[ 27.110479] tg3 0000:00:01.1 eth1: dma_rwctrl[769f4000] dma_mask[64-bit]
[ 27.371083] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 27.413388] ehci-pci: EHCI PCI platform driver
[ 27.444298] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[ 27.483890] ehci-pci 0003:00:01.2: EHCI Host Controller
[ 27.515594] ehci-pci 0003:00:01.2: new USB bus registered, assigned bus number 1
[ 27.561329] ehci-pci 0003:00:01.2: irq 21, io mem 0x34780002000
[ 27.602979] ehci-pci 0003:00:01.2: USB 2.0 started, EHCI 1.00
[ 27.639547] hub 1-0:1.0: USB hub found
[ 27.662086] hub 1-0:1.0: 5 ports detected
[ 27.687335] ohci_hcd 0003:00:01.0: OHCI Host Controller
[ 27.718695] ohci_hcd 0003:00:01.0: new USB bus registered, assigned bus number 2
[ 27.763128] ohci_hcd 0003:00:01.0: irq 21, io mem 0x34780000000
[ 27.879080] hub 2-0:1.0: USB hub found
[ 27.901608] hub 2-0:1.0: 3 ports detected
[ 27.926261] ohci_hcd 0003:00:01.1: OHCI Host Controller
[ 27.957619] ohci_hcd 0003:00:01.1: new USB bus registered, assigned bus number 3
[ 27.957668] ohci_hcd 0003:00:01.1: irq 21, io mem 0x34780001000
[ 28.037674] hub 3-0:1.0: USB hub found
[ 28.037699] hub 3-0:1.0: 2 ports detected
[ 28.932303] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 28.995421] NET: Registered protocol family 17
[ 29.935487] tg3 0000:00:01.0 eth0: Link is up at 1000 Mbps, full duplex
[ 29.975345] tg3 0000:00:01.0 eth0: Flow control is on for TX and on for RX
[ 30.017138] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 33.536157] FS-Cache: Loaded
[ 33.579120] FS-Cache: Netfs 'nfs' registered for caching
[ 33.644356] NFS: Registering the id_resolver key type
[ 33.674914] Key type id_resolver registered
[ 33.700043] Key type id_legacy registered
[ 34.603362] dracut: Mounted root filesystem 192.168.100.1:/export/gentoo/root-ppc64
[ 35.043969] dracut: Switching root
[ 36.916516] systemd-udevd[375]: starting version 200
[ 37.676340] systemd-udevd[387]: renamed network interface eth1 to enp0s1f1
[ 37.906905] rtc-generic rtc-generic: rtc core: registered rtc-generic as rtc0
[ 37.980118] mlx4_core: Mellanox ConnectX core driver v1.1 (Dec, 2011)
[ 37.980232] mlx4_core: Initializing 0005:01:00.0
[ 37.980484] mlx4_core 0005:01:00.0: enabling device (0140 -> 0142)
[ 43.360940] mlx4_core 0005:01:00.0: command 0xc failed: fw status = 0x40
[ 43.361874] mlx4_core 0005:01:00.0: command 0xc failed: fw status = 0x40
[ 45.330025] <mlx4_ib> mlx4_ib_add: mlx4_ib: Mellanox ConnectX InfiniBand driver v1.0 (April 4, 2008)
[ 54.036776] mlx4_core 0005:01:00.0: command 0x5a failed: fw status = 0x2
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox