[rfc 2/3] powerpc/mce: Extract physical_address for UE errors
Benjamin Herrenschmidt
benh at au1.ibm.com
Thu Sep 7 08:56:12 AEST 2017
On Tue, 2017-09-05 at 14:15 +1000, Balbir Singh wrote:
> void save_mce_event(struct pt_regs *regs, long handled,
> struct mce_error_info *mce_err,
> - uint64_t nip, uint64_t addr)
> + uint64_t nip, uint64_t addr, uint64_t phys_addr)
> {
> int index = __this_cpu_inc_return(mce_nest_count) - 1;
> struct machine_check_event *mce = this_cpu_ptr(&mce_event[index]);
> @@ -140,6 +140,10 @@ void save_mce_event(struct pt_regs *regs, long handled,
> } else if (mce->error_type == MCE_ERROR_TYPE_UE) {
> mce->u.ue_error.effective_address_provided = true;
> mce->u.ue_error.effective_address = addr;
> + if (phys_addr != ULONG_MAX) {
> + mce->u.ue_error.physical_address_provided = true;
> + mce->u.ue_error.physical_address = phys_addr;
> + }
> }
> return;
Where is "addr" coming from ? Keep in mind that on P9 at least, a UE
will *not* give you an EA in DAR in most cases.
Ben.
More information about the Linuxppc-dev
mailing list