* [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 @ 2014-09-29 16:48 Guenter Roeck 2014-09-29 18:36 ` Scott Wood 0 siblings, 1 reply; 14+ messages in thread From: Guenter Roeck @ 2014-09-29 16:48 UTC (permalink / raw) To: Benjamin Herrenschmidt Cc: linux-kernel, Guenter Roeck, Paul Mackerras, Scott Wood, linuxppc-dev, Guenter Roeck, Jojy G Varghese From: Jojy G Varghese <jojyv@juniper.net> For E500MC and E5500, a machine check exception in pci(e) memory space crashes the kernel. Testing shows that the MCAR(U) register is zero on a MC exception for the E5500 core. At the same time, DEAR register has been found to have the address of the faulty load address during an MC exception for this core. This fix changes the current behavior to fixup the result register and instruction pointers in the case of a load operation on a faulty PCI address. The changes are: - Added the hook to pci machine check handing to the e500mc machine check exception handler. - For the E5500 core, load faulting address from SPRN_DEAR register. As mentioned above, this is necessary because the E5500 core does not report the fault address in the MCAR register. Cc: Scott Wood <scottwood@freescale.com> Signed-off-by: Jojy G Varghese <jojyv@juniper.net> [Guenter Roeck: updated description] Signed-off-by: Guenter Roeck <groeck@juniper.net> Signed-off-by: Guenter Roeck <linux@roeck-us.net> --- arch/powerpc/kernel/traps.c | 3 ++- arch/powerpc/sysdev/fsl_pci.c | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c index 0dc43f9..ecb709b 100644 --- a/arch/powerpc/kernel/traps.c +++ b/arch/powerpc/kernel/traps.c @@ -494,7 +494,8 @@ int machine_check_e500mc(struct pt_regs *regs) int recoverable = 1; if (reason & MCSR_LD) { - recoverable = fsl_rio_mcheck_exception(regs); + recoverable = fsl_rio_mcheck_exception(regs) || + fsl_pci_mcheck_exception(regs); if (recoverable == 1) goto silent_out; } diff --git a/arch/powerpc/sysdev/fsl_pci.c b/arch/powerpc/sysdev/fsl_pci.c index c507767..bdb956b 100644 --- a/arch/powerpc/sysdev/fsl_pci.c +++ b/arch/powerpc/sysdev/fsl_pci.c @@ -1021,6 +1021,11 @@ int fsl_pci_mcheck_exception(struct pt_regs *regs) #endif addr += mfspr(SPRN_MCAR); +#ifdef CONFIG_E5500_CPU + if (mfspr(SPRN_EPCR) & SPRN_EPCR_ICM) + addr = PFN_PHYS(vmalloc_to_pfn((void *)mfspr(SPRN_DEAR))); +#endif + if (is_in_pci_mem_space(addr)) { if (user_mode(regs)) { pagefault_disable(); -- 1.9.1 ^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-29 16:48 [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 Guenter Roeck @ 2014-09-29 18:36 ` Scott Wood 2014-09-29 19:06 ` Guenter Roeck 2014-10-08 3:08 ` Hongtao Jia 0 siblings, 2 replies; 14+ messages in thread From: Scott Wood @ 2014-09-29 18:36 UTC (permalink / raw) To: Guenter Roeck Cc: hongtao.jia, linux-kernel, Guenter Roeck, Paul Mackerras, linuxppc-dev, Jojy G Varghese On Mon, 2014-09-29 at 09:48 -0700, Guenter Roeck wrote: > From: Jojy G Varghese <jojyv@juniper.net> > > For E500MC and E5500, a machine check exception in pci(e) memory space > crashes the kernel. > > Testing shows that the MCAR(U) register is zero on a MC exception for the > E5500 core. At the same time, DEAR register has been found to have the > address of the faulty load address during an MC exception for this core. > > This fix changes the current behavior to fixup the result register > and instruction pointers in the case of a load operation on a faulty > PCI address. > > The changes are: > - Added the hook to pci machine check handing to the e500mc machine check > exception handler. > - For the E5500 core, load faulting address from SPRN_DEAR register. > As mentioned above, this is necessary because the E5500 core does not > report the fault address in the MCAR register. > > Cc: Scott Wood <scottwood@freescale.com> > Signed-off-by: Jojy G Varghese <jojyv@juniper.net> > [Guenter Roeck: updated description] > Signed-off-by: Guenter Roeck <groeck@juniper.net> > Signed-off-by: Guenter Roeck <linux@roeck-us.net> > --- > arch/powerpc/kernel/traps.c | 3 ++- > arch/powerpc/sysdev/fsl_pci.c | 5 +++++ > 2 files changed, 7 insertions(+), 1 deletion(-) > > diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c > index 0dc43f9..ecb709b 100644 > --- a/arch/powerpc/kernel/traps.c > +++ b/arch/powerpc/kernel/traps.c > @@ -494,7 +494,8 @@ int machine_check_e500mc(struct pt_regs *regs) > int recoverable = 1; > > if (reason & MCSR_LD) { > - recoverable = fsl_rio_mcheck_exception(regs); > + recoverable = fsl_rio_mcheck_exception(regs) || > + fsl_pci_mcheck_exception(regs); > if (recoverable == 1) > goto silent_out; > } > diff --git a/arch/powerpc/sysdev/fsl_pci.c b/arch/powerpc/sysdev/fsl_pci.c > index c507767..bdb956b 100644 > --- a/arch/powerpc/sysdev/fsl_pci.c > +++ b/arch/powerpc/sysdev/fsl_pci.c > @@ -1021,6 +1021,11 @@ int fsl_pci_mcheck_exception(struct pt_regs *regs) > #endif > addr += mfspr(SPRN_MCAR); > > +#ifdef CONFIG_E5500_CPU > + if (mfspr(SPRN_EPCR) & SPRN_EPCR_ICM) > + addr = PFN_PHYS(vmalloc_to_pfn((void *)mfspr(SPRN_DEAR))); > +#endif Kconfig tells you what hardware is supported, not what hardware you're actually running on. Jia Hongtao, do you know anything about this issue? Is there an erratum? What chips are affected by the the erratum covered by <http://patchwork.ozlabs.org/patch/240239/>? Can we rely on DEAR or is this just a side effect of likely having taken a TLB miss for the address recently? Perhaps we should use the instruction emulation to determine the effective address instead. Guenter, is this patch intended to deal with an erratum or are you covering up legitimate errors? -Scott ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-29 18:36 ` Scott Wood @ 2014-09-29 19:06 ` Guenter Roeck 2014-09-29 23:03 ` Jojy Varghese 2014-10-08 3:08 ` Hongtao Jia 1 sibling, 1 reply; 14+ messages in thread From: Guenter Roeck @ 2014-09-29 19:06 UTC (permalink / raw) To: Scott Wood Cc: hongtao.jia, linux-kernel, Guenter Roeck, Paul Mackerras, linuxppc-dev, Jojy G Varghese On Mon, Sep 29, 2014 at 01:36:06PM -0500, Scott Wood wrote: > On Mon, 2014-09-29 at 09:48 -0700, Guenter Roeck wrote: > > From: Jojy G Varghese <jojyv@juniper.net> > > > > For E500MC and E5500, a machine check exception in pci(e) memory space > > crashes the kernel. > > > > Testing shows that the MCAR(U) register is zero on a MC exception for the > > E5500 core. At the same time, DEAR register has been found to have the > > address of the faulty load address during an MC exception for this core. > > > > This fix changes the current behavior to fixup the result register > > and instruction pointers in the case of a load operation on a faulty > > PCI address. > > > > The changes are: > > - Added the hook to pci machine check handing to the e500mc machine check > > exception handler. > > - For the E5500 core, load faulting address from SPRN_DEAR register. > > As mentioned above, this is necessary because the E5500 core does not > > report the fault address in the MCAR register. > > > > Cc: Scott Wood <scottwood@freescale.com> > > Signed-off-by: Jojy G Varghese <jojyv@juniper.net> > > [Guenter Roeck: updated description] > > Signed-off-by: Guenter Roeck <groeck@juniper.net> > > Signed-off-by: Guenter Roeck <linux@roeck-us.net> > > --- > > arch/powerpc/kernel/traps.c | 3 ++- > > arch/powerpc/sysdev/fsl_pci.c | 5 +++++ > > 2 files changed, 7 insertions(+), 1 deletion(-) > > > > diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c > > index 0dc43f9..ecb709b 100644 > > --- a/arch/powerpc/kernel/traps.c > > +++ b/arch/powerpc/kernel/traps.c > > @@ -494,7 +494,8 @@ int machine_check_e500mc(struct pt_regs *regs) > > int recoverable = 1; > > > > if (reason & MCSR_LD) { > > - recoverable = fsl_rio_mcheck_exception(regs); > > + recoverable = fsl_rio_mcheck_exception(regs) || > > + fsl_pci_mcheck_exception(regs); > > if (recoverable == 1) > > goto silent_out; > > } > > diff --git a/arch/powerpc/sysdev/fsl_pci.c b/arch/powerpc/sysdev/fsl_pci.c > > index c507767..bdb956b 100644 > > --- a/arch/powerpc/sysdev/fsl_pci.c > > +++ b/arch/powerpc/sysdev/fsl_pci.c > > @@ -1021,6 +1021,11 @@ int fsl_pci_mcheck_exception(struct pt_regs *regs) > > #endif > > addr += mfspr(SPRN_MCAR); > > > > +#ifdef CONFIG_E5500_CPU > > + if (mfspr(SPRN_EPCR) & SPRN_EPCR_ICM) > > + addr = PFN_PHYS(vmalloc_to_pfn((void *)mfspr(SPRN_DEAR))); > > +#endif > > Kconfig tells you what hardware is supported, not what hardware you're > actually running on. > Hi Scott, Good point. Jojy, guess we'll have to check if the CPU is actually an E5500. Can you look into that ? > Jia Hongtao, do you know anything about this issue? Is there an > erratum? What chips are affected by the the erratum covered by > <http://patchwork.ozlabs.org/patch/240239/>? > We already have and use the above patch(es) in our kernel. It works fine for E500 (P2020), but does not address E5500 (P5020/P5040). > Can we rely on DEAR or is this just a side effect of likely having taken > a TLB miss for the address recently? Perhaps we should use the > instruction emulation to determine the effective address instead. > > Guenter, is this patch intended to deal with an erratum or are you > covering up legitimate errors? > Those are errors related to PCIe hotplug, and are seen with unexpected PCIe device removals (triggered, for example, by removing power from a PCIe adapter). The behavior we see on E5500 is quite similar to the same behavior on E500: If unhandled, the CPU keeps executing the same instruction over and over again if there is an error on a PCIe access and thus stalls. I don't know if this is considered an erratum or expected behavior, but it is one we have to address since we have to be able to handle that condition. Ultimately, we'll want to implement PCIe error handlers for the affected drivers, but that will be a next step. Please let me know if you have a better solution to address this problem. Thanks, Guenter ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-29 19:06 ` Guenter Roeck @ 2014-09-29 23:03 ` Jojy Varghese 2014-09-29 23:31 ` Scott Wood 0 siblings, 1 reply; 14+ messages in thread From: Jojy Varghese @ 2014-09-29 23:03 UTC (permalink / raw) To: Guenter Roeck, Scott Wood Cc: hongtao.jia@freescale.com, Guenter Roeck, linux-kernel@vger.kernel.org, Paul Mackerras, linuxppc-dev@lists.ozlabs.org DQoNCk9uIDkvMjkvMTQgMTI6MDYgUE0sICJHdWVudGVyIFJvZWNrIiA8bGludXhAcm9lY2stdXMu bmV0PiB3cm90ZToNCg0KPk9uIE1vbiwgU2VwIDI5LCAyMDE0IGF0IDAxOjM2OjA2UE0gLTA1MDAs IFNjb3R0IFdvb2Qgd3JvdGU6DQo+PiBPbiBNb24sIDIwMTQtMDktMjkgYXQgMDk6NDggLTA3MDAs IEd1ZW50ZXIgUm9lY2sgd3JvdGU6DQo+PiA+IEZyb206IEpvankgRyBWYXJnaGVzZSA8am9qeXZA anVuaXBlci5uZXQ+DQo+PiA+IA0KPj4gPiBGb3IgRTUwME1DIGFuZCBFNTUwMCwgYSBtYWNoaW5l IGNoZWNrIGV4Y2VwdGlvbiBpbiBwY2koZSkgbWVtb3J5IHNwYWNlDQo+PiA+IGNyYXNoZXMgdGhl IGtlcm5lbC4NCj4+ID4gDQo+PiA+IFRlc3Rpbmcgc2hvd3MgdGhhdCB0aGUgTUNBUihVKSByZWdp c3RlciBpcyB6ZXJvIG9uIGEgTUMgZXhjZXB0aW9uIGZvcg0KPj50aGUNCj4+ID4gRTU1MDAgY29y ZS4gQXQgdGhlIHNhbWUgdGltZSwgREVBUiByZWdpc3RlciBoYXMgYmVlbiBmb3VuZCB0byBoYXZl IHRoZQ0KPj4gPiBhZGRyZXNzIG9mIHRoZSBmYXVsdHkgbG9hZCBhZGRyZXNzIGR1cmluZyBhbiBN QyBleGNlcHRpb24gZm9yIHRoaXMNCj4+Y29yZS4NCj4+ID4gDQo+PiA+IFRoaXMgZml4IGNoYW5n ZXMgdGhlIGN1cnJlbnQgYmVoYXZpb3IgdG8gZml4dXAgdGhlIHJlc3VsdCByZWdpc3Rlcg0KPj4g PiBhbmQgaW5zdHJ1Y3Rpb24gcG9pbnRlcnMgaW4gdGhlIGNhc2Ugb2YgYSBsb2FkIG9wZXJhdGlv biBvbiBhIGZhdWx0eQ0KPj4gPiBQQ0kgYWRkcmVzcy4NCj4+ID4gDQo+PiA+IFRoZSBjaGFuZ2Vz IGFyZToNCj4+ID4gLSBBZGRlZCB0aGUgaG9vayB0byBwY2kgbWFjaGluZSBjaGVjayBoYW5kaW5n IHRvIHRoZSBlNTAwbWMgbWFjaGluZQ0KPj5jaGVjaw0KPj4gPiAgIGV4Y2VwdGlvbiBoYW5kbGVy Lg0KPj4gPiAtIEZvciB0aGUgRTU1MDAgY29yZSwgbG9hZCBmYXVsdGluZyBhZGRyZXNzIGZyb20g U1BSTl9ERUFSIHJlZ2lzdGVyLg0KPj4gPiAgIEFzIG1lbnRpb25lZCBhYm92ZSwgdGhpcyBpcyBu ZWNlc3NhcnkgYmVjYXVzZSB0aGUgRTU1MDAgY29yZSBkb2VzDQo+Pm5vdA0KPj4gPiAgIHJlcG9y dCB0aGUgZmF1bHQgYWRkcmVzcyBpbiB0aGUgTUNBUiByZWdpc3Rlci4NCj4+ID4gDQo+PiA+IENj OiBTY290dCBXb29kIDxzY290dHdvb2RAZnJlZXNjYWxlLmNvbT4NCj4+ID4gU2lnbmVkLW9mZi1i eTogSm9qeSBHIFZhcmdoZXNlIDxqb2p5dkBqdW5pcGVyLm5ldD4NCj4+ID4gW0d1ZW50ZXIgUm9l Y2s6IHVwZGF0ZWQgZGVzY3JpcHRpb25dDQo+PiA+IFNpZ25lZC1vZmYtYnk6IEd1ZW50ZXIgUm9l Y2sgPGdyb2Vja0BqdW5pcGVyLm5ldD4NCj4+ID4gU2lnbmVkLW9mZi1ieTogR3VlbnRlciBSb2Vj ayA8bGludXhAcm9lY2stdXMubmV0Pg0KPj4gPiAtLS0NCj4+ID4gIGFyY2gvcG93ZXJwYy9rZXJu ZWwvdHJhcHMuYyAgIHwgMyArKy0NCj4+ID4gIGFyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX3BjaS5j IHwgNSArKysrKw0KPj4gPiAgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkNCj4+ID4gDQo+PiA+IGRpZmYgLS1naXQgYS9hcmNoL3Bvd2VycGMva2VybmVsL3Ry YXBzLmMgYi9hcmNoL3Bvd2VycGMva2VybmVsL3RyYXBzLmMNCj4+ID4gaW5kZXggMGRjNDNmOS4u ZWNiNzA5YiAxMDA2NDQNCj4+ID4gLS0tIGEvYXJjaC9wb3dlcnBjL2tlcm5lbC90cmFwcy5jDQo+ PiA+ICsrKyBiL2FyY2gvcG93ZXJwYy9rZXJuZWwvdHJhcHMuYw0KPj4gPiBAQCAtNDk0LDcgKzQ5 NCw4IEBAIGludCBtYWNoaW5lX2NoZWNrX2U1MDBtYyhzdHJ1Y3QgcHRfcmVncyAqcmVncykNCj4+ ID4gIAlpbnQgcmVjb3ZlcmFibGUgPSAxOw0KPj4gPiAgDQo+PiA+ICAJaWYgKHJlYXNvbiAmIE1D U1JfTEQpIHsNCj4+ID4gLQkJcmVjb3ZlcmFibGUgPSBmc2xfcmlvX21jaGVja19leGNlcHRpb24o cmVncyk7DQo+PiA+ICsJCXJlY292ZXJhYmxlID0gZnNsX3Jpb19tY2hlY2tfZXhjZXB0aW9uKHJl Z3MpIHx8DQo+PiA+ICsJCQlmc2xfcGNpX21jaGVja19leGNlcHRpb24ocmVncyk7DQo+PiA+ICAJ CWlmIChyZWNvdmVyYWJsZSA9PSAxKQ0KPj4gPiAgCQkJZ290byBzaWxlbnRfb3V0Ow0KPj4gPiAg CX0NCj4+ID4gZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX3BjaS5jDQo+PmIv YXJjaC9wb3dlcnBjL3N5c2Rldi9mc2xfcGNpLmMNCj4+ID4gaW5kZXggYzUwNzc2Ny4uYmRiOTU2 YiAxMDA2NDQNCj4+ID4gLS0tIGEvYXJjaC9wb3dlcnBjL3N5c2Rldi9mc2xfcGNpLmMNCj4+ID4g KysrIGIvYXJjaC9wb3dlcnBjL3N5c2Rldi9mc2xfcGNpLmMNCj4+ID4gQEAgLTEwMjEsNiArMTAy MSwxMSBAQCBpbnQgZnNsX3BjaV9tY2hlY2tfZXhjZXB0aW9uKHN0cnVjdCBwdF9yZWdzDQo+Pipy ZWdzKQ0KPj4gPiAgI2VuZGlmDQo+PiA+ICAJYWRkciArPSBtZnNwcihTUFJOX01DQVIpOw0KPj4g PiAgDQo+PiA+ICsjaWZkZWYgQ09ORklHX0U1NTAwX0NQVQ0KPj4gPiArCWlmIChtZnNwcihTUFJO X0VQQ1IpICYgU1BSTl9FUENSX0lDTSkNCj4+ID4gKwkJYWRkciA9IFBGTl9QSFlTKHZtYWxsb2Nf dG9fcGZuKCh2b2lkICopbWZzcHIoU1BSTl9ERUFSKSkpOw0KPj4gPiArI2VuZGlmDQo+PiANCj4+ IEtjb25maWcgdGVsbHMgeW91IHdoYXQgaGFyZHdhcmUgaXMgc3VwcG9ydGVkLCBub3Qgd2hhdCBo YXJkd2FyZSB5b3UncmUNCj4+IGFjdHVhbGx5IHJ1bm5pbmcgb24uDQo+PiANCj5IaSBTY290dCwN Cj4NCj5Hb29kIHBvaW50LiBKb2p5LCBndWVzcyB3ZSdsbCBoYXZlIHRvIGNoZWNrIGlmIHRoZSBD UFUgaXMgYWN0dWFsbHkgYW4NCj5FNTUwMC4NCj5DYW4geW91IGxvb2sgaW50byB0aGF0ID8NCg0K DQoiL3Byb2MvY3B1aW5mbyIgc2hvd3MgdGhlIGNwdSBhcyAiZTU1MDAiLiBTY290dCwgYXJlIHlv dSBzdWdnZXN0aW5nIHRoYXQNCndlIHVzZSBhIHJ1bnRpbWUgbWV0aG9kIG9mIGRldGVybWluaW5n IHRoZSBjcHUgdHlwZSAoY3B1X3NwZWMncyBjcHVfbmFtZQ0KZm9yDQpleGFtcGxlKS4gIA0KDQoN Cj4NCj4+IEppYSBIb25ndGFvLCBkbyB5b3Uga25vdyBhbnl0aGluZyBhYm91dCB0aGlzIGlzc3Vl PyAgSXMgdGhlcmUgYW4NCj4+IGVycmF0dW0/ICBXaGF0IGNoaXBzIGFyZSBhZmZlY3RlZCBieSB0 aGUgdGhlIGVycmF0dW0gY292ZXJlZCBieQ0KPj4gPGh0dHA6Ly9wYXRjaHdvcmsub3psYWJzLm9y Zy9wYXRjaC8yNDAyMzkvPj8NCj4+IA0KPldlIGFscmVhZHkgaGF2ZSBhbmQgdXNlIHRoZSBhYm92 ZSBwYXRjaChlcykgaW4gb3VyIGtlcm5lbC4gSXQgd29ya3MgZmluZQ0KPmZvciBFNTAwIChQMjAy MCksIGJ1dCBkb2VzIG5vdCBhZGRyZXNzIEU1NTAwIChQNTAyMC9QNTA0MCkuDQo+DQo+PiBDYW4g d2UgcmVseSBvbiBERUFSIG9yIGlzIHRoaXMganVzdCBhIHNpZGUgZWZmZWN0IG9mIGxpa2VseSBo YXZpbmcgdGFrZW4NCj4+IGEgVExCIG1pc3MgZm9yIHRoZSBhZGRyZXNzIHJlY2VudGx5PyAgUGVy aGFwcyB3ZSBzaG91bGQgdXNlIHRoZQ0KPj4gaW5zdHJ1Y3Rpb24gZW11bGF0aW9uIHRvIGRldGVy bWluZSB0aGUgZWZmZWN0aXZlIGFkZHJlc3MgaW5zdGVhZC4NCj4+IA0KPj4gR3VlbnRlciwgaXMg dGhpcyBwYXRjaCBpbnRlbmRlZCB0byBkZWFsIHdpdGggYW4gZXJyYXR1bSBvciBhcmUgeW91DQo+ PiBjb3ZlcmluZyB1cCBsZWdpdGltYXRlIGVycm9ycz8NCj4+IA0KPlRob3NlIGFyZSBlcnJvcnMg cmVsYXRlZCB0byBQQ0llIGhvdHBsdWcsIGFuZCBhcmUgc2VlbiB3aXRoIHVuZXhwZWN0ZWQNCj5Q Q0llDQo+ZGV2aWNlIHJlbW92YWxzICh0cmlnZ2VyZWQsIGZvciBleGFtcGxlLCBieSByZW1vdmlu ZyBwb3dlciBmcm9tIGEgUENJZQ0KPmFkYXB0ZXIpLg0KPlRoZSBiZWhhdmlvciB3ZSBzZWUgb24g RTU1MDAgaXMgcXVpdGUgc2ltaWxhciB0byB0aGUgc2FtZSBiZWhhdmlvciBvbg0KPkU1MDA6DQo+ SWYgdW5oYW5kbGVkLCB0aGUgQ1BVIGtlZXBzIGV4ZWN1dGluZyB0aGUgc2FtZSBpbnN0cnVjdGlv biBvdmVyIGFuZCBvdmVyDQo+YWdhaW4NCj5pZiB0aGVyZSBpcyBhbiBlcnJvciBvbiBhIFBDSWUg YWNjZXNzIGFuZCB0aHVzIHN0YWxscy4gSSBkb24ndCBrbm93IGlmDQo+dGhpcw0KPmlzIGNvbnNp ZGVyZWQgYW4gZXJyYXR1bSBvciBleHBlY3RlZCBiZWhhdmlvciwgYnV0IGl0IGlzIG9uZSB3ZSBo YXZlIHRvDQo+YWRkcmVzcw0KPnNpbmNlIHdlIGhhdmUgdG8gYmUgYWJsZSB0byBoYW5kbGUgdGhh dCBjb25kaXRpb24uIFVsdGltYXRlbHksIHdlJ2xsIHdhbnQNCj50bw0KPmltcGxlbWVudCBQQ0ll IGVycm9yIGhhbmRsZXJzIGZvciB0aGUgYWZmZWN0ZWQgZHJpdmVycywgYnV0IHRoYXQgd2lsbCBi ZQ0KPmEgbmV4dA0KPnN0ZXAuDQoNCkFjY29yZGluZyB0byB0aGUgc3BlYywgd2UgTUNBUiBpcyBz dXBwb3NlZCB0byBob2xkIHRoZSBmYXVsdHkgZGF0YSBhZGRyZXNzDQpidXQgZm9yIDU1MDAgY29y ZSwgd2UgZm91bmQgdGhhdCBNQ0FSIGlzIHplcm8uIFlvdSBhcmUgcmlnaHQgdGhhdCBERUFSDQpl bnRyeSBjb3VsZA0KYmUgYSByZXN1bHRPZiBhIFRMQiBtaXNzIGJ1dCB0aGF0qfZzIHRoZSByZWdp c3RlciB3ZSBjb3VsZCByZWx5IG9uLg0KDQpXaGF0IGRvIHlvdSBtZWFuIGJ5ICJpbnN0cnVjdGlv biBlbXVsYXRpb24iPyBBcmUgeW91IHN1Z2dlc3RpbmcgdGhhdCB3ZQ0KZXhhbWluZSB0aGUgUkQs IFJTIA0KcmVnaXN0ZXJzIGZvciB0aGUgaW5zdHJ1Y3Rpb24/DQoNCg0KDQo+DQo+UGxlYXNlIGxl dCBtZSBrbm93IGlmIHlvdSBoYXZlIGEgYmV0dGVyIHNvbHV0aW9uIHRvIGFkZHJlc3MgdGhpcyBw cm9ibGVtLg0KPg0KPlRoYW5rcywNCj5HdWVudGVyDQoNCg0KVGhhbmtzDQpKb2p5DQoNCg== ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-29 23:03 ` Jojy Varghese @ 2014-09-29 23:31 ` Scott Wood 2014-09-30 15:50 ` Guenter Roeck 0 siblings, 1 reply; 14+ messages in thread From: Scott Wood @ 2014-09-29 23:31 UTC (permalink / raw) To: Jojy Varghese Cc: hongtao.jia@freescale.com, linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Guenter Roeck On Mon, 2014-09-29 at 23:03 +0000, Jojy Varghese wrote: > > On 9/29/14 12:06 PM, "Guenter Roeck" <linux@roeck-us.net> wrote: > > >On Mon, Sep 29, 2014 at 01:36:06PM -0500, Scott Wood wrote: > >> On Mon, 2014-09-29 at 09:48 -0700, Guenter Roeck wrote: > >> > From: Jojy G Varghese <jojyv@juniper.net> > >> > > >> > For E500MC and E5500, a machine check exception in pci(e) memory space > >> > crashes the kernel. > >> > > >> > Testing shows that the MCAR(U) register is zero on a MC exception for > >>the > >> > E5500 core. At the same time, DEAR register has been found to have the > >> > address of the faulty load address during an MC exception for this > >>core. > >> > > >> > This fix changes the current behavior to fixup the result register > >> > and instruction pointers in the case of a load operation on a faulty > >> > PCI address. > >> > > >> > The changes are: > >> > - Added the hook to pci machine check handing to the e500mc machine > >>check > >> > exception handler. > >> > - For the E5500 core, load faulting address from SPRN_DEAR register. > >> > As mentioned above, this is necessary because the E5500 core does > >>not > >> > report the fault address in the MCAR register. > >> > > >> > Cc: Scott Wood <scottwood@freescale.com> > >> > Signed-off-by: Jojy G Varghese <jojyv@juniper.net> > >> > [Guenter Roeck: updated description] > >> > Signed-off-by: Guenter Roeck <groeck@juniper.net> > >> > Signed-off-by: Guenter Roeck <linux@roeck-us.net> > >> > --- > >> > arch/powerpc/kernel/traps.c | 3 ++- > >> > arch/powerpc/sysdev/fsl_pci.c | 5 +++++ > >> > 2 files changed, 7 insertions(+), 1 deletion(-) > >> > > >> > diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c > >> > index 0dc43f9..ecb709b 100644 > >> > --- a/arch/powerpc/kernel/traps.c > >> > +++ b/arch/powerpc/kernel/traps.c > >> > @@ -494,7 +494,8 @@ int machine_check_e500mc(struct pt_regs *regs) > >> > int recoverable = 1; > >> > > >> > if (reason & MCSR_LD) { > >> > - recoverable = fsl_rio_mcheck_exception(regs); > >> > + recoverable = fsl_rio_mcheck_exception(regs) || > >> > + fsl_pci_mcheck_exception(regs); > >> > if (recoverable == 1) > >> > goto silent_out; > >> > } > >> > diff --git a/arch/powerpc/sysdev/fsl_pci.c > >>b/arch/powerpc/sysdev/fsl_pci.c > >> > index c507767..bdb956b 100644 > >> > --- a/arch/powerpc/sysdev/fsl_pci.c > >> > +++ b/arch/powerpc/sysdev/fsl_pci.c > >> > @@ -1021,6 +1021,11 @@ int fsl_pci_mcheck_exception(struct pt_regs > >>*regs) > >> > #endif > >> > addr += mfspr(SPRN_MCAR); > >> > > >> > +#ifdef CONFIG_E5500_CPU > >> > + if (mfspr(SPRN_EPCR) & SPRN_EPCR_ICM) > >> > + addr = PFN_PHYS(vmalloc_to_pfn((void *)mfspr(SPRN_DEAR))); > >> > +#endif > >> > >> Kconfig tells you what hardware is supported, not what hardware you're > >> actually running on. Plus, CONFIG_E5500_CPU may not even be set when running on an e5500, as it is used for selecting GCC optimization settings. You could have CONFIG_GENERIC_CPU instead. And the subject says "E500MC / E5500", not just "E5500". :-) > >Hi Scott, > > > >Good point. Jojy, guess we'll have to check if the CPU is actually an > >E5500. > >Can you look into that ? > > > "/proc/cpuinfo" shows the cpu as "e5500". Scott, are you suggesting that > we use a runtime method of determining the cpu type (cpu_spec's cpu_name > for > example). Yes, if there's a bug to be worked around, and we don't want to apply the workaround unconditionally, you should use PVR to determine whether you're running on an affected core. > >> Can we rely on DEAR or is this just a side effect of likely having taken > >> a TLB miss for the address recently? Perhaps we should use the > >> instruction emulation to determine the effective address instead. > >> > >> Guenter, is this patch intended to deal with an erratum or are you > >> covering up legitimate errors? > >> > > >Those are errors related to PCIe hotplug, and are seen with unexpected > >PCIe > >device removals (triggered, for example, by removing power from a PCIe > >adapter). > >The behavior we see on E5500 is quite similar to the same behavior on > >E500: > >If unhandled, the CPU keeps executing the same instruction over and over > >again > >if there is an error on a PCIe access and thus stalls. I don't know if > >this > >is considered an erratum or expected behavior, but it is one we have to > >address > >since we have to be able to handle that condition. The reason I ask is that the handling for e500 was described as an erratum workaround. If it is an erratum it would be nice to know the erratum number and the full list of affected chips. > >Ultimately, we'll want > >to > >implement PCIe error handlers for the affected drivers, but that will be > >a next > >step. For now can we at least print a ratelimited error message? I don't like the idea of silently ignoring these errors. I suppose it's a separate issue from extending the workaround to cover e500mc, though. > According to the spec, we MCAR is supposed to hold the faulty data address > but for 5500 core, we found that MCAR is zero. Which specific chip and revision did you see this on? What is the value in MCSR? > You are right that DEAR entry could > be a resultOf a TLB miss but that¹s the register we could rely on. If it's the result of a previous TLB miss then we can't rely on it. The translation might have been loaded into the TLB before the hotplug event, or there might have been an interrupt between loading the translation into the TLB and using the translation. > What do you mean by "instruction emulation"? mcheck_handle_load() > Are you suggesting that we > examine the RD, RS > registers for the instruction? Yes, if we don't have a simpler reliable source of the address. -Scott ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-29 23:31 ` Scott Wood @ 2014-09-30 15:50 ` Guenter Roeck 2014-09-30 20:15 ` Jojy Varghese 2014-10-01 0:43 ` Scott Wood 0 siblings, 2 replies; 14+ messages in thread From: Guenter Roeck @ 2014-09-30 15:50 UTC (permalink / raw) To: Scott Wood Cc: hongtao.jia@freescale.com, linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Jojy Varghese On Mon, Sep 29, 2014 at 06:31:06PM -0500, Scott Wood wrote: > On Mon, 2014-09-29 at 23:03 +0000, Jojy Varghese wrote: > > > > On 9/29/14 12:06 PM, "Guenter Roeck" <linux@roeck-us.net> wrote: > > > > >On Mon, Sep 29, 2014 at 01:36:06PM -0500, Scott Wood wrote: > > >> On Mon, 2014-09-29 at 09:48 -0700, Guenter Roeck wrote: > > >> > From: Jojy G Varghese <jojyv@juniper.net> > > >> > > > >> > For E500MC and E5500, a machine check exception in pci(e) memory space > > >> > crashes the kernel. > > >> > > > >> > Testing shows that the MCAR(U) register is zero on a MC exception for > > >>the > > >> > E5500 core. At the same time, DEAR register has been found to have the > > >> > address of the faulty load address during an MC exception for this > > >>core. > > >> > > > >> > This fix changes the current behavior to fixup the result register > > >> > and instruction pointers in the case of a load operation on a faulty > > >> > PCI address. > > >> > > > >> > The changes are: > > >> > - Added the hook to pci machine check handing to the e500mc machine > > >>check > > >> > exception handler. > > >> > - For the E5500 core, load faulting address from SPRN_DEAR register. > > >> > As mentioned above, this is necessary because the E5500 core does > > >>not > > >> > report the fault address in the MCAR register. > > >> > > > >> > Cc: Scott Wood <scottwood@freescale.com> > > >> > Signed-off-by: Jojy G Varghese <jojyv@juniper.net> > > >> > [Guenter Roeck: updated description] > > >> > Signed-off-by: Guenter Roeck <groeck@juniper.net> > > >> > Signed-off-by: Guenter Roeck <linux@roeck-us.net> > > >> > --- > > >> > arch/powerpc/kernel/traps.c | 3 ++- > > >> > arch/powerpc/sysdev/fsl_pci.c | 5 +++++ > > >> > 2 files changed, 7 insertions(+), 1 deletion(-) > > >> > > > >> > diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c > > >> > index 0dc43f9..ecb709b 100644 > > >> > --- a/arch/powerpc/kernel/traps.c > > >> > +++ b/arch/powerpc/kernel/traps.c > > >> > @@ -494,7 +494,8 @@ int machine_check_e500mc(struct pt_regs *regs) > > >> > int recoverable = 1; > > >> > > > >> > if (reason & MCSR_LD) { > > >> > - recoverable = fsl_rio_mcheck_exception(regs); > > >> > + recoverable = fsl_rio_mcheck_exception(regs) || > > >> > + fsl_pci_mcheck_exception(regs); > > >> > if (recoverable == 1) > > >> > goto silent_out; > > >> > } > > >> > diff --git a/arch/powerpc/sysdev/fsl_pci.c > > >>b/arch/powerpc/sysdev/fsl_pci.c > > >> > index c507767..bdb956b 100644 > > >> > --- a/arch/powerpc/sysdev/fsl_pci.c > > >> > +++ b/arch/powerpc/sysdev/fsl_pci.c > > >> > @@ -1021,6 +1021,11 @@ int fsl_pci_mcheck_exception(struct pt_regs > > >>*regs) > > >> > #endif > > >> > addr += mfspr(SPRN_MCAR); > > >> > > > >> > +#ifdef CONFIG_E5500_CPU > > >> > + if (mfspr(SPRN_EPCR) & SPRN_EPCR_ICM) > > >> > + addr = PFN_PHYS(vmalloc_to_pfn((void *)mfspr(SPRN_DEAR))); > > >> > +#endif > > >> > > >> Kconfig tells you what hardware is supported, not what hardware you're > > >> actually running on. > > Plus, CONFIG_E5500_CPU may not even be set when running on an e5500, as > it is used for selecting GCC optimization settings. You could have > CONFIG_GENERIC_CPU instead. > > And the subject says "E500MC / E5500", not just "E5500". :-) > > > >Hi Scott, > > > > > >Good point. Jojy, guess we'll have to check if the CPU is actually an > > >E5500. > > >Can you look into that ? > > > > > > "/proc/cpuinfo" shows the cpu as "e5500". Scott, are you suggesting that > > we use a runtime method of determining the cpu type (cpu_spec's cpu_name > > for > > example). > > Yes, if there's a bug to be worked around, and we don't want to apply > the workaround unconditionally, you should use PVR to determine whether > you're running on an affected core. > > > >> Can we rely on DEAR or is this just a side effect of likely having taken > > >> a TLB miss for the address recently? Perhaps we should use the > > >> instruction emulation to determine the effective address instead. > > >> > > >> Guenter, is this patch intended to deal with an erratum or are you > > >> covering up legitimate errors? > > >> > > > > >Those are errors related to PCIe hotplug, and are seen with unexpected > > >PCIe > > >device removals (triggered, for example, by removing power from a PCIe > > >adapter). > > >The behavior we see on E5500 is quite similar to the same behavior on > > >E500: > > >If unhandled, the CPU keeps executing the same instruction over and over > > >again > > >if there is an error on a PCIe access and thus stalls. I don't know if > > >this > > >is considered an erratum or expected behavior, but it is one we have to > > >address > > >since we have to be able to handle that condition. > > The reason I ask is that the handling for e500 was described as an > erratum workaround. If it is an erratum it would be nice to know the > erratum number and the full list of affected chips. > My understanding, which may be wrong, was that this is expected behavior, at least for E5500. I actually thought I had seen it somewhere in the specification (response to PCIe errors), but I don't recall where exactly. At least for my part I am not aware of an erratum. > > >Ultimately, we'll want > > >to > > >implement PCIe error handlers for the affected drivers, but that will be > > >a next > > >step. > > For now can we at least print a ratelimited error message? I don't like > the idea of silently ignoring these errors. I suppose it's a separate > issue from extending the workaround to cover e500mc, though. > I don't really like the idea of printing an error message pretty much each time when an unexpected hotplug event occurs. > > According to the spec, we MCAR is supposed to hold the faulty data address > > but for 5500 core, we found that MCAR is zero. > > Which specific chip and revision did you see this on? What is the value > in MCSR? > Jojy can answer that, at least for P5020. We have seen it on P5040 as well, though, so it is not just limited to one chip/revision. Guenter > > You are right that DEAR entry could > > be a resultOf a TLB miss but that¹s the register we could rely on. > > If it's the result of a previous TLB miss then we can't rely on it. The > translation might have been loaded into the TLB before the hotplug > event, or there might have been an interrupt between loading the > translation into the TLB and using the translation. > > > What do you mean by "instruction emulation"? > > mcheck_handle_load() > > > Are you suggesting that we > > examine the RD, RS > > registers for the instruction? > > Yes, if we don't have a simpler reliable source of the address. > > -Scott > > ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-30 15:50 ` Guenter Roeck @ 2014-09-30 20:15 ` Jojy Varghese 2014-09-30 20:17 ` Scott Wood 2014-10-01 0:43 ` Scott Wood 1 sibling, 1 reply; 14+ messages in thread From: Jojy Varghese @ 2014-09-30 20:15 UTC (permalink / raw) To: Guenter Roeck, Scott Wood Cc: hongtao.jia@freescale.com, Guenter Roeck, linux-kernel@vger.kernel.org, Paul Mackerras, linuxppc-dev@lists.ozlabs.org DQoNCk9uIDkvMzAvMTQgODo1MCBBTSwgIkd1ZW50ZXIgUm9lY2siIDxsaW51eEByb2Vjay11cy5u ZXQ+IHdyb3RlOg0KDQo+T24gTW9uLCBTZXAgMjksIDIwMTQgYXQgMDY6MzE6MDZQTSAtMDUwMCwg U2NvdHQgV29vZCB3cm90ZToNCj4+IE9uIE1vbiwgMjAxNC0wOS0yOSBhdCAyMzowMyArMDAwMCwg Sm9qeSBWYXJnaGVzZSB3cm90ZToNCj4+ID4gDQo+PiA+IE9uIDkvMjkvMTQgMTI6MDYgUE0sICJH dWVudGVyIFJvZWNrIiA8bGludXhAcm9lY2stdXMubmV0PiB3cm90ZToNCj4+ID4gDQo+PiA+ID5P biBNb24sIFNlcCAyOSwgMjAxNCBhdCAwMTozNjowNlBNIC0wNTAwLCBTY290dCBXb29kIHdyb3Rl Og0KPj4gPiA+PiBPbiBNb24sIDIwMTQtMDktMjkgYXQgMDk6NDggLTA3MDAsIEd1ZW50ZXIgUm9l Y2sgd3JvdGU6DQo+PiA+ID4+ID4gRnJvbTogSm9qeSBHIFZhcmdoZXNlIDxqb2p5dkBqdW5pcGVy Lm5ldD4NCj4+ID4gPj4gPiANCj4+ID4gPj4gPiBGb3IgRTUwME1DIGFuZCBFNTUwMCwgYSBtYWNo aW5lIGNoZWNrIGV4Y2VwdGlvbiBpbiBwY2koZSkgbWVtb3J5DQo+PnNwYWNlDQo+PiA+ID4+ID4g Y3Jhc2hlcyB0aGUga2VybmVsLg0KPj4gPiA+PiA+IA0KPj4gPiA+PiA+IFRlc3Rpbmcgc2hvd3Mg dGhhdCB0aGUgTUNBUihVKSByZWdpc3RlciBpcyB6ZXJvIG9uIGEgTUMNCj4+ZXhjZXB0aW9uIGZv cg0KPj4gPiA+PnRoZQ0KPj4gPiA+PiA+IEU1NTAwIGNvcmUuIEF0IHRoZSBzYW1lIHRpbWUsIERF QVIgcmVnaXN0ZXIgaGFzIGJlZW4gZm91bmQgdG8NCj4+aGF2ZSB0aGUNCj4+ID4gPj4gPiBhZGRy ZXNzIG9mIHRoZSBmYXVsdHkgbG9hZCBhZGRyZXNzIGR1cmluZyBhbiBNQyBleGNlcHRpb24gZm9y DQo+PnRoaXMNCj4+ID4gPj5jb3JlLg0KPj4gPiA+PiA+IA0KPj4gPiA+PiA+IFRoaXMgZml4IGNo YW5nZXMgdGhlIGN1cnJlbnQgYmVoYXZpb3IgdG8gZml4dXAgdGhlIHJlc3VsdA0KPj5yZWdpc3Rl cg0KPj4gPiA+PiA+IGFuZCBpbnN0cnVjdGlvbiBwb2ludGVycyBpbiB0aGUgY2FzZSBvZiBhIGxv YWQgb3BlcmF0aW9uIG9uIGENCj4+ZmF1bHR5DQo+PiA+ID4+ID4gUENJIGFkZHJlc3MuDQo+PiA+ ID4+ID4gDQo+PiA+ID4+ID4gVGhlIGNoYW5nZXMgYXJlOg0KPj4gPiA+PiA+IC0gQWRkZWQgdGhl IGhvb2sgdG8gcGNpIG1hY2hpbmUgY2hlY2sgaGFuZGluZyB0byB0aGUgZTUwMG1jDQo+Pm1hY2hp bmUNCj4+ID4gPj5jaGVjaw0KPj4gPiA+PiA+ICAgZXhjZXB0aW9uIGhhbmRsZXIuDQo+PiA+ID4+ ID4gLSBGb3IgdGhlIEU1NTAwIGNvcmUsIGxvYWQgZmF1bHRpbmcgYWRkcmVzcyBmcm9tIFNQUk5f REVBUg0KPj5yZWdpc3Rlci4NCj4+ID4gPj4gPiAgIEFzIG1lbnRpb25lZCBhYm92ZSwgdGhpcyBp cyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgRTU1MDAgY29yZQ0KPj5kb2VzDQo+PiA+ID4+bm90DQo+ PiA+ID4+ID4gICByZXBvcnQgdGhlIGZhdWx0IGFkZHJlc3MgaW4gdGhlIE1DQVIgcmVnaXN0ZXIu DQo+PiA+ID4+ID4gDQo+PiA+ID4+ID4gQ2M6IFNjb3R0IFdvb2QgPHNjb3R0d29vZEBmcmVlc2Nh bGUuY29tPg0KPj4gPiA+PiA+IFNpZ25lZC1vZmYtYnk6IEpvankgRyBWYXJnaGVzZSA8am9qeXZA anVuaXBlci5uZXQ+DQo+PiA+ID4+ID4gW0d1ZW50ZXIgUm9lY2s6IHVwZGF0ZWQgZGVzY3JpcHRp b25dDQo+PiA+ID4+ID4gU2lnbmVkLW9mZi1ieTogR3VlbnRlciBSb2VjayA8Z3JvZWNrQGp1bmlw ZXIubmV0Pg0KPj4gPiA+PiA+IFNpZ25lZC1vZmYtYnk6IEd1ZW50ZXIgUm9lY2sgPGxpbnV4QHJv ZWNrLXVzLm5ldD4NCj4+ID4gPj4gPiAtLS0NCj4+ID4gPj4gPiAgYXJjaC9wb3dlcnBjL2tlcm5l bC90cmFwcy5jICAgfCAzICsrLQ0KPj4gPiA+PiA+ICBhcmNoL3Bvd2VycGMvc3lzZGV2L2ZzbF9w Y2kuYyB8IDUgKysrKysNCj4+ID4gPj4gPiAgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMo KyksIDEgZGVsZXRpb24oLSkNCj4+ID4gPj4gPiANCj4+ID4gPj4gPiBkaWZmIC0tZ2l0IGEvYXJj aC9wb3dlcnBjL2tlcm5lbC90cmFwcy5jDQo+PmIvYXJjaC9wb3dlcnBjL2tlcm5lbC90cmFwcy5j DQo+PiA+ID4+ID4gaW5kZXggMGRjNDNmOS4uZWNiNzA5YiAxMDA2NDQNCj4+ID4gPj4gPiAtLS0g YS9hcmNoL3Bvd2VycGMva2VybmVsL3RyYXBzLmMNCj4+ID4gPj4gPiArKysgYi9hcmNoL3Bvd2Vy cGMva2VybmVsL3RyYXBzLmMNCj4+ID4gPj4gPiBAQCAtNDk0LDcgKzQ5NCw4IEBAIGludCBtYWNo aW5lX2NoZWNrX2U1MDBtYyhzdHJ1Y3QgcHRfcmVncw0KPj4qcmVncykNCj4+ID4gPj4gPiAgCWlu dCByZWNvdmVyYWJsZSA9IDE7DQo+PiA+ID4+ID4gIA0KPj4gPiA+PiA+ICAJaWYgKHJlYXNvbiAm IE1DU1JfTEQpIHsNCj4+ID4gPj4gPiAtCQlyZWNvdmVyYWJsZSA9IGZzbF9yaW9fbWNoZWNrX2V4 Y2VwdGlvbihyZWdzKTsNCj4+ID4gPj4gPiArCQlyZWNvdmVyYWJsZSA9IGZzbF9yaW9fbWNoZWNr X2V4Y2VwdGlvbihyZWdzKSB8fA0KPj4gPiA+PiA+ICsJCQlmc2xfcGNpX21jaGVja19leGNlcHRp b24ocmVncyk7DQo+PiA+ID4+ID4gIAkJaWYgKHJlY292ZXJhYmxlID09IDEpDQo+PiA+ID4+ID4g IAkJCWdvdG8gc2lsZW50X291dDsNCj4+ID4gPj4gPiAgCX0NCj4+ID4gPj4gPiBkaWZmIC0tZ2l0 IGEvYXJjaC9wb3dlcnBjL3N5c2Rldi9mc2xfcGNpLmMNCj4+ID4gPj5iL2FyY2gvcG93ZXJwYy9z eXNkZXYvZnNsX3BjaS5jDQo+PiA+ID4+ID4gaW5kZXggYzUwNzc2Ny4uYmRiOTU2YiAxMDA2NDQN Cj4+ID4gPj4gPiAtLS0gYS9hcmNoL3Bvd2VycGMvc3lzZGV2L2ZzbF9wY2kuYw0KPj4gPiA+PiA+ ICsrKyBiL2FyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX3BjaS5jDQo+PiA+ID4+ID4gQEAgLTEwMjEs NiArMTAyMSwxMSBAQCBpbnQgZnNsX3BjaV9tY2hlY2tfZXhjZXB0aW9uKHN0cnVjdA0KPj5wdF9y ZWdzDQo+PiA+ID4+KnJlZ3MpDQo+PiA+ID4+ID4gICNlbmRpZg0KPj4gPiA+PiA+ICAJYWRkciAr PSBtZnNwcihTUFJOX01DQVIpOw0KPj4gPiA+PiA+ICANCj4+ID4gPj4gPiArI2lmZGVmIENPTkZJ R19FNTUwMF9DUFUNCj4+ID4gPj4gPiArCWlmIChtZnNwcihTUFJOX0VQQ1IpICYgU1BSTl9FUENS X0lDTSkNCj4+ID4gPj4gPiArCQlhZGRyID0gUEZOX1BIWVModm1hbGxvY190b19wZm4oKHZvaWQg KiltZnNwcihTUFJOX0RFQVIpKSk7DQo+PiA+ID4+ID4gKyNlbmRpZg0KPj4gPiA+PiANCj4+ID4g Pj4gS2NvbmZpZyB0ZWxscyB5b3Ugd2hhdCBoYXJkd2FyZSBpcyBzdXBwb3J0ZWQsIG5vdCB3aGF0 IGhhcmR3YXJlDQo+PnlvdSdyZQ0KPj4gPiA+PiBhY3R1YWxseSBydW5uaW5nIG9uLg0KPj4gDQo+ PiBQbHVzLCBDT05GSUdfRTU1MDBfQ1BVIG1heSBub3QgZXZlbiBiZSBzZXQgd2hlbiBydW5uaW5n IG9uIGFuIGU1NTAwLCBhcw0KPj4gaXQgaXMgdXNlZCBmb3Igc2VsZWN0aW5nIEdDQyBvcHRpbWl6 YXRpb24gc2V0dGluZ3MuICBZb3UgY291bGQgaGF2ZQ0KPj4gQ09ORklHX0dFTkVSSUNfQ1BVIGlu c3RlYWQuDQo+PiANCj4+IEFuZCB0aGUgc3ViamVjdCBzYXlzICJFNTAwTUMgLyBFNTUwMCIsIG5v dCBqdXN0ICJFNTUwMCIuIDotKQ0KPj4gDQo+PiA+ID5IaSBTY290dCwNCj4+ID4gPg0KPj4gPiA+ R29vZCBwb2ludC4gSm9qeSwgZ3Vlc3Mgd2UnbGwgaGF2ZSB0byBjaGVjayBpZiB0aGUgQ1BVIGlz IGFjdHVhbGx5IGFuDQo+PiA+ID5FNTUwMC4NCj4+ID4gPkNhbiB5b3UgbG9vayBpbnRvIHRoYXQg Pw0KPj4gPiANCj4+ID4gDQo+PiA+ICIvcHJvYy9jcHVpbmZvIiBzaG93cyB0aGUgY3B1IGFzICJl NTUwMCIuIFNjb3R0LCBhcmUgeW91IHN1Z2dlc3RpbmcNCj4+dGhhdA0KPj4gPiB3ZSB1c2UgYSBy dW50aW1lIG1ldGhvZCBvZiBkZXRlcm1pbmluZyB0aGUgY3B1IHR5cGUgKGNwdV9zcGVjJ3MNCj4+ Y3B1X25hbWUNCj4+ID4gZm9yDQo+PiA+IGV4YW1wbGUpLiAgDQo+PiANCj4+IFllcywgaWYgdGhl cmUncyBhIGJ1ZyB0byBiZSB3b3JrZWQgYXJvdW5kLCBhbmQgd2UgZG9uJ3Qgd2FudCB0byBhcHBs eQ0KPj4gdGhlIHdvcmthcm91bmQgdW5jb25kaXRpb25hbGx5LCB5b3Ugc2hvdWxkIHVzZSBQVlIg dG8gZGV0ZXJtaW5lIHdoZXRoZXINCj4+IHlvdSdyZSBydW5uaW5nIG9uIGFuIGFmZmVjdGVkIGNv cmUuDQo+PiANCj4+ID4gPj4gQ2FuIHdlIHJlbHkgb24gREVBUiBvciBpcyB0aGlzIGp1c3QgYSBz aWRlIGVmZmVjdCBvZiBsaWtlbHkgaGF2aW5nDQo+PnRha2VuDQo+PiA+ID4+IGEgVExCIG1pc3Mg Zm9yIHRoZSBhZGRyZXNzIHJlY2VudGx5PyAgUGVyaGFwcyB3ZSBzaG91bGQgdXNlIHRoZQ0KPj4g PiA+PiBpbnN0cnVjdGlvbiBlbXVsYXRpb24gdG8gZGV0ZXJtaW5lIHRoZSBlZmZlY3RpdmUgYWRk cmVzcyBpbnN0ZWFkLg0KPj4gPiA+PiANCj4+ID4gPj4gR3VlbnRlciwgaXMgdGhpcyBwYXRjaCBp bnRlbmRlZCB0byBkZWFsIHdpdGggYW4gZXJyYXR1bSBvciBhcmUgeW91DQo+PiA+ID4+IGNvdmVy aW5nIHVwIGxlZ2l0aW1hdGUgZXJyb3JzPw0KPj4gPiA+PiANCj4+ID4NCj4+ID4gPlRob3NlIGFy ZSBlcnJvcnMgcmVsYXRlZCB0byBQQ0llIGhvdHBsdWcsIGFuZCBhcmUgc2VlbiB3aXRoDQo+PnVu ZXhwZWN0ZWQNCj4+ID4gPlBDSWUNCj4+ID4gPmRldmljZSByZW1vdmFscyAodHJpZ2dlcmVkLCBm b3IgZXhhbXBsZSwgYnkgcmVtb3ZpbmcgcG93ZXIgZnJvbSBhDQo+PlBDSWUNCj4+ID4gPmFkYXB0 ZXIpLg0KPj4gPiA+VGhlIGJlaGF2aW9yIHdlIHNlZSBvbiBFNTUwMCBpcyBxdWl0ZSBzaW1pbGFy IHRvIHRoZSBzYW1lIGJlaGF2aW9yIG9uDQo+PiA+ID5FNTAwOg0KPj4gPiA+SWYgdW5oYW5kbGVk LCB0aGUgQ1BVIGtlZXBzIGV4ZWN1dGluZyB0aGUgc2FtZSBpbnN0cnVjdGlvbiBvdmVyIGFuZA0K Pj5vdmVyDQo+PiA+ID5hZ2Fpbg0KPj4gPiA+aWYgdGhlcmUgaXMgYW4gZXJyb3Igb24gYSBQQ0ll IGFjY2VzcyBhbmQgdGh1cyBzdGFsbHMuIEkgZG9uJ3Qga25vdw0KPj5pZg0KPj4gPiA+dGhpcw0K Pj4gPiA+aXMgY29uc2lkZXJlZCBhbiBlcnJhdHVtIG9yIGV4cGVjdGVkIGJlaGF2aW9yLCBidXQg aXQgaXMgb25lIHdlIGhhdmUNCj4+dG8NCj4+ID4gPmFkZHJlc3MNCj4+ID4gPnNpbmNlIHdlIGhh dmUgdG8gYmUgYWJsZSB0byBoYW5kbGUgdGhhdCBjb25kaXRpb24uDQo+PiANCj4+IFRoZSByZWFz b24gSSBhc2sgaXMgdGhhdCB0aGUgaGFuZGxpbmcgZm9yIGU1MDAgd2FzIGRlc2NyaWJlZCBhcyBh bg0KPj4gZXJyYXR1bSB3b3JrYXJvdW5kLiAgSWYgaXQgaXMgYW4gZXJyYXR1bSBpdCB3b3VsZCBi ZSBuaWNlIHRvIGtub3cgdGhlDQo+PiBlcnJhdHVtIG51bWJlciBhbmQgdGhlIGZ1bGwgbGlzdCBv ZiBhZmZlY3RlZCBjaGlwcy4NCj4+IA0KPk15IHVuZGVyc3RhbmRpbmcsIHdoaWNoIG1heSBiZSB3 cm9uZywgd2FzIHRoYXQgdGhpcyBpcyBleHBlY3RlZCBiZWhhdmlvciwNCj5hdCBsZWFzdCBmb3Ig RTU1MDAuIEkgYWN0dWFsbHkgdGhvdWdodCBJIGhhZCBzZWVuIGl0IHNvbWV3aGVyZSBpbiB0aGUN Cj5zcGVjaWZpY2F0aW9uIChyZXNwb25zZSB0byBQQ0llIGVycm9ycyksIGJ1dCBJIGRvbid0IHJl Y2FsbCB3aGVyZSBleGFjdGx5Lg0KPg0KPkF0IGxlYXN0IGZvciBteSBwYXJ0IEkgYW0gbm90IGF3 YXJlIG9mIGFuIGVycmF0dW0uDQo+DQo+PiA+ID5VbHRpbWF0ZWx5LCB3ZSdsbCB3YW50DQo+PiA+ ID50bw0KPj4gPiA+aW1wbGVtZW50IFBDSWUgZXJyb3IgaGFuZGxlcnMgZm9yIHRoZSBhZmZlY3Rl ZCBkcml2ZXJzLCBidXQgdGhhdA0KPj53aWxsIGJlDQo+PiA+ID5hIG5leHQNCj4+ID4gPnN0ZXAu DQo+PiANCj4+IEZvciBub3cgY2FuIHdlIGF0IGxlYXN0IHByaW50IGEgcmF0ZWxpbWl0ZWQgZXJy b3IgbWVzc2FnZT8gIEkgZG9uJ3QgbGlrZQ0KPj4gdGhlIGlkZWEgb2Ygc2lsZW50bHkgaWdub3Jp bmcgdGhlc2UgZXJyb3JzLiAgSSBzdXBwb3NlIGl0J3MgYSBzZXBhcmF0ZQ0KPj4gaXNzdWUgZnJv bSBleHRlbmRpbmcgdGhlIHdvcmthcm91bmQgdG8gY292ZXIgZTUwMG1jLCB0aG91Z2guDQo+PiAN Cj5JIGRvbid0IHJlYWxseSBsaWtlIHRoZSBpZGVhIG9mIHByaW50aW5nIGFuIGVycm9yIG1lc3Nh Z2UgcHJldHR5IG11Y2gNCj5lYWNoIHRpbWUNCj53aGVuIGFuIHVuZXhwZWN0ZWQgaG90cGx1ZyBl dmVudCBvY2N1cnMuDQo+DQo+PiA+IEFjY29yZGluZyB0byB0aGUgc3BlYywgd2UgTUNBUiBpcyBz dXBwb3NlZCB0byBob2xkIHRoZSBmYXVsdHkgZGF0YQ0KPj5hZGRyZXNzDQo+PiA+IGJ1dCBmb3Ig NTUwMCBjb3JlLCB3ZSBmb3VuZCB0aGF0IE1DQVIgaXMgemVyby4NCj4+IA0KPj4gV2hpY2ggc3Bl Y2lmaWMgY2hpcCBhbmQgcmV2aXNpb24gZGlkIHlvdSBzZWUgdGhpcyBvbj8gIFdoYXQgaXMgdGhl IHZhbHVlDQo+PiBpbiBNQ1NSPw0KPj4gDQo+Sm9qeSBjYW4gYW5zd2VyIHRoYXQsIGF0IGxlYXN0 IGZvciBQNTAyMC4gV2UgaGF2ZSBzZWVuIGl0IG9uIFA1MDQwIGFzDQo+d2VsbCwNCj50aG91Z2gs IHNvIGl0IGlzIG5vdCBqdXN0IGxpbWl0ZWQgdG8gb25lIGNoaXAvcmV2aXNpb24uDQoNClRoZSBz cGVjaWZpY3MgYXJlOg0KUFZSOiAweDgwMjQwMDEyDQpJbnN0cnVjdGlvbiB0aGF0IGNhdXNlcyB0 aGUgTUMgZXhjZXB0aW9uOiBsd2JyeA0KCVRoZSBmYXVsdHkgbG9hZCBhZGRyZXNzIGlzIGFsc28g cHJlc2VudCBpbiBSQi4gU28gd2UgY291bGQgY2hhbmdlIHRoZQ0KbG9naWMgdG8gdXNlIHRoYXQg DQppbnN0ZWFkIG9mIERFQVIuIFdoYXQgSSBkb26hr3Qga25vdyBpcyBvZiB0aGVyZSBhcmUgb3Ro ZXIgY2FzZXMgYWxzbyB3aGljaA0KZXNjYXBlcyB0aGUgY3VycmVudCBsb2dpYy4NCg0KCQkJCQkN CgkJCQkNCgkJCQ0KCQkNCgkNCg0KPg0KPkd1ZW50ZXINCj4NCj4+ID4gWW91IGFyZSByaWdodCB0 aGF0IERFQVIgZW50cnkgY291bGQNCj4+ID4gYmUgYSByZXN1bHRPZiBhIFRMQiBtaXNzIGJ1dCB0 aGF0qfZzIHRoZSByZWdpc3RlciB3ZSBjb3VsZCByZWx5IG9uLg0KPj4gDQo+PiBJZiBpdCdzIHRo ZSByZXN1bHQgb2YgYSBwcmV2aW91cyBUTEIgbWlzcyB0aGVuIHdlIGNhbid0IHJlbHkgb24gaXQu ICBUaGUNCj4+IHRyYW5zbGF0aW9uIG1pZ2h0IGhhdmUgYmVlbiBsb2FkZWQgaW50byB0aGUgVExC IGJlZm9yZSB0aGUgaG90cGx1Zw0KPj4gZXZlbnQsIG9yIHRoZXJlIG1pZ2h0IGhhdmUgYmVlbiBh biBpbnRlcnJ1cHQgYmV0d2VlbiBsb2FkaW5nIHRoZQ0KPj4gdHJhbnNsYXRpb24gaW50byB0aGUg VExCIGFuZCB1c2luZyB0aGUgdHJhbnNsYXRpb24uDQo+PiANCj4+ID4gV2hhdCBkbyB5b3UgbWVh biBieSAiaW5zdHJ1Y3Rpb24gZW11bGF0aW9uIj8NCj4+IA0KPj4gbWNoZWNrX2hhbmRsZV9sb2Fk KCkNCj4+IA0KPj4gPiBBcmUgeW91IHN1Z2dlc3RpbmcgdGhhdCB3ZQ0KPj4gPiBleGFtaW5lIHRo ZSBSRCwgUlMNCj4+ID4gcmVnaXN0ZXJzIGZvciB0aGUgaW5zdHJ1Y3Rpb24/DQo+PiANCj4+IFll cywgaWYgd2UgZG9uJ3QgaGF2ZSBhIHNpbXBsZXIgcmVsaWFibGUgc291cmNlIG9mIHRoZSBhZGRy ZXNzLg0KPj4gDQo+PiAtU2NvdHQNCj4+IA0KPj4gDQoNCg== ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-30 20:15 ` Jojy Varghese @ 2014-09-30 20:17 ` Scott Wood 2014-09-30 20:20 ` Jojy Varghese 0 siblings, 1 reply; 14+ messages in thread From: Scott Wood @ 2014-09-30 20:17 UTC (permalink / raw) To: Jojy Varghese Cc: hongtao.jia@freescale.com, linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Guenter Roeck On Tue, 2014-09-30 at 20:15 +0000, Jojy Varghese wrote: > > On 9/30/14 8:50 AM, "Guenter Roeck" <linux@roeck-us.net> wrote: > > >On Mon, Sep 29, 2014 at 06:31:06PM -0500, Scott Wood wrote: > >> Which specific chip and revision did you see this on? What is the value > >> in MCSR? > >> > >Jojy can answer that, at least for P5020. We have seen it on P5040 as > >well, > >though, so it is not just limited to one chip/revision. > > The specifics are: > PVR: 0x80240012 > Instruction that causes the MC exception: lwbrx > The faulty load address is also present in RB. So we could change the > logic to use that > instead of DEAR. What I don’t know is of there are other cases also which > escapes the current logic. Could you find out what MCSR was when that happened? I'm most interested in whether MAV was set, but the other bits would be interesting as well. -Scott ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-30 20:17 ` Scott Wood @ 2014-09-30 20:20 ` Jojy Varghese 0 siblings, 0 replies; 14+ messages in thread From: Jojy Varghese @ 2014-09-30 20:20 UTC (permalink / raw) To: Scott Wood Cc: hongtao.jia@freescale.com, linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Guenter Roeck On 9/30/14 1:17 PM, "Scott Wood" <scottwood@freescale.com> wrote: >On Tue, 2014-09-30 at 20:15 +0000, Jojy Varghese wrote: >>=20 >> On 9/30/14 8:50 AM, "Guenter Roeck" <linux@roeck-us.net> wrote: >>=20 >> >On Mon, Sep 29, 2014 at 06:31:06PM -0500, Scott Wood wrote: >> >> Which specific chip and revision did you see this on? What is the >>value >> >> in MCSR? >> >>=20 >> >Jojy can answer that, at least for P5020. We have seen it on P5040 as >> >well, >> >though, so it is not just limited to one chip/revision. >>=20 >> The specifics are: >> PVR: 0x80240012 >> Instruction that causes the MC exception: lwbrx >> The faulty load address is also present in RB. So we could change the >> logic to use that >> instead of DEAR. What I don=B9t know is of there are other cases also >>which >> escapes the current logic. > >Could you find out what MCSR was when that happened? I'm most >interested in whether MAV was set, but the other bits would be >interesting as well. MCSR=3Da000 ( Load Error Report) > >-Scott > > Thanks Jojy ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-30 15:50 ` Guenter Roeck 2014-09-30 20:15 ` Jojy Varghese @ 2014-10-01 0:43 ` Scott Wood 2014-10-08 3:10 ` Hongtao Jia 1 sibling, 1 reply; 14+ messages in thread From: Scott Wood @ 2014-10-01 0:43 UTC (permalink / raw) To: Guenter Roeck Cc: hongtao.jia@freescale.com, linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Jojy Varghese On Tue, 2014-09-30 at 08:50 -0700, Guenter Roeck wrote: > On Mon, Sep 29, 2014 at 06:31:06PM -0500, Scott Wood wrote: > > On Mon, 2014-09-29 at 23:03 +0000, Jojy Varghese wrote: > > > > > > On 9/29/14 12:06 PM, "Guenter Roeck" <linux@roeck-us.net> wrote: > > > > > > >Those are errors related to PCIe hotplug, and are seen with unexpected > > > >PCIe > > > >device removals (triggered, for example, by removing power from a PCIe > > > >adapter). > > > >The behavior we see on E5500 is quite similar to the same behavior on > > > >E500: > > > >If unhandled, the CPU keeps executing the same instruction over and over > > > >again > > > >if there is an error on a PCIe access and thus stalls. I don't know if > > > >this > > > >is considered an erratum or expected behavior, but it is one we have to > > > >address > > > >since we have to be able to handle that condition. > > > > The reason I ask is that the handling for e500 was described as an > > erratum workaround. If it is an erratum it would be nice to know the > > erratum number and the full list of affected chips. > > > My understanding, which may be wrong, was that this is expected behavior, > at least for E5500. I actually thought I had seen it somewhere in the > specification (response to PCIe errors), but I don't recall where exactly. > > At least for my part I am not aware of an erratum. Jia Hongtao, can you comment here? > > > >Ultimately, we'll want > > > >to > > > >implement PCIe error handlers for the affected drivers, but that will be > > > >a next > > > >step. > > > > For now can we at least print a ratelimited error message? I don't like > > the idea of silently ignoring these errors. I suppose it's a separate > > issue from extending the workaround to cover e500mc, though. > > > I don't really like the idea of printing an error message pretty much each time > when an unexpected hotplug event occurs. Unexpected events seem like the sort of thing you'd want to log, but my concern is that this might not be the only cause of PCI errors. -Scott ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-10-01 0:43 ` Scott Wood @ 2014-10-08 3:10 ` Hongtao Jia 0 siblings, 0 replies; 14+ messages in thread From: Hongtao Jia @ 2014-10-08 3:10 UTC (permalink / raw) To: Scott Wood, Guenter Roeck Cc: linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Jojy Varghese DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogV29vZCBTY290dC1CMDc0 MjENCj4gU2VudDogV2VkbmVzZGF5LCBPY3RvYmVyIDAxLCAyMDE0IDg6NDQgQU0NCj4gVG86IEd1 ZW50ZXIgUm9lY2sNCj4gQ2M6IEpvankgVmFyZ2hlc2U7IEJlbmphbWluIEhlcnJlbnNjaG1pZHQ7 IFBhdWwgTWFja2VycmFzOyBNaWNoYWVsDQo+IEVsbGVybWFuOyBsaW51eHBwYy1kZXZAbGlzdHMu b3psYWJzLm9yZzsgbGludXgta2VybmVsQHZnZXIua2VybmVsLm9yZzsNCj4gR3VlbnRlciBSb2Vj azsgSmlhIEhvbmd0YW8tQjM4OTUxDQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0hdIHBvd2VycGMvZnNs OiBBZGQgc3VwcG9ydCBmb3IgcGNpKGUpIG1hY2hpbmUgY2hlY2sNCj4gZXhjZXB0aW9uIG9uIEU1 MDBNQyAvIEU1NTAwDQo+IA0KPiBPbiBUdWUsIDIwMTQtMDktMzAgYXQgMDg6NTAgLTA3MDAsIEd1 ZW50ZXIgUm9lY2sgd3JvdGU6DQo+ID4gT24gTW9uLCBTZXAgMjksIDIwMTQgYXQgMDY6MzE6MDZQ TSAtMDUwMCwgU2NvdHQgV29vZCB3cm90ZToNCj4gPiA+IE9uIE1vbiwgMjAxNC0wOS0yOSBhdCAy MzowMyArMDAwMCwgSm9qeSBWYXJnaGVzZSB3cm90ZToNCj4gPiA+ID4NCj4gPiA+ID4gT24gOS8y OS8xNCAxMjowNiBQTSwgIkd1ZW50ZXIgUm9lY2siIDxsaW51eEByb2Vjay11cy5uZXQ+IHdyb3Rl Og0KPiA+ID4gPg0KPiA+ID4gPiA+VGhvc2UgYXJlIGVycm9ycyByZWxhdGVkIHRvIFBDSWUgaG90 cGx1ZywgYW5kIGFyZSBzZWVuIHdpdGgNCj4gPiA+ID4gPnVuZXhwZWN0ZWQgUENJZSBkZXZpY2Ug cmVtb3ZhbHMgKHRyaWdnZXJlZCwgZm9yIGV4YW1wbGUsIGJ5DQo+ID4gPiA+ID5yZW1vdmluZyBw b3dlciBmcm9tIGEgUENJZSBhZGFwdGVyKS4NCj4gPiA+ID4gPlRoZSBiZWhhdmlvciB3ZSBzZWUg b24gRTU1MDAgaXMgcXVpdGUgc2ltaWxhciB0byB0aGUgc2FtZQ0KPiA+ID4gPiA+YmVoYXZpb3Ig b24NCj4gPiA+ID4gPkU1MDA6DQo+ID4gPiA+ID5JZiB1bmhhbmRsZWQsIHRoZSBDUFUga2VlcHMg ZXhlY3V0aW5nIHRoZSBzYW1lIGluc3RydWN0aW9uIG92ZXINCj4gPiA+ID4gPmFuZCBvdmVyIGFn YWluIGlmIHRoZXJlIGlzIGFuIGVycm9yIG9uIGEgUENJZSBhY2Nlc3MgYW5kIHRodXMNCj4gPiA+ ID4gPnN0YWxscy4gSSBkb24ndCBrbm93IGlmIHRoaXMgaXMgY29uc2lkZXJlZCBhbiBlcnJhdHVt IG9yIGV4cGVjdGVkDQo+ID4gPiA+ID5iZWhhdmlvciwgYnV0IGl0IGlzIG9uZSB3ZSBoYXZlIHRv IGFkZHJlc3Mgc2luY2Ugd2UgaGF2ZSB0byBiZQ0KPiA+ID4gPiA+YWJsZSB0byBoYW5kbGUgdGhh dCBjb25kaXRpb24uDQo+ID4gPg0KPiA+ID4gVGhlIHJlYXNvbiBJIGFzayBpcyB0aGF0IHRoZSBo YW5kbGluZyBmb3IgZTUwMCB3YXMgZGVzY3JpYmVkIGFzIGFuDQo+ID4gPiBlcnJhdHVtIHdvcmth cm91bmQuICBJZiBpdCBpcyBhbiBlcnJhdHVtIGl0IHdvdWxkIGJlIG5pY2UgdG8ga25vdw0KPiA+ ID4gdGhlIGVycmF0dW0gbnVtYmVyIGFuZCB0aGUgZnVsbCBsaXN0IG9mIGFmZmVjdGVkIGNoaXBz Lg0KPiA+ID4NCj4gPiBNeSB1bmRlcnN0YW5kaW5nLCB3aGljaCBtYXkgYmUgd3JvbmcsIHdhcyB0 aGF0IHRoaXMgaXMgZXhwZWN0ZWQNCj4gPiBiZWhhdmlvciwgYXQgbGVhc3QgZm9yIEU1NTAwLiBJ IGFjdHVhbGx5IHRob3VnaHQgSSBoYWQgc2VlbiBpdA0KPiA+IHNvbWV3aGVyZSBpbiB0aGUgc3Bl Y2lmaWNhdGlvbiAocmVzcG9uc2UgdG8gUENJZSBlcnJvcnMpLCBidXQgSSBkb24ndA0KPiByZWNh bGwgd2hlcmUgZXhhY3RseS4NCj4gPg0KPiA+IEF0IGxlYXN0IGZvciBteSBwYXJ0IEkgYW0gbm90 IGF3YXJlIG9mIGFuIGVycmF0dW0uDQo+IA0KPiBKaWEgSG9uZ3RhbywgY2FuIHlvdSBjb21tZW50 IGhlcmU/DQoNCkkgZGlkIG5vdCBmaW5kIGFueSByZWxhdGVkIGVycmF0dW0gZWl0aGVyLg0KDQo+ IA0KPiA+ID4gPiA+VWx0aW1hdGVseSwgd2UnbGwgd2FudA0KPiA+ID4gPiA+dG8NCj4gPiA+ID4g PmltcGxlbWVudCBQQ0llIGVycm9yIGhhbmRsZXJzIGZvciB0aGUgYWZmZWN0ZWQgZHJpdmVycywg YnV0IHRoYXQNCj4gPiA+ID4gPndpbGwgYmUgYSBuZXh0IHN0ZXAuDQo+ID4gPg0KPiA+ID4gRm9y IG5vdyBjYW4gd2UgYXQgbGVhc3QgcHJpbnQgYSByYXRlbGltaXRlZCBlcnJvciBtZXNzYWdlPyAg SSBkb24ndA0KPiA+ID4gbGlrZSB0aGUgaWRlYSBvZiBzaWxlbnRseSBpZ25vcmluZyB0aGVzZSBl cnJvcnMuICBJIHN1cHBvc2UgaXQncyBhDQo+ID4gPiBzZXBhcmF0ZSBpc3N1ZSBmcm9tIGV4dGVu ZGluZyB0aGUgd29ya2Fyb3VuZCB0byBjb3ZlciBlNTAwbWMsIHRob3VnaC4NCj4gPiA+DQo+ID4g SSBkb24ndCByZWFsbHkgbGlrZSB0aGUgaWRlYSBvZiBwcmludGluZyBhbiBlcnJvciBtZXNzYWdl IHByZXR0eSBtdWNoDQo+ID4gZWFjaCB0aW1lIHdoZW4gYW4gdW5leHBlY3RlZCBob3RwbHVnIGV2 ZW50IG9jY3Vycy4NCj4gDQo+IFVuZXhwZWN0ZWQgZXZlbnRzIHNlZW0gbGlrZSB0aGUgc29ydCBv ZiB0aGluZyB5b3UnZCB3YW50IHRvIGxvZywgYnV0IG15DQo+IGNvbmNlcm4gaXMgdGhhdCB0aGlz IG1pZ2h0IG5vdCBiZSB0aGUgb25seSBjYXVzZSBvZiBQQ0kgZXJyb3JzLg0KPiANCj4gLVNjb3R0 DQo+IA0KDQo= ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-09-29 18:36 ` Scott Wood 2014-09-29 19:06 ` Guenter Roeck @ 2014-10-08 3:08 ` Hongtao Jia 2014-10-08 23:48 ` Scott Wood 1 sibling, 1 reply; 14+ messages in thread From: Hongtao Jia @ 2014-10-08 3:08 UTC (permalink / raw) To: Scott Wood, Guenter Roeck Cc: linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Jojy G Varghese DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogV29vZCBTY290dC1CMDc0 MjENCj4gU2VudDogVHVlc2RheSwgU2VwdGVtYmVyIDMwLCAyMDE0IDI6MzYgQU0NCj4gVG86IEd1 ZW50ZXIgUm9lY2sNCj4gQ2M6IEJlbmphbWluIEhlcnJlbnNjaG1pZHQ7IFBhdWwgTWFja2VycmFz OyBNaWNoYWVsIEVsbGVybWFuOyBsaW51eHBwYy0NCj4gZGV2QGxpc3RzLm96bGFicy5vcmc7IGxp bnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmc7IEpvankgRyBWYXJnaGVzZTsNCj4gR3VlbnRlciBS b2VjazsgSmlhIEhvbmd0YW8tQjM4OTUxDQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0hdIHBvd2VycGMv ZnNsOiBBZGQgc3VwcG9ydCBmb3IgcGNpKGUpIG1hY2hpbmUgY2hlY2sNCj4gZXhjZXB0aW9uIG9u IEU1MDBNQyAvIEU1NTAwDQo+IA0KPiBPbiBNb24sIDIwMTQtMDktMjkgYXQgMDk6NDggLTA3MDAs IEd1ZW50ZXIgUm9lY2sgd3JvdGU6DQo+ID4gRnJvbTogSm9qeSBHIFZhcmdoZXNlIDxqb2p5dkBq dW5pcGVyLm5ldD4NCj4gPg0KPiA+IEZvciBFNTAwTUMgYW5kIEU1NTAwLCBhIG1hY2hpbmUgY2hl Y2sgZXhjZXB0aW9uIGluIHBjaShlKSBtZW1vcnkgc3BhY2UNCj4gPiBjcmFzaGVzIHRoZSBrZXJu ZWwuDQo+ID4NCj4gPiBUZXN0aW5nIHNob3dzIHRoYXQgdGhlIE1DQVIoVSkgcmVnaXN0ZXIgaXMg emVybyBvbiBhIE1DIGV4Y2VwdGlvbiBmb3INCj4gPiB0aGUNCj4gPiBFNTUwMCBjb3JlLiBBdCB0 aGUgc2FtZSB0aW1lLCBERUFSIHJlZ2lzdGVyIGhhcyBiZWVuIGZvdW5kIHRvIGhhdmUgdGhlDQo+ ID4gYWRkcmVzcyBvZiB0aGUgZmF1bHR5IGxvYWQgYWRkcmVzcyBkdXJpbmcgYW4gTUMgZXhjZXB0 aW9uIGZvciB0aGlzIGNvcmUuDQo+ID4NCj4gPiBUaGlzIGZpeCBjaGFuZ2VzIHRoZSBjdXJyZW50 IGJlaGF2aW9yIHRvIGZpeHVwIHRoZSByZXN1bHQgcmVnaXN0ZXIgYW5kDQo+ID4gaW5zdHJ1Y3Rp b24gcG9pbnRlcnMgaW4gdGhlIGNhc2Ugb2YgYSBsb2FkIG9wZXJhdGlvbiBvbiBhIGZhdWx0eSBQ Q0kNCj4gPiBhZGRyZXNzLg0KPiA+DQo+ID4gVGhlIGNoYW5nZXMgYXJlOg0KPiA+IC0gQWRkZWQg dGhlIGhvb2sgdG8gcGNpIG1hY2hpbmUgY2hlY2sgaGFuZGluZyB0byB0aGUgZTUwMG1jIG1hY2hp bmUNCj4gY2hlY2sNCj4gPiAgIGV4Y2VwdGlvbiBoYW5kbGVyLg0KPiA+IC0gRm9yIHRoZSBFNTUw MCBjb3JlLCBsb2FkIGZhdWx0aW5nIGFkZHJlc3MgZnJvbSBTUFJOX0RFQVIgcmVnaXN0ZXIuDQo+ ID4gICBBcyBtZW50aW9uZWQgYWJvdmUsIHRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIEU1 NTAwIGNvcmUgZG9lcyBub3QNCj4gPiAgIHJlcG9ydCB0aGUgZmF1bHQgYWRkcmVzcyBpbiB0aGUg TUNBUiByZWdpc3Rlci4NCj4gPg0KPiA+IENjOiBTY290dCBXb29kIDxzY290dHdvb2RAZnJlZXNj YWxlLmNvbT4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBKb2p5IEcgVmFyZ2hlc2UgPGpvanl2QGp1bmlw ZXIubmV0PiBbR3VlbnRlciBSb2VjazoNCj4gPiB1cGRhdGVkIGRlc2NyaXB0aW9uXQ0KPiA+IFNp Z25lZC1vZmYtYnk6IEd1ZW50ZXIgUm9lY2sgPGdyb2Vja0BqdW5pcGVyLm5ldD4NCj4gPiBTaWdu ZWQtb2ZmLWJ5OiBHdWVudGVyIFJvZWNrIDxsaW51eEByb2Vjay11cy5uZXQ+DQo+ID4gLS0tDQo+ ID4gIGFyY2gvcG93ZXJwYy9rZXJuZWwvdHJhcHMuYyAgIHwgMyArKy0NCj4gPiAgYXJjaC9wb3dl cnBjL3N5c2Rldi9mc2xfcGNpLmMgfCA1ICsrKysrDQo+ID4gIDIgZmlsZXMgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9w b3dlcnBjL2tlcm5lbC90cmFwcy5jIGIvYXJjaC9wb3dlcnBjL2tlcm5lbC90cmFwcy5jDQo+ID4g aW5kZXggMGRjNDNmOS4uZWNiNzA5YiAxMDA2NDQNCj4gPiAtLS0gYS9hcmNoL3Bvd2VycGMva2Vy bmVsL3RyYXBzLmMNCj4gPiArKysgYi9hcmNoL3Bvd2VycGMva2VybmVsL3RyYXBzLmMNCj4gPiBA QCAtNDk0LDcgKzQ5NCw4IEBAIGludCBtYWNoaW5lX2NoZWNrX2U1MDBtYyhzdHJ1Y3QgcHRfcmVn cyAqcmVncykNCj4gPiAgCWludCByZWNvdmVyYWJsZSA9IDE7DQo+ID4NCj4gPiAgCWlmIChyZWFz b24gJiBNQ1NSX0xEKSB7DQo+ID4gLQkJcmVjb3ZlcmFibGUgPSBmc2xfcmlvX21jaGVja19leGNl cHRpb24ocmVncyk7DQo+ID4gKwkJcmVjb3ZlcmFibGUgPSBmc2xfcmlvX21jaGVja19leGNlcHRp b24ocmVncykgfHwNCj4gPiArCQkJZnNsX3BjaV9tY2hlY2tfZXhjZXB0aW9uKHJlZ3MpOw0KPiA+ ICAJCWlmIChyZWNvdmVyYWJsZSA9PSAxKQ0KPiA+ICAJCQlnb3RvIHNpbGVudF9vdXQ7DQo+ID4g IAl9DQo+ID4gZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX3BjaS5jDQo+ID4g Yi9hcmNoL3Bvd2VycGMvc3lzZGV2L2ZzbF9wY2kuYyBpbmRleCBjNTA3NzY3Li5iZGI5NTZiIDEw MDY0NA0KPiA+IC0tLSBhL2FyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX3BjaS5jDQo+ID4gKysrIGIv YXJjaC9wb3dlcnBjL3N5c2Rldi9mc2xfcGNpLmMNCj4gPiBAQCAtMTAyMSw2ICsxMDIxLDExIEBA IGludCBmc2xfcGNpX21jaGVja19leGNlcHRpb24oc3RydWN0IHB0X3JlZ3MNCj4gPiAqcmVncykg ICNlbmRpZg0KPiA+ICAJYWRkciArPSBtZnNwcihTUFJOX01DQVIpOw0KPiA+DQo+ID4gKyNpZmRl ZiBDT05GSUdfRTU1MDBfQ1BVDQo+ID4gKwlpZiAobWZzcHIoU1BSTl9FUENSKSAmIFNQUk5fRVBD Ul9JQ00pDQo+ID4gKwkJYWRkciA9IFBGTl9QSFlTKHZtYWxsb2NfdG9fcGZuKCh2b2lkICopbWZz cHIoU1BSTl9ERUFSKSkpOw0KPiAjZW5kaWYNCj4gDQo+IEtjb25maWcgdGVsbHMgeW91IHdoYXQg aGFyZHdhcmUgaXMgc3VwcG9ydGVkLCBub3Qgd2hhdCBoYXJkd2FyZSB5b3UncmUNCj4gYWN0dWFs bHkgcnVubmluZyBvbi4NCj4gDQo+IEppYSBIb25ndGFvLCBkbyB5b3Uga25vdyBhbnl0aGluZyBh Ym91dCB0aGlzIGlzc3VlPyAgSXMgdGhlcmUgYW4gZXJyYXR1bT8NCg0KU29ycnkgZm9yIHRoZSBs YXRlIHJlc3BvbnNlLCBJIGp1c3QgcmV0dXJuIGZyb20gbXkgdmFjYXRpb24uDQpJIGRvbid0IGtu b3cgdGhpcyBpc3N1ZS4NCg0KPiBXaGF0IGNoaXBzIGFyZSBhZmZlY3RlZCBieSB0aGUgdGhlIGVy cmF0dW0gY292ZXJlZCBieQ0KPiA8aHR0cDovL3BhdGNod29yay5vemxhYnMub3JnL3BhdGNoLzI0 MDIzOS8+Pw0KDQpNUEM4NTQ0LCBNUEM4NTQ4LCBNUEM4NTcyIGFyZSBhZmZlY3RlZCBieSB0aGlz IGVycmF0dW0uDQpJIGNoZWNrZWQgUDQwODAgd2hpY2ggdXNpbmcgZTUwMG1jIGFuZCBubyBzdWNo IGVycmF0dW0gaXMgZm91bmQuDQoNCj4gDQo+IENhbiB3ZSByZWx5IG9uIERFQVIgb3IgaXMgdGhp cyBqdXN0IGEgc2lkZSBlZmZlY3Qgb2YgbGlrZWx5IGhhdmluZyB0YWtlbg0KPiBhIFRMQiBtaXNz IGZvciB0aGUgYWRkcmVzcyByZWNlbnRseT8gIFBlcmhhcHMgd2Ugc2hvdWxkIHVzZSB0aGUNCj4g aW5zdHJ1Y3Rpb24gZW11bGF0aW9uIHRvIGRldGVybWluZSB0aGUgZWZmZWN0aXZlIGFkZHJlc3Mg aW5zdGVhZC4NCj4gDQo+IEd1ZW50ZXIsIGlzIHRoaXMgcGF0Y2ggaW50ZW5kZWQgdG8gZGVhbCB3 aXRoIGFuIGVycmF0dW0gb3IgYXJlIHlvdQ0KPiBjb3ZlcmluZyB1cCBsZWdpdGltYXRlIGVycm9y cz8NCj4gDQo+IC1TY290dA0KPiANCg0K ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-10-08 3:08 ` Hongtao Jia @ 2014-10-08 23:48 ` Scott Wood 2014-10-09 2:18 ` Hongtao Jia 0 siblings, 1 reply; 14+ messages in thread From: Scott Wood @ 2014-10-08 23:48 UTC (permalink / raw) To: Jia Hongtao-B38951 Cc: linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Guenter Roeck, Jojy G Varghese On Tue, 2014-10-07 at 22:08 -0500, Jia Hongtao-B38951 wrote: > > > -----Original Message----- > > From: Wood Scott-B07421 > > Sent: Tuesday, September 30, 2014 2:36 AM > > To: Guenter Roeck > > Cc: Benjamin Herrenschmidt; Paul Mackerras; Michael Ellerman; linuxppc- > > dev@lists.ozlabs.org; linux-kernel@vger.kernel.org; Jojy G Varghese; > > Guenter Roeck; Jia Hongtao-B38951 > > Subject: Re: [PATCH] powerpc/fsl: Add support for pci(e) machine check > > exception on E500MC / E5500 > > > > On Mon, 2014-09-29 at 09:48 -0700, Guenter Roeck wrote: > > > From: Jojy G Varghese <jojyv@juniper.net> > > > > > > For E500MC and E5500, a machine check exception in pci(e) memory space > > > crashes the kernel. > > > > > > Testing shows that the MCAR(U) register is zero on a MC exception for > > > the > > > E5500 core. At the same time, DEAR register has been found to have the > > > address of the faulty load address during an MC exception for this core. > > > > > > This fix changes the current behavior to fixup the result register and > > > instruction pointers in the case of a load operation on a faulty PCI > > > address. > > > > > > The changes are: > > > - Added the hook to pci machine check handing to the e500mc machine > > check > > > exception handler. > > > - For the E5500 core, load faulting address from SPRN_DEAR register. > > > As mentioned above, this is necessary because the E5500 core does not > > > report the fault address in the MCAR register. > > > > > > Cc: Scott Wood <scottwood@freescale.com> > > > Signed-off-by: Jojy G Varghese <jojyv@juniper.net> [Guenter Roeck: > > > updated description] > > > Signed-off-by: Guenter Roeck <groeck@juniper.net> > > > Signed-off-by: Guenter Roeck <linux@roeck-us.net> > > > --- > > > arch/powerpc/kernel/traps.c | 3 ++- > > > arch/powerpc/sysdev/fsl_pci.c | 5 +++++ > > > 2 files changed, 7 insertions(+), 1 deletion(-) > > > > > > diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c > > > index 0dc43f9..ecb709b 100644 > > > --- a/arch/powerpc/kernel/traps.c > > > +++ b/arch/powerpc/kernel/traps.c > > > @@ -494,7 +494,8 @@ int machine_check_e500mc(struct pt_regs *regs) > > > int recoverable = 1; > > > > > > if (reason & MCSR_LD) { > > > - recoverable = fsl_rio_mcheck_exception(regs); > > > + recoverable = fsl_rio_mcheck_exception(regs) || > > > + fsl_pci_mcheck_exception(regs); > > > if (recoverable == 1) > > > goto silent_out; > > > } > > > diff --git a/arch/powerpc/sysdev/fsl_pci.c > > > b/arch/powerpc/sysdev/fsl_pci.c index c507767..bdb956b 100644 > > > --- a/arch/powerpc/sysdev/fsl_pci.c > > > +++ b/arch/powerpc/sysdev/fsl_pci.c > > > @@ -1021,6 +1021,11 @@ int fsl_pci_mcheck_exception(struct pt_regs > > > *regs) #endif > > > addr += mfspr(SPRN_MCAR); > > > > > > +#ifdef CONFIG_E5500_CPU > > > + if (mfspr(SPRN_EPCR) & SPRN_EPCR_ICM) > > > + addr = PFN_PHYS(vmalloc_to_pfn((void *)mfspr(SPRN_DEAR))); > > #endif > > > > Kconfig tells you what hardware is supported, not what hardware you're > > actually running on. > > > > Jia Hongtao, do you know anything about this issue? Is there an erratum? > > Sorry for the late response, I just return from my vacation. > I don't know this issue. > > > What chips are affected by the the erratum covered by > > <http://patchwork.ozlabs.org/patch/240239/>? > > MPC8544, MPC8548, MPC8572 are affected by this erratum. What is the erratum number? > I checked P4080 which using e500mc and no such erratum is found. What is the erratum behavior, and how does it differ from the problem that Jojy and Guenter are trying to solve? -Scott ^ permalink raw reply [flat|nested] 14+ messages in thread
* RE: [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 2014-10-08 23:48 ` Scott Wood @ 2014-10-09 2:18 ` Hongtao Jia 0 siblings, 0 replies; 14+ messages in thread From: Hongtao Jia @ 2014-10-09 2:18 UTC (permalink / raw) To: Scott Wood Cc: linux-kernel@vger.kernel.org, Guenter Roeck, Paul Mackerras, linuxppc-dev@lists.ozlabs.org, Guenter Roeck, Jojy G Varghese DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogV29vZCBTY290dC1CMDc0 MjENCj4gU2VudDogVGh1cnNkYXksIE9jdG9iZXIgMDksIDIwMTQgNzo0OCBBTQ0KPiBUbzogSmlh IEhvbmd0YW8tQjM4OTUxDQo+IENjOiBHdWVudGVyIFJvZWNrOyBCZW5qYW1pbiBIZXJyZW5zY2ht aWR0OyBQYXVsIE1hY2tlcnJhczsgTWljaGFlbA0KPiBFbGxlcm1hbjsgbGludXhwcGMtZGV2QGxp c3RzLm96bGFicy5vcmc7IGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmc7DQo+IEpvankgRyBW YXJnaGVzZTsgR3VlbnRlciBSb2Vjaw0KPiBTdWJqZWN0OiBSZTogW1BBVENIXSBwb3dlcnBjL2Zz bDogQWRkIHN1cHBvcnQgZm9yIHBjaShlKSBtYWNoaW5lIGNoZWNrDQo+IGV4Y2VwdGlvbiBvbiBF NTAwTUMgLyBFNTUwMA0KPiANCj4gT24gVHVlLCAyMDE0LTEwLTA3IGF0IDIyOjA4IC0wNTAwLCBK aWEgSG9uZ3Rhby1CMzg5NTEgd3JvdGU6DQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+ID4gPiBGcm9tOiBXb29kIFNjb3R0LUIwNzQyMQ0KPiA+ID4gU2VudDogVHVlc2Rh eSwgU2VwdGVtYmVyIDMwLCAyMDE0IDI6MzYgQU0NCj4gPiA+IFRvOiBHdWVudGVyIFJvZWNrDQo+ ID4gPiBDYzogQmVuamFtaW4gSGVycmVuc2NobWlkdDsgUGF1bCBNYWNrZXJyYXM7IE1pY2hhZWwg RWxsZXJtYW47DQo+ID4gPiBsaW51eHBwYy0gZGV2QGxpc3RzLm96bGFicy5vcmc7IGxpbnV4LWtl cm5lbEB2Z2VyLmtlcm5lbC5vcmc7IEpvankgRw0KPiA+ID4gVmFyZ2hlc2U7IEd1ZW50ZXIgUm9l Y2s7IEppYSBIb25ndGFvLUIzODk1MQ0KPiA+ID4gU3ViamVjdDogUmU6IFtQQVRDSF0gcG93ZXJw Yy9mc2w6IEFkZCBzdXBwb3J0IGZvciBwY2koZSkgbWFjaGluZQ0KPiA+ID4gY2hlY2sgZXhjZXB0 aW9uIG9uIEU1MDBNQyAvIEU1NTAwDQo+ID4gPg0KPiA+ID4gT24gTW9uLCAyMDE0LTA5LTI5IGF0 IDA5OjQ4IC0wNzAwLCBHdWVudGVyIFJvZWNrIHdyb3RlOg0KPiA+ID4gPiBGcm9tOiBKb2p5IEcg VmFyZ2hlc2UgPGpvanl2QGp1bmlwZXIubmV0Pg0KPiA+ID4gPg0KPiA+ID4gPiBGb3IgRTUwME1D IGFuZCBFNTUwMCwgYSBtYWNoaW5lIGNoZWNrIGV4Y2VwdGlvbiBpbiBwY2koZSkgbWVtb3J5DQo+ ID4gPiA+IHNwYWNlIGNyYXNoZXMgdGhlIGtlcm5lbC4NCj4gPiA+ID4NCj4gPiA+ID4gVGVzdGlu ZyBzaG93cyB0aGF0IHRoZSBNQ0FSKFUpIHJlZ2lzdGVyIGlzIHplcm8gb24gYSBNQyBleGNlcHRp b24NCj4gPiA+ID4gZm9yIHRoZQ0KPiA+ID4gPiBFNTUwMCBjb3JlLiBBdCB0aGUgc2FtZSB0aW1l LCBERUFSIHJlZ2lzdGVyIGhhcyBiZWVuIGZvdW5kIHRvIGhhdmUNCj4gPiA+ID4gdGhlIGFkZHJl c3Mgb2YgdGhlIGZhdWx0eSBsb2FkIGFkZHJlc3MgZHVyaW5nIGFuIE1DIGV4Y2VwdGlvbiBmb3IN Cj4gdGhpcyBjb3JlLg0KPiA+ID4gPg0KPiA+ID4gPiBUaGlzIGZpeCBjaGFuZ2VzIHRoZSBjdXJy ZW50IGJlaGF2aW9yIHRvIGZpeHVwIHRoZSByZXN1bHQgcmVnaXN0ZXINCj4gPiA+ID4gYW5kIGlu c3RydWN0aW9uIHBvaW50ZXJzIGluIHRoZSBjYXNlIG9mIGEgbG9hZCBvcGVyYXRpb24gb24gYQ0K PiA+ID4gPiBmYXVsdHkgUENJIGFkZHJlc3MuDQo+ID4gPiA+DQo+ID4gPiA+IFRoZSBjaGFuZ2Vz IGFyZToNCj4gPiA+ID4gLSBBZGRlZCB0aGUgaG9vayB0byBwY2kgbWFjaGluZSBjaGVjayBoYW5k aW5nIHRvIHRoZSBlNTAwbWMNCj4gPiA+ID4gbWFjaGluZQ0KPiA+ID4gY2hlY2sNCj4gPiA+ID4g ICBleGNlcHRpb24gaGFuZGxlci4NCj4gPiA+ID4gLSBGb3IgdGhlIEU1NTAwIGNvcmUsIGxvYWQg ZmF1bHRpbmcgYWRkcmVzcyBmcm9tIFNQUk5fREVBUiByZWdpc3Rlci4NCj4gPiA+ID4gICBBcyBt ZW50aW9uZWQgYWJvdmUsIHRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIEU1NTAwIGNvcmUg ZG9lcw0KPiBub3QNCj4gPiA+ID4gICByZXBvcnQgdGhlIGZhdWx0IGFkZHJlc3MgaW4gdGhlIE1D QVIgcmVnaXN0ZXIuDQo+ID4gPiA+DQo+ID4gPiA+IENjOiBTY290dCBXb29kIDxzY290dHdvb2RA ZnJlZXNjYWxlLmNvbT4NCj4gPiA+ID4gU2lnbmVkLW9mZi1ieTogSm9qeSBHIFZhcmdoZXNlIDxq b2p5dkBqdW5pcGVyLm5ldD4gW0d1ZW50ZXIgUm9lY2s6DQo+ID4gPiA+IHVwZGF0ZWQgZGVzY3Jp cHRpb25dDQo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEd1ZW50ZXIgUm9lY2sgPGdyb2Vja0BqdW5p cGVyLm5ldD4NCj4gPiA+ID4gU2lnbmVkLW9mZi1ieTogR3VlbnRlciBSb2VjayA8bGludXhAcm9l Y2stdXMubmV0Pg0KPiA+ID4gPiAtLS0NCj4gPiA+ID4gIGFyY2gvcG93ZXJwYy9rZXJuZWwvdHJh cHMuYyAgIHwgMyArKy0NCj4gPiA+ID4gIGFyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX3BjaS5jIHwg NSArKysrKw0KPiA+ID4gPiAgMiBmaWxlcyBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkNCj4gPiA+ID4NCj4gPiA+ID4gZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9rZXJu ZWwvdHJhcHMuYw0KPiA+ID4gPiBiL2FyY2gvcG93ZXJwYy9rZXJuZWwvdHJhcHMuYyBpbmRleCAw ZGM0M2Y5Li5lY2I3MDliIDEwMDY0NA0KPiA+ID4gPiAtLS0gYS9hcmNoL3Bvd2VycGMva2VybmVs L3RyYXBzLmMNCj4gPiA+ID4gKysrIGIvYXJjaC9wb3dlcnBjL2tlcm5lbC90cmFwcy5jDQo+ID4g PiA+IEBAIC00OTQsNyArNDk0LDggQEAgaW50IG1hY2hpbmVfY2hlY2tfZTUwMG1jKHN0cnVjdCBw dF9yZWdzICpyZWdzKQ0KPiA+ID4gPiAgCWludCByZWNvdmVyYWJsZSA9IDE7DQo+ID4gPiA+DQo+ ID4gPiA+ICAJaWYgKHJlYXNvbiAmIE1DU1JfTEQpIHsNCj4gPiA+ID4gLQkJcmVjb3ZlcmFibGUg PSBmc2xfcmlvX21jaGVja19leGNlcHRpb24ocmVncyk7DQo+ID4gPiA+ICsJCXJlY292ZXJhYmxl ID0gZnNsX3Jpb19tY2hlY2tfZXhjZXB0aW9uKHJlZ3MpIHx8DQo+ID4gPiA+ICsJCQlmc2xfcGNp X21jaGVja19leGNlcHRpb24ocmVncyk7DQo+ID4gPiA+ICAJCWlmIChyZWNvdmVyYWJsZSA9PSAx KQ0KPiA+ID4gPiAgCQkJZ290byBzaWxlbnRfb3V0Ow0KPiA+ID4gPiAgCX0NCj4gPiA+ID4gZGlm ZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9zeXNkZXYvZnNsX3BjaS5jDQo+ID4gPiA+IGIvYXJjaC9w b3dlcnBjL3N5c2Rldi9mc2xfcGNpLmMgaW5kZXggYzUwNzc2Ny4uYmRiOTU2YiAxMDA2NDQNCj4g PiA+ID4gLS0tIGEvYXJjaC9wb3dlcnBjL3N5c2Rldi9mc2xfcGNpLmMNCj4gPiA+ID4gKysrIGIv YXJjaC9wb3dlcnBjL3N5c2Rldi9mc2xfcGNpLmMNCj4gPiA+ID4gQEAgLTEwMjEsNiArMTAyMSwx MSBAQCBpbnQgZnNsX3BjaV9tY2hlY2tfZXhjZXB0aW9uKHN0cnVjdCBwdF9yZWdzDQo+ID4gPiA+ ICpyZWdzKSAgI2VuZGlmDQo+ID4gPiA+ICAJYWRkciArPSBtZnNwcihTUFJOX01DQVIpOw0KPiA+ ID4gPg0KPiA+ID4gPiArI2lmZGVmIENPTkZJR19FNTUwMF9DUFUNCj4gPiA+ID4gKwlpZiAobWZz cHIoU1BSTl9FUENSKSAmIFNQUk5fRVBDUl9JQ00pDQo+ID4gPiA+ICsJCWFkZHIgPSBQRk5fUEhZ Uyh2bWFsbG9jX3RvX3Bmbigodm9pZA0KPiAqKW1mc3ByKFNQUk5fREVBUikpKTsNCj4gPiA+ICNl bmRpZg0KPiA+ID4NCj4gPiA+IEtjb25maWcgdGVsbHMgeW91IHdoYXQgaGFyZHdhcmUgaXMgc3Vw cG9ydGVkLCBub3Qgd2hhdCBoYXJkd2FyZQ0KPiA+ID4geW91J3JlIGFjdHVhbGx5IHJ1bm5pbmcg b24uDQo+ID4gPg0KPiA+ID4gSmlhIEhvbmd0YW8sIGRvIHlvdSBrbm93IGFueXRoaW5nIGFib3V0 IHRoaXMgaXNzdWU/ICBJcyB0aGVyZSBhbg0KPiBlcnJhdHVtPw0KPiA+DQo+ID4gU29ycnkgZm9y IHRoZSBsYXRlIHJlc3BvbnNlLCBJIGp1c3QgcmV0dXJuIGZyb20gbXkgdmFjYXRpb24uDQo+ID4g SSBkb24ndCBrbm93IHRoaXMgaXNzdWUuDQo+ID4NCj4gPiA+IFdoYXQgY2hpcHMgYXJlIGFmZmVj dGVkIGJ5IHRoZSB0aGUgZXJyYXR1bSBjb3ZlcmVkIGJ5DQo+ID4gPiA8aHR0cDovL3BhdGNod29y ay5vemxhYnMub3JnL3BhdGNoLzI0MDIzOS8+Pw0KPiA+DQo+ID4gTVBDODU0NCwgTVBDODU0OCwg TVBDODU3MiBhcmUgYWZmZWN0ZWQgYnkgdGhpcyBlcnJhdHVtLg0KPiANCj4gV2hhdCBpcyB0aGUg ZXJyYXR1bSBudW1iZXI/DQoNClRoZSBudW1iZXIgb2YgdGhpcyBlcnJhdHVtIGZvciBlYWNoIGNo aXAgaXMgbm90IGNvbnNpc3RlbnQuDQpNUEM4NTQ0OiBQQ0llIDQNCk1QQzg1NDg6IFBDSS1FeCAz OQ0KTVBDODU3MjogUENJLUV4IDMNCg0KPiANCj4gPiBJIGNoZWNrZWQgUDQwODAgd2hpY2ggdXNp bmcgZTUwMG1jIGFuZCBubyBzdWNoIGVycmF0dW0gaXMgZm91bmQuDQo+IA0KPiBXaGF0IGlzIHRo ZSBlcnJhdHVtIGJlaGF2aW9yLCBhbmQgaG93IGRvZXMgaXQgZGlmZmVyIGZyb20gdGhlIHByb2Js ZW0NCj4gdGhhdCBKb2p5IGFuZCBHdWVudGVyIGFyZSB0cnlpbmcgdG8gc29sdmU/DQoNCkhlcmUg aXMgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJhdHVtOg0KDQoiV2hlbiBpdHMgbGluayBnb2Vz IGRvd24sIHRoZSBQQ0kgRXhwcmVzcyBjb250cm9sbGVyIGNsZWFycyBhbGwgb3V0c3RhbmRpbmcg dHJhbnNhY3Rpb25zIHdpdGggYW4NCmVycm9yIGluZGljYXRvciBhbmQgc2VuZHMgYSBsaW5rIGRv d24gZXhjZXB0aW9uIHRvIHRoZSBpbnRlcnJ1cHQgY29udHJvbGxlciBpZg0KUEVYX1BNRV9NRVNf RElTUltMREREXSA9IDAuIElmLCBob3dldmVyLCBhbnkgdHJhbnNhY3Rpb25zIGFyZSBzZW50IHRv IHRoZSBjb250cm9sbGVyDQphZnRlciB0aGUgbGluayBkb3duIGV2ZW50LCB0aGV5IHdpbGwgYmUg YWNjZXB0ZWQgYnkgdGhlIGNvbnRyb2xsZXIgYW5kIHdhaXQgZm9yIHRoZSBsaW5rIHRvIGNvbWUN CmJhY2sgdXAgYmVmb3JlIHN0YXJ0aW5nIGFueSB0aW1lb3V0IGNvdW50ZXJzIChlLmcuIGNvbXBs ZXRpb24gdGltZW91dCkuIFRoZXJlIGlzIG5vIG1lY2hhbmlzbQ0KdG8gY2FuY2VsIHRoZSBuZXcg dHJhbnNhY3Rpb25zIHNob3J0IG9mIGEgZGV2aWNlIEhSRVNFVC4iDQoNCkZvciBlNTAwbWMgYXMg Sm9qeSBhbmQgR3VlbnRlciBkZXNjcmliZWQgaXQncyBsaWtlIHRoZSBzYW1lIGVycmF0dW0gb24g ZTUwMCwgbm90IDEwMCUgc3VyZS4NCg0KRm9yIGU1NTAwIEkgZG9uJ3QgcXVpdGUgdW5kZXJzdGFu ZCB5ZXQuDQoNCj4gDQo+IC1TY290dA0KPiANCg0K ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2014-10-09 2:18 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-09-29 16:48 [PATCH] powerpc/fsl: Add support for pci(e) machine check exception on E500MC / E5500 Guenter Roeck 2014-09-29 18:36 ` Scott Wood 2014-09-29 19:06 ` Guenter Roeck 2014-09-29 23:03 ` Jojy Varghese 2014-09-29 23:31 ` Scott Wood 2014-09-30 15:50 ` Guenter Roeck 2014-09-30 20:15 ` Jojy Varghese 2014-09-30 20:17 ` Scott Wood 2014-09-30 20:20 ` Jojy Varghese 2014-10-01 0:43 ` Scott Wood 2014-10-08 3:10 ` Hongtao Jia 2014-10-08 3:08 ` Hongtao Jia 2014-10-08 23:48 ` Scott Wood 2014-10-09 2:18 ` Hongtao Jia
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).