lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170613130216.3iodsfs6ygpxnovk@pd.tnic>
Date:   Tue, 13 Jun 2017 15:02:17 +0200
From:   Borislav Petkov <bp@...en8.de>
To:     Juergen Gross <jgross@...e.com>
Cc:     linux-kernel@...r.kernel.org, xen-devel@...ts.xenproject.org,
        x86@...nel.org, boris.ostrovsky@...cle.com, hpa@...or.com,
        tglx@...utronix.de, mingo@...hat.com, tony.luck@...el.com
Subject: Re: [PATCH] xen/mce: don't issue error message for failed
 /dev/mcelog registration

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 <jgross@...e.com>
> ---
>  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 <linux/slab.h>
>  #include <linux/kmod.h>
>  #include <linux/poll.h>
> +#include <xen/xen.h>
>  
>  #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);

	}

Thanks.

-- 
Regards/Gruss,
    Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ