Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1564747 > unrolled thread
| Started by | Xunlei Pang <xlpang@redhat.com> |
|---|---|
| First post | 2017-01-23 09:10 +0100 |
| Last post | 2017-01-26 07:50 +0100 |
| Articles | 15 — 4 participants |
Back to article view | Back to linux.kernel
[PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Xunlei Pang <xlpang@redhat.com> - 2017-01-23 09:10 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Borislav Petkov <bp@alien8.de> - 2017-01-23 14:00 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Xunlei Pang <xpang@redhat.com> - 2017-01-23 14:40 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Borislav Petkov <bp@alien8.de> - 2017-01-23 16:00 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic "Luck, Tony" <tony.luck@intel.com> - 2017-01-23 18:50 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Borislav Petkov <bp@alien8.de> - 2017-01-23 19:00 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic "Luck, Tony" <tony.luck@intel.com> - 2017-01-23 19:10 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Borislav Petkov <bp@alien8.de> - 2017-01-23 19:20 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Xunlei Pang <xpang@redhat.com> - 2017-01-24 03:40 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Xunlei Pang <xpang@redhat.com> - 2017-01-24 02:50 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Xunlei Pang <xpang@redhat.com> - 2017-01-24 03:00 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Xunlei Pang <xpang@redhat.com> - 2017-01-24 02:30 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Borislav Petkov <bp@alien8.de> - 2017-01-24 13:30 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Xunlei Pang <xpang@redhat.com> - 2017-01-26 07:30 +0100
Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic Borislav Petkov <bp@alien8.de> - 2017-01-26 07:50 +0100
| From | Xunlei Pang <xlpang@redhat.com> |
|---|---|
| Date | 2017-01-23 09:10 +0100 |
| Subject | [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2HRn-3Xz-7@gated-at.bofh.it> |
We met an issue for kdump: after kdump kernel boots up,
and there comes a broadcasted mce in first kernel, the
other cpus remaining in first kernel will enter the old
mce handler of first kernel, then timeout and panic due
to MCE synchronization, finally reset the kdump cpus.
This patch lets cpus stay quiet when panic happens, so
before crash cpu shots them down or after kdump boots,
they should not do anything except clearing MCG_STATUS
in case of broadcasted mce. This is useful for kdump
to let the vmcore dumping perform as hard as it can.
Previous efforts:
https://patchwork.kernel.org/patch/6167631/
https://lists.gt.net/linux/kernel/2146557
Cc: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: Xunlei Pang <xlpang@redhat.com>
---
arch/x86/kernel/cpu/mcheck/mce.c | 24 +++++++++++++++++-------
1 file changed, 17 insertions(+), 7 deletions(-)
diff --git a/arch/x86/kernel/cpu/mcheck/mce.c b/arch/x86/kernel/cpu/mcheck/mce.c
index 00ef432..0c2bf77 100644
--- a/arch/x86/kernel/cpu/mcheck/mce.c
+++ b/arch/x86/kernel/cpu/mcheck/mce.c
@@ -1157,6 +1157,23 @@ void do_machine_check(struct pt_regs *regs, long error_code)
mce_gather_info(&m, regs);
+ /*
+ * Check if this MCE is signaled to only this logical processor,
+ * on Intel only.
+ */
+ if (m.cpuvendor == X86_VENDOR_INTEL)
+ lmce = m.mcgstatus & MCG_STATUS_LMCES;
+
+ /*
+ * Special treatment for Intel broadcasted machine check:
+ * To avoid panic due to MCE synchronization in case of kdump,
+ * after system panic, clear global status and bail out.
+ */
+ if (!lmce && atomic_read(&panic_cpu) != PANIC_CPU_INVALID) {
+ wrmsrl(MSR_IA32_MCG_STATUS, 0);
+ goto out;
+ }
+
final = this_cpu_ptr(&mces_seen);
*final = m;
@@ -1174,13 +1191,6 @@ void do_machine_check(struct pt_regs *regs, long error_code)
kill_it = 1;
/*
- * Check if this MCE is signaled to only this logical processor,
- * on Intel only.
- */
- if (m.cpuvendor == X86_VENDOR_INTEL)
- lmce = m.mcgstatus & MCG_STATUS_LMCES;
-
- /*
* Go through all banks in exclusion of the other CPUs. This way we
* don't report duplicated events on shared banks because the first one
* to see it will clear it. If this is a Local MCE, then no need to
--
1.8.3.1
[toc] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2017-01-23 14:00 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2Mo3-6yJ-37@gated-at.bofh.it> |
| In reply to | #1564747 |
On Mon, Jan 23, 2017 at 04:01:51PM +0800, Xunlei Pang wrote:
> We met an issue for kdump: after kdump kernel boots up,
> and there comes a broadcasted mce in first kernel, the
How does that even happen?
Lemme try to understand this correctly: the first kernel gets an
MCE, kdump starts and boots a *whole* kernel and *then* you get the
broadcasted MCE? I have real hard time believing that.
What happened to the approach of clearing CR4.MCE before loading the
kdump kernel, in native_machine_shutdown() or wherever does the kdump
gets loaded...
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
[toc] | [prev] | [next] | [standalone]
| From | Xunlei Pang <xpang@redhat.com> |
|---|---|
| Date | 2017-01-23 14:40 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2N0J-71T-9@gated-at.bofh.it> |
| In reply to | #1564964 |
On 01/23/2017 at 08:51 PM, Borislav Petkov wrote: > On Mon, Jan 23, 2017 at 04:01:51PM +0800, Xunlei Pang wrote: >> We met an issue for kdump: after kdump kernel boots up, >> and there comes a broadcasted mce in first kernel, the > How does that even happen? > > Lemme try to understand this correctly: the first kernel gets an > MCE, kdump starts and boots a *whole* kernel and *then* you get the > broadcasted MCE? I have real hard time believing that. > > What happened to the approach of clearing CR4.MCE before loading the > kdump kernel, in native_machine_shutdown() or wherever does the kdump > gets loaded... > One possible timing sequence would be: 1st kernel running on multiple cpus panicked then the crash dump code starts the crash dump code stops the others cpus except the crashing one 2nd kernel boots up on the crash cpu with "nr_cpus=1" some broadcasted mce comes on some cpu amongst the other cpus(not the crashing cpu) the other cpus enter old mce handler of 1st kernel, while crash cpu enters new mce handler of 2nd kernel the old mce handler of 1st kernel will timeout and panic due to mce syncrhonization under default setting Regards, Xunlei
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2017-01-23 16:00 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2Oga-7Iq-31@gated-at.bofh.it> |
| In reply to | #1564975 |
On Mon, Jan 23, 2017 at 09:35:53PM +0800, Xunlei Pang wrote:
> One possible timing sequence would be:
> 1st kernel running on multiple cpus panicked
> then the crash dump code starts
> the crash dump code stops the others cpus except the crashing one
> 2nd kernel boots up on the crash cpu with "nr_cpus=1"
> some broadcasted mce comes on some cpu amongst the other cpus(not the crashing cpu)
Where does this broadcasted MCE come from?
The crash dump code triggered it? Or it happened before the panic()?
Are you talking about an *actual* sequence which you're experiencing on
real hw or is this something hypothetical?
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
[toc] | [prev] | [next] | [standalone]
| From | "Luck, Tony" <tony.luck@intel.com> |
|---|---|
| Date | 2017-01-23 18:50 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2QUG-XY-11@gated-at.bofh.it> |
| In reply to | #1565019 |
On Mon, Jan 23, 2017 at 03:50:56PM +0100, Borislav Petkov wrote: > On Mon, Jan 23, 2017 at 09:35:53PM +0800, Xunlei Pang wrote: > > One possible timing sequence would be: > > 1st kernel running on multiple cpus panicked > > then the crash dump code starts > > the crash dump code stops the others cpus except the crashing one > > 2nd kernel boots up on the crash cpu with "nr_cpus=1" > > some broadcasted mce comes on some cpu amongst the other cpus(not the crashing cpu) > > Where does this broadcasted MCE come from? > > The crash dump code triggered it? Or it happened before the panic()? > > Are you talking about an *actual* sequence which you're experiencing on > real hw or is this something hypothetical? If the system had experienced some memory corruption, but recovered ... then there would be some pages sitting around that the old kernel had marked as POISON and stopped using. The kexec'd kernel doesn't know about these, so may touch that memory while taking a crash dump ... and then you have a broadcast machine check (on older[1] Intel CPUs that don't support local machine check). This is hard to work around. You really need all the CPUs to have set CR4.MCE=1 (if any didn't, then they will force a reset when they see the machine check). Also you need to make sure that they jump to the copy of do_machine_check() in the new kernel, not the old kernel. A while ago I played with the nr_cpus=N code to have it bring all the CPUs far enough online to get the machine check initialization done, then any extras above "N" just go back offline again. But I never got this to work reliably. -Tony [1] older == all released ones, at the moment.
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2017-01-23 19:00 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2R4l-11t-7@gated-at.bofh.it> |
| In reply to | #1565187 |
Hey Tony,
a "welcome back" is in order? :-)
On Mon, Jan 23, 2017 at 09:40:09AM -0800, Luck, Tony wrote:
> If the system had experienced some memory corruption, but
> recovered ... then there would be some pages sitting around
> that the old kernel had marked as POISON and stopped using.
> The kexec'd kernel doesn't know about these, so may touch that
> memory while taking a crash dump ...
Hmm, pass a list of poisoned pages to the kdump kernel so as not to
touch. Looks like there's already functionality for that:
"makedumpfile can exclude the following types of pages while copying
VMCORE to DUMPFILE, and a user can choose which type of pages will be
excluded.
- Pages filled with zero
- Cache pages
- User process data pages
- Free pages"
(there is a makedumpfile manpage somewhere)
And apparently crash knows about poisoned pages and handles them:
static int __init crash_save_vmcoreinfo_init(void)
{
...
#ifdef CONFIG_MEMORY_FAILURE
VMCOREINFO_NUMBER(PG_hwpoison);
#endif
so if that works, the kexeced kernel should know about that list.
> and then you have a broadcast machine check (on older[1] Intel CPUs
> that don't support local machine check).
Right.
> This is hard to work around. You really need all the CPUs to have set
> CR4.MCE=1 (if any didn't, then they will force a reset when they see
> the machine check). Also you need to make sure that they jump to the
> copy of do_machine_check() in the new kernel, not the old kernel.
Doesn't matter, right? The new copy is as clueless as the old one about
those MCEs.
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
[toc] | [prev] | [next] | [standalone]
| From | "Luck, Tony" <tony.luck@intel.com> |
|---|---|
| Date | 2017-01-23 19:10 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2Re2-1kt-13@gated-at.bofh.it> |
| In reply to | #1565193 |
On Mon, Jan 23, 2017 at 06:51:30PM +0100, Borislav Petkov wrote:
> Hey Tony,
>
> a "welcome back" is in order? :-)
Yes - first day back today. Lots of catching up to do.
> And apparently crash knows about poisoned pages and handles them:
>
> static int __init crash_save_vmcoreinfo_init(void)
> {
> ...
> #ifdef CONFIG_MEMORY_FAILURE
> VMCOREINFO_NUMBER(PG_hwpoison);
> #endif
>
> so if that works, the kexeced kernel should know about that list.
Oh good ... it is smarter than I thought.
> Doesn't matter, right? The new copy is as clueless as the old one about
> those MCEs.
If things are well enough initialized that we don't reset, and
get to do_machine_check(), then this code from Ashok:
/* If this CPU is offline, just bail out. */
if (cpu_is_offline(smp_processor_id())) {
u64 mcgstatus;
mcgstatus = mce_rdmsrl(MSR_IA32_MCG_STATUS);
if (mcgstatus & MCG_STATUS_RIPV) {
mce_wrmsrl(MSR_IA32_MCG_STATUS, 0);
return;
}
}
will ignore the machine check on the other cpus ... assuming
that "cpu_is_offline(smp_processor_id())" does the right thing
in the kexec case where this is an "old" cpu that isn't online
in the new kernel.
-Tony
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2017-01-23 19:20 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2RnJ-1o4-35@gated-at.bofh.it> |
| In reply to | #1565203 |
On Mon, Jan 23, 2017 at 10:01:53AM -0800, Luck, Tony wrote:
> will ignore the machine check on the other cpus ... assuming
> that "cpu_is_offline(smp_processor_id())" does the right thing
> in the kexec case where this is an "old" cpu that isn't online
> in the new kernel.
Nice. And kdump did do the dumping on one CPU, AFAIR. So we should be
good there.
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
[toc] | [prev] | [next] | [standalone]
| From | Xunlei Pang <xpang@redhat.com> |
|---|---|
| Date | 2017-01-24 03:40 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2ZbB-6F4-41@gated-at.bofh.it> |
| In reply to | #1565213 |
On 01/24/2017 at 02:14 AM, Borislav Petkov wrote: > On Mon, Jan 23, 2017 at 10:01:53AM -0800, Luck, Tony wrote: >> will ignore the machine check on the other cpus ... assuming >> that "cpu_is_offline(smp_processor_id())" does the right thing >> in the kexec case where this is an "old" cpu that isn't online >> in the new kernel. > Nice. And kdump did do the dumping on one CPU, AFAIR. So we should be > good there. > "nr_cpus=N" will consume more memory, using very large N is almost impossible for kdump to boot with considering the limited crash memory reserved. For some large machine, nr_cpus=1 might not be enough, we have to use nr_cpus=4 or more, it is also helpful for the vmcore parallel dumping :-) Regards, Xunlei
[toc] | [prev] | [next] | [standalone]
| From | Xunlei Pang <xpang@redhat.com> |
|---|---|
| Date | 2017-01-24 02:50 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2Ypb-63R-1@gated-at.bofh.it> |
| In reply to | #1565193 |
On 01/24/2017 at 01:51 AM, Borislav Petkov wrote:
> Hey Tony,
>
> a "welcome back" is in order? :-)
>
> On Mon, Jan 23, 2017 at 09:40:09AM -0800, Luck, Tony wrote:
>> If the system had experienced some memory corruption, but
>> recovered ... then there would be some pages sitting around
>> that the old kernel had marked as POISON and stopped using.
>> The kexec'd kernel doesn't know about these, so may touch that
>> memory while taking a crash dump ...
> Hmm, pass a list of poisoned pages to the kdump kernel so as not to
> touch. Looks like there's already functionality for that:
>
> "makedumpfile can exclude the following types of pages while copying
> VMCORE to DUMPFILE, and a user can choose which type of pages will be
> excluded.
>
> - Pages filled with zero
> - Cache pages
> - User process data pages
> - Free pages"
>
> (there is a makedumpfile manpage somewhere)
>
> And apparently crash knows about poisoned pages and handles them:
>
> static int __init crash_save_vmcoreinfo_init(void)
> {
> ...
> #ifdef CONFIG_MEMORY_FAILURE
> VMCOREINFO_NUMBER(PG_hwpoison);
> #endif
>
> so if that works, the kexeced kernel should know about that list.
From the log in my previous reply, MCE occurred before makedumpfile dumping,
so I guess if the poisoned ones belong to the crash reserved memory or other
type of events?
Besides, some kdump kernel may not use makedumpfile, for example a simple "cp"
is also allowed to process "/proc/vmcore".
>
>> and then you have a broadcast machine check (on older[1] Intel CPUs
>> that don't support local machine check).
> Right.
>
>> This is hard to work around. You really need all the CPUs to have set
>> CR4.MCE=1 (if any didn't, then they will force a reset when they see
>> the machine check). Also you need to make sure that they jump to the
>> copy of do_machine_check() in the new kernel, not the old kernel.
> Doesn't matter, right? The new copy is as clueless as the old one about
> those MCEs.
>
It's the code in mce_start(), it waits for all the online cpus including the cpus
that kdump boots on to synchronize.
So for new mce handler of kdump kernel, it is fine as the number of online cpus
is correct; as for old mce handler of 1st kernel, it's not true because some cpus
which are regarded online from 1st kernel's view are running the 2nd kernel now,
they can't respond to the old mce handler which will timeout the old mce handler.
Regards,
Xunlei
[toc] | [prev] | [next] | [standalone]
| From | Xunlei Pang <xpang@redhat.com> |
|---|---|
| Date | 2017-01-24 03:00 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2YyR-68c-7@gated-at.bofh.it> |
| In reply to | #1565408 |
On 01/24/2017 at 09:46 AM, Xunlei Pang wrote:
> On 01/24/2017 at 01:51 AM, Borislav Petkov wrote:
>> Hey Tony,
>>
>> a "welcome back" is in order? :-)
>>
>> On Mon, Jan 23, 2017 at 09:40:09AM -0800, Luck, Tony wrote:
>>> If the system had experienced some memory corruption, but
>>> recovered ... then there would be some pages sitting around
>>> that the old kernel had marked as POISON and stopped using.
>>> The kexec'd kernel doesn't know about these, so may touch that
>>> memory while taking a crash dump ...
>> Hmm, pass a list of poisoned pages to the kdump kernel so as not to
>> touch. Looks like there's already functionality for that:
>>
>> "makedumpfile can exclude the following types of pages while copying
>> VMCORE to DUMPFILE, and a user can choose which type of pages will be
>> excluded.
>>
>> - Pages filled with zero
>> - Cache pages
>> - User process data pages
>> - Free pages"
>>
>> (there is a makedumpfile manpage somewhere)
>>
>> And apparently crash knows about poisoned pages and handles them:
>>
>> static int __init crash_save_vmcoreinfo_init(void)
>> {
>> ...
>> #ifdef CONFIG_MEMORY_FAILURE
>> VMCOREINFO_NUMBER(PG_hwpoison);
>> #endif
>>
>> so if that works, the kexeced kernel should know about that list.
> From the log in my previous reply, MCE occurred before makedumpfile dumping,
> so I guess if the poisoned ones belong to the crash reserved memory or other
> type of events?
Another possibility may be from any system.reserved/pcie memory
which are shared between 1st and 2nd kernel.
>
> Besides, some kdump kernel may not use makedumpfile, for example a simple "cp"
> is also allowed to process "/proc/vmcore".
>
>>> and then you have a broadcast machine check (on older[1] Intel CPUs
>>> that don't support local machine check).
>> Right.
>>
>>> This is hard to work around. You really need all the CPUs to have set
>>> CR4.MCE=1 (if any didn't, then they will force a reset when they see
>>> the machine check). Also you need to make sure that they jump to the
>>> copy of do_machine_check() in the new kernel, not the old kernel.
>> Doesn't matter, right? The new copy is as clueless as the old one about
>> those MCEs.
>>
> It's the code in mce_start(), it waits for all the online cpus including the cpus
> that kdump boots on to synchronize.
>
> So for new mce handler of kdump kernel, it is fine as the number of online cpus
> is correct; as for old mce handler of 1st kernel, it's not true because some cpus
> which are regarded online from 1st kernel's view are running the 2nd kernel now,
> they can't respond to the old mce handler which will timeout the old mce handler.
>
> Regards,
> Xunlei
[toc] | [prev] | [next] | [standalone]
| From | Xunlei Pang <xpang@redhat.com> |
|---|---|
| Date | 2017-01-24 02:30 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t2Y5P-5Vh-7@gated-at.bofh.it> |
| In reply to | #1565019 |
[Multipart message — attachments visible in raw view] — view raw
On 01/23/2017 at 10:50 PM, Borislav Petkov wrote:
> On Mon, Jan 23, 2017 at 09:35:53PM +0800, Xunlei Pang wrote:
>> One possible timing sequence would be:
>> 1st kernel running on multiple cpus panicked
>> then the crash dump code starts
>> the crash dump code stops the others cpus except the crashing one
>> 2nd kernel boots up on the crash cpu with "nr_cpus=1"
>> some broadcasted mce comes on some cpu amongst the other cpus(not the crashing cpu)
> Where does this broadcasted MCE come from?
>
> The crash dump code triggered it? Or it happened before the panic()?
>
> Are you talking about an *actual* sequence which you're experiencing on
> real hw or is this something hypothetical?
>
It occurred on real hardware when testing crash dump.
1) SysRq-c was injected for the test in 1st kernel
[ 49.897279] SysRq : Trigger a crash 2) The 2nd kernel started for kdump
[ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-229.el7.x86_64 root=UUID=976a15c8-8cbe-44ad-bb91-23f9b18e8789 ro console=ttyS1,115200 nmi_watchdog=0 irqpoll nr_cpus=1 reset_devices cgroup_disable=memory mce=off numa=off udev.children-max=2 panic=10 rootflags=nofail acpi_no_memhotplug disable_cpu_apicid=0 elfcorehdr=869772K 3) An MCE came to the 1st kernel, timeout panic occurred, and rebooted the machine
[ 6.095706] Dazed and confused, but trying to continue // message of the 1st kernel
[ 81.655507] Kernel panic - not syncing: Timeout synchronizing machine check over CPUs
[ 82.729324] Shutting down cpus with NMI
[ 82.774539] drm_kms_helper: panic occurred, switching back to text console
[ 82.782257] Rebooting in 10 seconds..
Please see the attached for the full log. Regards, Xunlei
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2017-01-24 13:30 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t38oz-4f8-33@gated-at.bofh.it> |
| In reply to | #1565404 |
On Tue, Jan 24, 2017 at 09:27:45AM +0800, Xunlei Pang wrote:
> It occurred on real hardware when testing crash dump.
>
> 1) SysRq-c was injected for the test in 1st kernel
> [ 49.897279] SysRq : Trigger a crash 2) The 2nd kernel started for kdump
> [ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-229.el7.x86_64 root=UUID=976a15c8-8cbe-44ad-bb91-23f9b18e8789
Yeah, no, I'm not debugging the RH Frankenstein kernel.
Please retrigger this with latest tip/master first.
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
[toc] | [prev] | [next] | [standalone]
| From | Xunlei Pang <xpang@redhat.com> |
|---|---|
| Date | 2017-01-26 07:30 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t3LJf-3UC-1@gated-at.bofh.it> |
| In reply to | #1565824 |
On 01/24/2017 at 08:22 PM, Borislav Petkov wrote: > On Tue, Jan 24, 2017 at 09:27:45AM +0800, Xunlei Pang wrote: >> It occurred on real hardware when testing crash dump. >> >> 1) SysRq-c was injected for the test in 1st kernel >> [ 49.897279] SysRq : Trigger a crash 2) The 2nd kernel started for kdump >> [ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-229.el7.x86_64 root=UUID=976a15c8-8cbe-44ad-bb91-23f9b18e8789 > Yeah, no, I'm not debugging the RH Frankenstein kernel. > > Please retrigger this with latest tip/master first. > The hardware machine check is hard to reproduce, but the mce code of RHEL7 is quite the same as that of tip/master, anyway we are able to inject software mce to reproduce it. It is also clear from the theoretical analysis of the code. Regards, Xunlei
[toc] | [prev] | [next] | [standalone]
| From | Borislav Petkov <bp@alien8.de> |
|---|---|
| Date | 2017-01-26 07:50 +0100 |
| Subject | Re: [PATCH] x86/mce: Keep quiet in case of broadcasted mce after system panic |
| Message-ID | <t3M2B-415-9@gated-at.bofh.it> |
| In reply to | #1567133 |
On Thu, Jan 26, 2017 at 02:30:02PM +0800, Xunlei Pang wrote:
> The hardware machine check is hard to reproduce, but the mce code of
> RHEL7 is quite the same as that of tip/master, anyway we are able to
> inject software mce to reproduce it.
Please give me your exact steps so that I can try to reproduce it here
too.
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web