public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
* [patch] add MCA recovery on/off switch
@ 2005-04-06  3:27 Russ Anderson
  2005-04-06  3:32 ` Randy.Dunlap
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Russ Anderson @ 2005-04-06  3:27 UTC (permalink / raw)
  To: linux-ia64

Create /proc/sys/kernel/mca_recovery to turn on/off the MCA recovery code.
This allows the recovery code to be enabled or disabled without having
to reboot.

1 indicates MCA recovery is on.
0 indicates MCA recovery is off.

Signed-off-by: Russ Anderson <rja@sgi.com>

------------------------------------------------------------------------------------
Index: linux/arch/ia64/kernel/mca.c
=================================--- linux.orig/arch/ia64/kernel/mca.c	2005-04-01 09:31:54.106157562 -0600
+++ linux/arch/ia64/kernel/mca.c	2005-04-05 17:29:19.933493325 -0500
@@ -123,6 +123,8 @@
  */
 static int cpe_poll_enabled = 1;
 
+int mca_recovery = 1;
+
 extern void salinfo_log_wakeup(int type, u8 *buffer, u64 size, int irqsafe);
 
 static int mca_init;
@@ -884,6 +886,7 @@
 	recover = (psp->tc && !(psp->cc || psp->bc || psp->rc || psp->uc))
 	/* other error recovery */
 	   || (ia64_mca_ucmc_extension 
+		&& mca_recovery
 		&& ia64_mca_ucmc_extension(
 			IA64_LOG_CURR_BUFFER(SAL_INFO_TYPE_MCA),
 			&ia64_sal_to_os_handoff_state,
Index: linux/kernel/sysctl.c
=================================--- linux.orig/kernel/sysctl.c	2005-04-01 09:34:11.198549062 -0600
+++ linux/kernel/sysctl.c	2005-04-05 18:10:18.987566865 -0500
@@ -121,6 +121,8 @@
 extern int acct_parm[];
 #endif
 
+extern int mca_recovery;
+
 int randomize_va_space = 1;
 
 static int parse_table(int __user *, int, void __user *, size_t __user *, void __user *, size_t,
@@ -642,7 +644,14 @@
 		.mode		= 0644,
 		.proc_handler	= &proc_dointvec,
 	},
-
+	{
+		.ctl_name	= KERN_MCA_RECOVERY,
+		.procname	= "mca_recovery",
+		.data		= &mca_recovery,
+		.maxlen		= sizeof(int),
+		.mode		= 0644,
+		.proc_handler	= &proc_dointvec,
+	},
 	{ .ctl_name = 0 }
 };
 
Index: linux/include/linux/sysctl.h
=================================--- linux.orig/include/linux/sysctl.h	2005-04-01 09:34:05.593135721 -0600
+++ linux/include/linux/sysctl.h	2005-04-05 16:56:24.819728010 -0500
@@ -136,6 +136,7 @@
 	KERN_UNKNOWN_NMI_PANICf, /* int: unknown nmi panic flag */
 	KERN_BOOTLOADER_TYPEg, /* int: boot loader type */
 	KERN_RANDOMIZEh, /* int: randomize virtual address space */
+	KERN_MCA_RECOVERYi,	/* Turn on/off MCA recovery code */
 };
 
 
------------------------------------------------------------------------------------
-- 
Russ Anderson, OS RAS/Partitioning Project Lead  
SGI - Silicon Graphics Inc          rja@sgi.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch] add MCA recovery on/off switch
  2005-04-06  3:27 [patch] add MCA recovery on/off switch Russ Anderson
@ 2005-04-06  3:32 ` Randy.Dunlap
  2005-04-06  3:32 ` Keith Owens
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Randy.Dunlap @ 2005-04-06  3:32 UTC (permalink / raw)
  To: linux-ia64

Russ Anderson wrote:
> Create /proc/sys/kernel/mca_recovery to turn on/off the MCA recovery code.
> This allows the recovery code to be enabled or disabled without having
> to reboot.

Is there also a way to disable MCA recovery on the command line
as a boot option?  Using sysctl for it could be too late.

> 1 indicates MCA recovery is on.
> 0 indicates MCA recovery is off.
> 
> Signed-off-by: Russ Anderson <rja@sgi.com>


-- 
~Randy

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch] add MCA recovery on/off switch
  2005-04-06  3:27 [patch] add MCA recovery on/off switch Russ Anderson
  2005-04-06  3:32 ` Randy.Dunlap
@ 2005-04-06  3:32 ` Keith Owens
  2005-04-06 19:22 ` Jesse Barnes
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Keith Owens @ 2005-04-06  3:32 UTC (permalink / raw)
  To: linux-ia64

On Tue, 5 Apr 2005 22:27:14 -0500 (CDT), 
Russ Anderson <rja@sgi.com> wrote:
>Create /proc/sys/kernel/mca_recovery to turn on/off the MCA recovery code.
>This allows the recovery code to be enabled or disabled without having
>to reboot.
>
>1 indicates MCA recovery is on.
>0 indicates MCA recovery is off.
>
>Signed-off-by: Russ Anderson <rja@sgi.com>
>
>------------------------------------------------------------------------------------
>Index: linux/arch/ia64/kernel/mca.c
>=================================>--- linux.orig/arch/ia64/kernel/mca.c	2005-04-01 09:31:54.106157562 -0600
>+++ linux/arch/ia64/kernel/mca.c	2005-04-05 17:29:19.933493325 -0500
>@@ -123,6 +123,8 @@
>  */
> static int cpe_poll_enabled = 1;
> 
>+int mca_recovery = 1;
>+
> extern void salinfo_log_wakeup(int type, u8 *buffer, u64 size, int irqsafe);
> 
> static int mca_init;
>@@ -884,6 +886,7 @@
> 	recover = (psp->tc && !(psp->cc || psp->bc || psp->rc || psp->uc))
> 	/* other error recovery */
> 	   || (ia64_mca_ucmc_extension 
>+		&& mca_recovery
> 		&& ia64_mca_ucmc_extension(
> 			IA64_LOG_CURR_BUFFER(SAL_INFO_TYPE_MCA),
> 			&ia64_sal_to_os_handoff_state,
>Index: linux/kernel/sysctl.c
>=================================>--- linux.orig/kernel/sysctl.c	2005-04-01 09:34:11.198549062 -0600
>+++ linux/kernel/sysctl.c	2005-04-05 18:10:18.987566865 -0500
>@@ -121,6 +121,8 @@
> extern int acct_parm[];
> #endif
> 
>+extern int mca_recovery;
>+
> int randomize_va_space = 1;
> 
> static int parse_table(int __user *, int, void __user *, size_t __user *, void __user *, size_t,
>@@ -642,7 +644,14 @@
> 		.mode		= 0644,
> 		.proc_handler	= &proc_dointvec,
> 	},
>-
>+	{
>+		.ctl_name	= KERN_MCA_RECOVERY,
>+		.procname	= "mca_recovery",
>+		.data		= &mca_recovery,
>+		.maxlen		= sizeof(int),
>+		.mode		= 0644,
>+		.proc_handler	= &proc_dointvec,
>+	},
> 	{ .ctl_name = 0 }
> };

That is not going to work for other architectures, they will get an
unresolved reference to mca_recovery.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch] add MCA recovery on/off switch
  2005-04-06  3:27 [patch] add MCA recovery on/off switch Russ Anderson
  2005-04-06  3:32 ` Randy.Dunlap
  2005-04-06  3:32 ` Keith Owens
@ 2005-04-06 19:22 ` Jesse Barnes
  2005-04-06 19:28 ` Russ Anderson
  2005-04-06 19:28 ` Randy.Dunlap
  4 siblings, 0 replies; 6+ messages in thread
From: Jesse Barnes @ 2005-04-06 19:22 UTC (permalink / raw)
  To: linux-ia64

On Tuesday, April 5, 2005 8:32 pm, Randy.Dunlap wrote:
> Russ Anderson wrote:
> > Create /proc/sys/kernel/mca_recovery to turn on/off the MCA recovery
> > code. This allows the recovery code to be enabled or disabled without
> > having to reboot.
>
> Is there also a way to disable MCA recovery on the command line
> as a boot option?  Using sysctl for it could be too late.

Yeah, we added the 'nomca' option a while back to disable machine check 
recovery altogether, but it prevents it from being enabled later on iirc.

Jesse

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch] add MCA recovery on/off switch
  2005-04-06  3:27 [patch] add MCA recovery on/off switch Russ Anderson
                   ` (2 preceding siblings ...)
  2005-04-06 19:22 ` Jesse Barnes
@ 2005-04-06 19:28 ` Russ Anderson
  2005-04-06 19:28 ` Randy.Dunlap
  4 siblings, 0 replies; 6+ messages in thread
From: Russ Anderson @ 2005-04-06 19:28 UTC (permalink / raw)
  To: linux-ia64

Jesse Barnes wrote:
> On Tuesday, April 5, 2005 8:32 pm, Randy.Dunlap wrote:
> > Russ Anderson wrote:
> > > Create /proc/sys/kernel/mca_recovery to turn on/off the MCA recovery
> > > code. This allows the recovery code to be enabled or disabled without
> > > having to reboot.
> >
> > Is there also a way to disable MCA recovery on the command line
> > as a boot option?  Using sysctl for it could be too late.
> 
> Yeah, we added the 'nomca' option a while back to disable machine check 
> recovery altogether, but it prevents it from being enabled later on iirc.

I've been convinced that the better way to turn the MCA recovery
code on/off is to build it as a module and insmod/rmmod.
That infrastructure already exists so there is no need for this patch.  
Sorry about the noise...

-- 
Russ Anderson, OS RAS/Partitioning Project Lead  
SGI - Silicon Graphics Inc          rja@sgi.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [patch] add MCA recovery on/off switch
  2005-04-06  3:27 [patch] add MCA recovery on/off switch Russ Anderson
                   ` (3 preceding siblings ...)
  2005-04-06 19:28 ` Russ Anderson
@ 2005-04-06 19:28 ` Randy.Dunlap
  4 siblings, 0 replies; 6+ messages in thread
From: Randy.Dunlap @ 2005-04-06 19:28 UTC (permalink / raw)
  To: linux-ia64

Jesse Barnes wrote:
> On Tuesday, April 5, 2005 8:32 pm, Randy.Dunlap wrote:
> 
>>Russ Anderson wrote:
>>
>>>Create /proc/sys/kernel/mca_recovery to turn on/off the MCA recovery
>>>code. This allows the recovery code to be enabled or disabled without
>>>having to reboot.
>>
>>Is there also a way to disable MCA recovery on the command line
>>as a boot option?  Using sysctl for it could be too late.
> 
> 
> Yeah, we added the 'nomca' option a while back to disable machine check 
> recovery altogether, but it prevents it from being enabled later on iirc.

Well I searched Documentation/kernel-parameters.txt
and didn't find it there, so please send a patch for that too.  :)

-- 
~Randy

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2005-04-06 19:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-04-06  3:27 [patch] add MCA recovery on/off switch Russ Anderson
2005-04-06  3:32 ` Randy.Dunlap
2005-04-06  3:32 ` Keith Owens
2005-04-06 19:22 ` Jesse Barnes
2005-04-06 19:28 ` Russ Anderson
2005-04-06 19:28 ` Randy.Dunlap

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox