Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8c566ef5 authored by Andi Kleen's avatar Andi Kleen Committed by Linus Torvalds
Browse files

[PATCH] x86-64: Add command line option to set machine check tolerance level



Signed-off-by: default avatarAndi Kleen <ak@suse.de>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 673242c1
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -11,6 +11,11 @@ Machine check
               If your BIOS doesn't do that it's a good idea to enable though
               If your BIOS doesn't do that it's a good idea to enable though
               to make sure you log even machine check events that result
               to make sure you log even machine check events that result
               in a reboot.
               in a reboot.
   mce=tolerancelevel (number)
		0: always panic, 1: panic if deadlock possible,
		2: try to avoid panic, 3: never panic or exit (for testing)
		default is 1
		Can be also set using sysfs which is preferable.


   nomce (for compatibility with i386): same as mce=off
   nomce (for compatibility with i386): same as mce=off


+4 −0
Original line number Original line Diff line number Diff line
@@ -17,6 +17,7 @@
#include <linux/fs.h>
#include <linux/fs.h>
#include <linux/cpu.h>
#include <linux/cpu.h>
#include <linux/percpu.h>
#include <linux/percpu.h>
#include <linux/ctype.h>
#include <asm/processor.h> 
#include <asm/processor.h> 
#include <asm/msr.h>
#include <asm/msr.h>
#include <asm/mce.h>
#include <asm/mce.h>
@@ -489,6 +490,7 @@ static int __init mcheck_disable(char *str)


/* mce=off disables machine check. Note you can reenable it later
/* mce=off disables machine check. Note you can reenable it later
   using sysfs.
   using sysfs.
   mce=TOLERANCELEVEL (number, see above)
   mce=bootlog Log MCEs from before booting. Disabled by default to work
   mce=bootlog Log MCEs from before booting. Disabled by default to work
   around buggy BIOS that leave bogus MCEs.  */
   around buggy BIOS that leave bogus MCEs.  */
static int __init mcheck_enable(char *str)
static int __init mcheck_enable(char *str)
@@ -499,6 +501,8 @@ static int __init mcheck_enable(char *str)
		mce_dont_init = 1;
		mce_dont_init = 1;
	else if (!strcmp(str, "bootlog"))
	else if (!strcmp(str, "bootlog"))
		mce_bootlog = 1;
		mce_bootlog = 1;
	else if (isdigit(str[0]))
		get_option(&str, &tolerant);
	else
	else
		printk("mce= argument %s ignored. Please use /sys", str); 
		printk("mce= argument %s ignored. Please use /sys", str); 
	return 0;
	return 0;