RE: [PATCH V4] powerpc/85xx: Add machine check handler to fix PCIe erratum on mpc85xx
From: Jia Hongtao-B38951 <hidden>
Date: 2013-03-05 10:12:40
-----Original Message----- From: Wood Scott-B07421 Sent: Tuesday, March 05, 2013 7:46 AM To: Stuart Yoder Cc: Jia Hongtao-B38951; linuxppc-dev@lists.ozlabs.org; Kumar Gala Subject: Re: [PATCH V4] powerpc/85xx: Add machine check handler to fix PCIe erratum on mpc85xx =20 On 03/04/2013 10:16:10 AM, Stuart Yoder wrote:quoted
On Mon, Mar 4, 2013 at 2:40 AM, Jia Hongtao [off-list ref] wrote:quoted
A PCIe erratum of mpc85xx may causes a core hang when a link of PCIe goes down. when the link goes down, Non-posted transactions issued via the ATMU requiring completion result in an instruction stall. At the same time a machine-check exception is generated to the core to allow further processing by the handler. We implements thehandlerquoted
which skips the instruction caused the stall.Can you explain at a high level how just skipping an instruction solves anything? If you just skip a load/store and continue like nothing is wrong, isn't your system possibly in a really bad state.=20 If the instruction was a load, we probably at least want to fill the destination register with 0xffffffff or similar.
You discuss this with Liu Shuo about a year ago. here is the log: " On 02/01/2012 02:18 AM, shuo.liu@freescale.com wrote:
v3 : Skip the instruction only. Don't access the user space memory in=20
mechine check.=20It may be the least bad option for now, but be aware that there's a small chance that this will cause a leak of sensitive information (such as a piece of a crypto key that happened to be sitting in the register to be loaded into). -Scott " -Hongtao.
=20quoted
And if the core is already hung, due to the PCI link going down, isn't it too late? How does skipping help?=20 Maybe the machine check unhangs the core? =20 Is there an erratum number for this? =20 -Scott