From: Borislav Petkov <bp@alien8.de> To: Tony Luck <tony.luck@intel.com> Cc: Ingo Molnar <mingo@kernel.org>, Andrew Morton <akpm@linux-foundation.org>, Andy Lutomirski <luto@kernel.org>, Dan Williams <dan.j.williams@intel.com>, Elliott@pd.tnic, Robert <elliott@hpe.com>, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-nvdimm@ml01.01.org, x86@kernel.org Subject: Re: [PATCHV3 1/3] x86, ras: Add new infrastructure for machine check fixup tables Date: Mon, 21 Dec 2015 19:18:54 +0100 [thread overview] Message-ID: <20151221181854.GF21582@pd.tnic> (raw) In-Reply-To: <2e91c18f23be90b33c2cbfff6cce6b6f50592a96.1450283985.git.tony.luck@intel.com> On Tue, Dec 15, 2015 at 05:29:30PM -0800, Tony Luck wrote: > Copy the existing page fault fixup mechanisms to create a new table > to be used when fixing machine checks. Note: > 1) At this time we only provide a macro to annotate assembly code > 2) We assume all fixups will in code builtin to the kernel. > 3) Only for x86_64 > 4) New code under CONFIG_MCE_KERNEL_RECOVERY (default 'n') > > Signed-off-by: Tony Luck <tony.luck@intel.com> > --- > arch/x86/Kconfig | 10 ++++++++++ > arch/x86/include/asm/asm.h | 10 ++++++++-- > arch/x86/include/asm/mce.h | 14 ++++++++++++++ > arch/x86/kernel/cpu/mcheck/mce.c | 16 ++++++++++++++++ > arch/x86/kernel/vmlinux.lds.S | 6 +++++- > arch/x86/mm/extable.c | 19 +++++++++++++++++++ > include/asm-generic/vmlinux.lds.h | 12 +++++++----- > 7 files changed, 79 insertions(+), 8 deletions(-) > > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig > index 96d058a87100..42d26b4d1ec4 100644 > --- a/arch/x86/Kconfig > +++ b/arch/x86/Kconfig > @@ -1001,6 +1001,16 @@ config X86_MCE_INJECT > If you don't know what a machine check is and you don't do kernel > QA it is safe to say n. > > +config MCE_KERNEL_RECOVERY > + bool "Recovery from machine checks in special kernel memory copy functions" > + default n > + depends on X86_MCE && X86_64 Still no dependency on CONFIG_LIBNVDIMM. > + ---help--- > + This option provides a new memory copy function mcsafe_memcpy() > + that is annotated to allow the machine check handler to return > + to an alternate code path to return an error to the caller instead > + of crashing the system. Say yes if you have a driver that uses this. > + -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply.
WARNING: multiple messages have this Message-ID (diff)
From: Borislav Petkov <bp@alien8.de> To: Tony Luck <tony.luck@intel.com> Cc: Ingo Molnar <mingo@kernel.org>, Andrew Morton <akpm@linux-foundation.org>, Andy Lutomirski <luto@kernel.org>, Dan Williams <dan.j.williams@intel.com>, Elliott@pd.tnic, Robert <elliott@hpe.com>, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-nvdimm@ml01.01.org, x86@kernel.org Subject: Re: [PATCHV3 1/3] x86, ras: Add new infrastructure for machine check fixup tables Date: Mon, 21 Dec 2015 19:18:54 +0100 [thread overview] Message-ID: <20151221181854.GF21582@pd.tnic> (raw) In-Reply-To: <2e91c18f23be90b33c2cbfff6cce6b6f50592a96.1450283985.git.tony.luck@intel.com> On Tue, Dec 15, 2015 at 05:29:30PM -0800, Tony Luck wrote: > Copy the existing page fault fixup mechanisms to create a new table > to be used when fixing machine checks. Note: > 1) At this time we only provide a macro to annotate assembly code > 2) We assume all fixups will in code builtin to the kernel. > 3) Only for x86_64 > 4) New code under CONFIG_MCE_KERNEL_RECOVERY (default 'n') > > Signed-off-by: Tony Luck <tony.luck@intel.com> > --- > arch/x86/Kconfig | 10 ++++++++++ > arch/x86/include/asm/asm.h | 10 ++++++++-- > arch/x86/include/asm/mce.h | 14 ++++++++++++++ > arch/x86/kernel/cpu/mcheck/mce.c | 16 ++++++++++++++++ > arch/x86/kernel/vmlinux.lds.S | 6 +++++- > arch/x86/mm/extable.c | 19 +++++++++++++++++++ > include/asm-generic/vmlinux.lds.h | 12 +++++++----- > 7 files changed, 79 insertions(+), 8 deletions(-) > > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig > index 96d058a87100..42d26b4d1ec4 100644 > --- a/arch/x86/Kconfig > +++ b/arch/x86/Kconfig > @@ -1001,6 +1001,16 @@ config X86_MCE_INJECT > If you don't know what a machine check is and you don't do kernel > QA it is safe to say n. > > +config MCE_KERNEL_RECOVERY > + bool "Recovery from machine checks in special kernel memory copy functions" > + default n > + depends on X86_MCE && X86_64 Still no dependency on CONFIG_LIBNVDIMM. > + ---help--- > + This option provides a new memory copy function mcsafe_memcpy() > + that is annotated to allow the machine check handler to return > + to an alternate code path to return an error to the caller instead > + of crashing the system. Say yes if you have a driver that uses this. > + -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2015-12-21 18:19 UTC|newest] Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-12-16 16:39 [PATCHV3 0/3] Machine check recovery when kernel accesses poison Tony Luck 2015-12-16 16:39 ` Tony Luck 2015-12-16 1:29 ` [PATCHV3 1/3] x86, ras: Add new infrastructure for machine check fixup tables Tony Luck 2015-12-16 1:29 ` Tony Luck 2015-12-16 17:55 ` Andy Lutomirski 2015-12-16 17:55 ` Andy Lutomirski 2015-12-16 22:51 ` Luck, Tony 2015-12-16 22:51 ` Luck, Tony 2015-12-17 16:22 ` Andy Lutomirski 2015-12-17 16:22 ` Andy Lutomirski 2015-12-21 18:18 ` Borislav Petkov [this message] 2015-12-21 18:18 ` Borislav Petkov 2015-12-21 19:16 ` Dan Williams 2015-12-21 19:16 ` Dan Williams 2015-12-21 20:15 ` Borislav Petkov 2015-12-21 20:15 ` Borislav Petkov 2015-12-22 11:13 ` Borislav Petkov 2015-12-22 11:13 ` Borislav Petkov 2015-12-16 1:29 ` [PATCHV3 2/3] x86, ras: Extend machine check recovery code to annotated ring0 areas Tony Luck 2015-12-16 1:29 ` Tony Luck 2015-12-22 11:14 ` Borislav Petkov 2015-12-22 11:14 ` Borislav Petkov 2015-12-16 1:30 ` [PATCHV3 3/3] x86, ras: Add mcsafe_memcpy() function to recover from machine checks Tony Luck 2015-12-16 1:30 ` Tony Luck 2015-12-22 11:13 ` Borislav Petkov 2015-12-22 11:13 ` Borislav Petkov 2015-12-22 19:38 ` Tony Luck 2015-12-22 19:38 ` Tony Luck 2015-12-23 12:58 ` Borislav Petkov 2015-12-23 12:58 ` Borislav Petkov 2015-12-23 19:31 ` Dan Williams 2015-12-23 19:31 ` Dan Williams 2015-12-23 20:46 ` Tony Luck 2015-12-23 20:46 ` Tony Luck 2015-12-24 13:37 ` Borislav Petkov 2015-12-24 13:37 ` Borislav Petkov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20151221181854.GF21582@pd.tnic \ --to=bp@alien8.de \ --cc=Elliott@pd.tnic \ --cc=akpm@linux-foundation.org \ --cc=dan.j.williams@intel.com \ --cc=elliott@hpe.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mm@kvack.org \ --cc=linux-nvdimm@ml01.01.org \ --cc=luto@kernel.org \ --cc=mingo@kernel.org \ --cc=tony.luck@intel.com \ --cc=x86@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.