Re: [PATCHV5 3/3] x86, ras: Add __mcsafe_copy() function to recover from machine checks

From: Borislav Petkov
Date: Sun Dec 27 2015 - 05:10:39 EST


On Sat, Dec 26, 2015 at 10:57:26PM -0800, Tony Luck wrote:
> ... will get the right value. Maybe this would still work out
> if the fixup is a 31-bit value plus a flag, but the external
> tool thinks it is a 32-bit value? I'd have to ponder that.

I still fail to see why do we need to make it so complicated and can't
do something like:


fixup_exception:
...

#ifdef CONFIG_MCE_KERNEL_RECOVERY
if (regs->ip >= (unsigned long)__mcsafe_copy &&
regs->ip <= (unsigned long)__mcsafe_copy_end)
run_special_handler();
#endif

and that special handler does all the stuff we want. And we pass
X86_TRAP* etc through fixup_exception along with whatever else we
need from the trap handler...

Hmmm?

--
Regards/Gruss,
Boris.

ECO tip #101: Trim your mails when you reply.
--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/