From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753419AbdFMNPA (ORCPT ); Tue, 13 Jun 2017 09:15:00 -0400 Received: from mx2.suse.de ([195.135.220.15]:60874 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752480AbdFMNO5 (ORCPT ); Tue, 13 Jun 2017 09:14:57 -0400 Subject: Re: [PATCH] xen/mce: don't issue error message for failed /dev/mcelog registration To: Borislav Petkov Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org, x86@kernel.org, boris.ostrovsky@oracle.com, hpa@zytor.com, tglx@linutronix.de, mingo@redhat.com, tony.luck@intel.com References: <20170613124921.12795-1-jgross@suse.com> <20170613130216.3iodsfs6ygpxnovk@pd.tnic> From: Juergen Gross Message-ID: <2b3a43ca-a256-a59a-533d-08fc3a5c9dae@suse.com> Date: Tue, 13 Jun 2017 15:14:53 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.1 MIME-Version: 1.0 In-Reply-To: <20170613130216.3iodsfs6ygpxnovk@pd.tnic> Content-Type: text/plain; charset=utf-8 Content-Language: de-DE Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 13/06/17 15:02, Borislav Petkov wrote: > On Tue, Jun 13, 2017 at 02:49:21PM +0200, Juergen Gross wrote: >> When running under Xen as dom0 /dev/mcelog is being registered by Xen >> instead of the normal mcelog driver. Avoid an error message being >> issued by the mcelog driver in this case. Instead issue an informative >> message that Xen has registered the device. >> >> Signed-off-by: Juergen Gross >> --- >> arch/x86/kernel/cpu/mcheck/dev-mcelog.c | 6 +++++- >> drivers/xen/mcelog.c | 2 ++ >> 2 files changed, 7 insertions(+), 1 deletion(-) >> >> diff --git a/arch/x86/kernel/cpu/mcheck/dev-mcelog.c b/arch/x86/kernel/cpu/mcheck/dev-mcelog.c >> index 9c632cb88546..43fbe2a70051 100644 >> --- a/arch/x86/kernel/cpu/mcheck/dev-mcelog.c >> +++ b/arch/x86/kernel/cpu/mcheck/dev-mcelog.c >> @@ -14,6 +14,7 @@ >> #include >> #include >> #include >> +#include >> >> #include "mce-internal.h" >> >> @@ -387,10 +388,13 @@ static __init int dev_mcelog_init_device(void) >> >> /* register character device /dev/mcelog */ >> err = misc_register(&mce_chrdev_device); >> - if (err) { >> + /* Xen dom0 might have registered the device already. */ >> + if (err && (err != -EBUSY || !xen_initial_domain() || >> + !IS_ENABLED(CONFIG_XEN_MCE_LOG))) { >> pr_err("Unable to init device /dev/mcelog (rc: %d)\n", err); > > Let's simplify that: > > if (err) { > if (err == -EBUSY) > const char *s = ", already registered"; > else > const char *s = ""; > > pr_err("Unable to init device /dev/mcelog (rc: %d)%s\n", err, s); I'd rather avoid the pr_err() in the -EBUSY case. What about: if (err) { if (err == -EBUSY) pr_info("Unable to init device /dev/mcelog, already registered"); else pr_err("Unable to init device /dev/mcelog (rc: %d)\n", err); } Juergen