]> bbs.cooldavid.org Git - net-next-2.6.git/commitdiff
ARM: nwfpe: allow debugging output to be configured at runtime
authorRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 15 May 2010 09:40:21 +0000 (10:40 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 15 May 2010 14:03:51 +0000 (15:03 +0100)
Enabling CONFIG_USER_DEBUG allows NWFPE to complain about every FP
exception, which with some programs can cause the kernel message log
to fill with NWFPE debug, swamping out other messages.

This change allows NWFPE debugging to be configured at run time.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/nwfpe/fpmodule.c

index 4c0ab50f399a5385adcedee14a434f281a3c5cd1..cb7658e8acc51be86e898eb6ec217f70bd521ff9 100644 (file)
@@ -24,6 +24,7 @@
 #include "fpa11.h"
 
 #include <linux/module.h>
+#include <linux/moduleparam.h>
 
 /* XXX */
 #include <linux/errno.h>
@@ -134,13 +135,17 @@ a SIGFPE exception if necessary.  If not the relevant bits in the
 cumulative exceptions flag byte are set and we return.
 */
 
+#ifdef CONFIG_DEBUG_USER
+/* By default, ignore inexact errors as there are far too many of them to log */
+static int debug = ~BIT_IXC;
+#endif
+
 void float_raise(signed char flags)
 {
        register unsigned int fpsr, cumulativeTraps;
 
 #ifdef CONFIG_DEBUG_USER
-       /* Ignore inexact errors as there are far too many of them to log */
-       if (flags & ~BIT_IXC)
+       if (flags & debug)
                printk(KERN_DEBUG
                       "NWFPE: %s[%d] takes exception %08x at %p from %08lx\n",
                       current->comm, current->pid, flags,
@@ -179,3 +184,7 @@ module_exit(fpe_exit);
 MODULE_AUTHOR("Scott Bambrough <scottb@rebel.com>");
 MODULE_DESCRIPTION("NWFPE floating point emulator (" NWFPE_BITS " precision)");
 MODULE_LICENSE("GPL");
+
+#ifdef CONFIG_DEBUG_USER
+module_param(debug, int, 0644);
+#endif