diff options
author | Tony Luck <tony.luck@intel.com> | 2012-05-14 15:07:48 -0700 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2012-05-14 15:07:48 -0700 |
commit | dad1743e5993f19b3d7e7bd0fb35dc45b5326626 (patch) | |
tree | 98ff01524c0e7393616a2ac9102d06ccc3ed6f95 /scripts/cleanfile | |
parent | d48b97b403d23f6df0b990cee652bdf9a52337a3 (diff) |
x86/mce: Only restart instruction after machine check recovery if it is safe
Section 15.3.1.2 of the software developer manual has this to say about the
RIPV bit in the IA32_MCG_STATUS register:
RIPV (restart IP valid) flag, bit 0 — Indicates (when set) that program
execution can be restarted reliably at the instruction pointed to by the
instruction pointer pushed on the stack when the machine-check exception
is generated. When clear, the program cannot be reliably restarted at
the pushed instruction pointer.
We need to save the state of this bit in do_machine_check() and use it
in mce_notify_process() to force a signal; even if memory_failure() says
it made a complete recovery ... e.g. replaced a clean LRU page.
Acked-by: Borislav Petkov <bp@amd64.org>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'scripts/cleanfile')
0 files changed, 0 insertions, 0 deletions