From: Xie XiuQi <xiexiuqi@huawei.com>
To: "Naveen N. Rao" <naveen.n.rao@linux.vnet.ibm.com>
Cc: "Chen, Gong" <gong.chen@linux.intel.com>,
tony.luck@intel.com, bp@alien8.de, joe@perches.com,
m.chehab@samsung.com, arozansk@redhat.com,
linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org,
Li Bin <huawei.libin@huawei.com>
Subject: Re: [PATCH v3 4/9] ACPI, x86: Extended error log driver for x86 platform
Date: Fri, 27 Jun 2014 13:34:45 +0800 [thread overview]
Message-ID: <53AD0275.7020003@huawei.com> (raw)
In-Reply-To: <52612BA4.2060906@linux.vnet.ibm.com>
On 2013/10/18 20:37, Naveen N. Rao wrote:
> On 10/18/2013 01:53 PM, Chen, Gong wrote:
>> This H/W error log driver (a.k.a eMCA driver) is implemented based on
>> http://www.intel.com/content/www/us/en/architecture-and-technology/enhanced-mca-logging-xeon-paper.html
>>
>> After errors are captured, more valuable information can be
>> got via this new enhanced H/W error log driver.
>>
>> v3 -> v2: fix a MACRO definition error and some cleanup
>> v2 -> v1: eliminate spin_lock & minor fixes suggested by Boris
>>
>> Signed-off-by: Chen, Gong <gong.chen@linux.intel.com>
>> ---
>> arch/x86/include/asm/mce.h | 5 +
>> arch/x86/kernel/cpu/mcheck/mce.c | 20 +++
>> drivers/acpi/Kconfig | 20 +++
>> drivers/acpi/Makefile | 2 +
[...]
>> +}
>> +EXPORT_SYMBOL_GPL(unregister_elog_handler);
>> +
>> /*
>> * Poll for corrected events or events that happened before reset.
>> * Those are just logged through /dev/mcelog.
>> @@ -624,6 +641,9 @@ void machine_check_poll(enum mcp_flags flags, mce_banks_t *b)
>> (m.status & (mca_cfg.ser ? MCI_STATUS_S : MCI_STATUS_UC)))
>> continue;
>>
>> + if (mce_ext_err_print)
>> + mce_ext_err_print(NULL, m.extcpu, i);
>> +
>
> Can we use the notifier chain we already have: mce_register_decode_chain()? EDAC uses this and I'm wondering if it is a good fit here. As an added bonus, it seems to honor dont_log_ce option as well.
Hi everyone,
I have a question here, is it safe when we use printk in MCE context?
The call graph is like this,
do_machine_check
-> mce_log
-> atomic_notifier_call_chain(&x86_mce_decoder_chain ...)
-> ...
-> extlog_print
-> print_extlog_rcd
-> __print_extlog_rcd
-> printk
There's a logbuf_lock in printk. If logbuf_lock is held by other cpu,
it'll lead to an infinity spin here. Isn't it?
--
Thanks,
XiuQi
>
>> mce_read_aux(&m, i);
>>
>> if (!(flags & MCP_TIMESTAMP))
>> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
>> index 22327e6..c67ec61 100644
>> --- a/drivers/acpi/Kconfig
>> +++ b/drivers/acpi/Kconfig
>> @@ -372,4 +372,24 @@ config ACPI_BGRT
>>
>> source "drivers/acpi/apei/Kconfig"
>>
>> +config ACPI_EXTLOG
>> + tristate "Extended Error Log support"
>> + depends on X86_MCE
...
WARNING: multiple messages have this Message-ID (diff)
From: Xie XiuQi <xiexiuqi@huawei.com>
To: "Naveen N. Rao" <naveen.n.rao@linux.vnet.ibm.com>
Cc: "Chen, Gong" <gong.chen@linux.intel.com>, <tony.luck@intel.com>,
<bp@alien8.de>, <joe@perches.com>, <m.chehab@samsung.com>,
<arozansk@redhat.com>, <linux-acpi@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, Li Bin <huawei.libin@huawei.com>
Subject: Re: [PATCH v3 4/9] ACPI, x86: Extended error log driver for x86 platform
Date: Fri, 27 Jun 2014 13:34:45 +0800 [thread overview]
Message-ID: <53AD0275.7020003@huawei.com> (raw)
In-Reply-To: <52612BA4.2060906@linux.vnet.ibm.com>
On 2013/10/18 20:37, Naveen N. Rao wrote:
> On 10/18/2013 01:53 PM, Chen, Gong wrote:
>> This H/W error log driver (a.k.a eMCA driver) is implemented based on
>> http://www.intel.com/content/www/us/en/architecture-and-technology/enhanced-mca-logging-xeon-paper.html
>>
>> After errors are captured, more valuable information can be
>> got via this new enhanced H/W error log driver.
>>
>> v3 -> v2: fix a MACRO definition error and some cleanup
>> v2 -> v1: eliminate spin_lock & minor fixes suggested by Boris
>>
>> Signed-off-by: Chen, Gong <gong.chen@linux.intel.com>
>> ---
>> arch/x86/include/asm/mce.h | 5 +
>> arch/x86/kernel/cpu/mcheck/mce.c | 20 +++
>> drivers/acpi/Kconfig | 20 +++
>> drivers/acpi/Makefile | 2 +
[...]
>> +}
>> +EXPORT_SYMBOL_GPL(unregister_elog_handler);
>> +
>> /*
>> * Poll for corrected events or events that happened before reset.
>> * Those are just logged through /dev/mcelog.
>> @@ -624,6 +641,9 @@ void machine_check_poll(enum mcp_flags flags, mce_banks_t *b)
>> (m.status & (mca_cfg.ser ? MCI_STATUS_S : MCI_STATUS_UC)))
>> continue;
>>
>> + if (mce_ext_err_print)
>> + mce_ext_err_print(NULL, m.extcpu, i);
>> +
>
> Can we use the notifier chain we already have: mce_register_decode_chain()? EDAC uses this and I'm wondering if it is a good fit here. As an added bonus, it seems to honor dont_log_ce option as well.
Hi everyone,
I have a question here, is it safe when we use printk in MCE context?
The call graph is like this,
do_machine_check
-> mce_log
-> atomic_notifier_call_chain(&x86_mce_decoder_chain ...)
-> ...
-> extlog_print
-> print_extlog_rcd
-> __print_extlog_rcd
-> printk
There's a logbuf_lock in printk. If logbuf_lock is held by other cpu,
it'll lead to an infinity spin here. Isn't it?
--
Thanks,
XiuQi
>
>> mce_read_aux(&m, i);
>>
>> if (!(flags & MCP_TIMESTAMP))
>> diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
>> index 22327e6..c67ec61 100644
>> --- a/drivers/acpi/Kconfig
>> +++ b/drivers/acpi/Kconfig
>> @@ -372,4 +372,24 @@ config ACPI_BGRT
>>
>> source "drivers/acpi/apei/Kconfig"
>>
>> +config ACPI_EXTLOG
>> + tristate "Extended Error Log support"
>> + depends on X86_MCE
...
next prev parent reply other threads:[~2014-06-27 5:35 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-18 8:23 [PATCH v3 0/9] Extended H/W error log driver Chen, Gong
2013-10-18 8:23 ` [PATCH v3 1/9] ACPI, APEI, CPER: Fix status check during error printing Chen, Gong
2013-10-18 8:23 ` [PATCH v3 2/9] ACPI, CPER: Update cper info Chen, Gong
2013-10-18 12:39 ` Naveen N. Rao
2013-10-18 8:23 ` [PATCH v3 3/9] bitops: Introduce a more generic BITMASK macro Chen, Gong
2013-10-18 8:23 ` [PATCH v3 4/9] ACPI, x86: Extended error log driver for x86 platform Chen, Gong
2013-10-18 12:37 ` Naveen N. Rao
2013-10-18 12:53 ` Borislav Petkov
2013-10-18 20:57 ` Luck, Tony
2013-10-18 20:57 ` Luck, Tony
2013-10-18 21:27 ` Borislav Petkov
2013-10-18 22:22 ` Luck, Tony
2013-10-18 22:22 ` Luck, Tony
2013-10-19 9:57 ` Borislav Petkov
2013-10-21 19:03 ` Luck, Tony
2013-10-21 22:39 ` Tony Luck
2013-10-22 8:37 ` Borislav Petkov
2013-10-22 9:32 ` Naveen N. Rao
2013-10-19 11:31 ` Chen Gong
2013-10-20 7:06 ` Chen Gong
2013-10-20 8:21 ` Borislav Petkov
2013-10-21 16:27 ` Naveen N. Rao
2013-10-20 7:25 ` [PATCH V4 " Chen, Gong
2014-06-27 5:34 ` Xie XiuQi [this message]
2014-06-27 5:34 ` [PATCH v3 " Xie XiuQi
2014-06-27 9:22 ` Borislav Petkov
2014-06-27 20:43 ` Luck, Tony
2014-06-27 20:43 ` Luck, Tony
2014-06-27 21:14 ` Borislav Petkov
2014-06-27 22:10 ` Luck, Tony
2014-06-27 22:10 ` Luck, Tony
2014-06-27 22:14 ` Borislav Petkov
2014-06-30 6:35 ` Xie XiuQi
2013-10-18 8:23 ` [PATCH v3 5/9] DMI: Parse memory device (type 17) in SMBIOS Chen, Gong
2013-10-18 8:23 ` [PATCH v3 6/9] ACPI, APEI, CPER: Add UEFI 2.4 support for memory error Chen, Gong
2013-10-18 8:23 ` [PATCH v3 7/9] ACPI, APEI, CPER: Enhance memory reporting capability Chen, Gong
2013-10-18 8:23 ` [PATCH v3 8/9] ACPI, APEI, CPER: Cleanup CPER memory error output format Chen, Gong
2013-10-18 12:01 ` Naveen N. Rao
2013-10-19 11:26 ` Chen Gong
2013-10-21 16:22 ` Naveen N. Rao
2013-10-21 17:14 ` Luck, Tony
2013-10-21 17:14 ` Luck, Tony
2013-10-22 8:42 ` Borislav Petkov
2013-10-18 8:23 ` [PATCH v3 9/9] EDAC, GHES: Update ghes error record info Chen, Gong
2013-10-18 9:20 ` [PATCH v3 0/9] Extended H/W error log driver Borislav Petkov
2013-10-18 16:17 ` Tony Luck
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=53AD0275.7020003@huawei.com \
--to=xiexiuqi@huawei.com \
--cc=arozansk@redhat.com \
--cc=bp@alien8.de \
--cc=gong.chen@linux.intel.com \
--cc=huawei.libin@huawei.com \
--cc=joe@perches.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=m.chehab@samsung.com \
--cc=naveen.n.rao@linux.vnet.ibm.com \
--cc=tony.luck@intel.com \
/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: link
Be 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.