Re: [PATCH V4] powerpc/85xx: Add machine check handler to fix PCIe erratum on mpc85xx
From: Scott Wood <hidden>
Date: 2013-03-15 16:35:02
On 03/14/2013 09:47:58 PM, Jia Hongtao-B38951 wrote:
=20quoted
-----Original Message----- From: Wood Scott-B07421 Sent: Thursday, March 14, 2013 12:38 AM To: David Laight Cc: Jia Hongtao-B38951; Wood Scott-B07421; =20linuxppc-dev@lists.ozlabs.org;quoted
Stuart Yoder Subject: Re: [PATCH V4] powerpc/85xx: Add machine check handler to =20fixquoted
PCIe erratum on mpc85xx On 03/13/2013 04:40:40 AM, David Laight wrote:quoted
quoted
Hmm, seems there's no probe_user_address() -- for userspace we basically want the same thing minus the KERNEL_DS. See arch/powerpc/perf/callchain.c for an example.Isn't that just copy_from_user() ?Plus pagefault_disable/enable(). -Scott=20 pagefault_disable() is identical to preempt_disable(). So I think this could not avoid other cpu to swap out the instruction we want to read =20 back. probe_kernel_address() also have the same issue.
That's not the point -- the point is to let the page fault handler know =20 that it should go directly to bad_page_fault(). Do not pass =20 handle_mm_fault(). Do not collect a page from disk. Granted, we're already in atomic context which will have that effect =20 due to being in the machine check handler, but it's better to be =20 explicit about it and not depend on how pagefault_diasble() is =20 implemented. -Scott=