From: Stefani Seibold <stefani@seibold.net>
To: torvalds@transmeta.com, alan@lxorguk.ukuu.org.uk
Cc: Andrew Morton <andrewm@uow.edu.au>,
David Weinehall <tao@acc.umu.se>,
linux-kernel@vger.kernel.org, Stefani@seibold.net
Subject: Re: patch for 2.4.0 disable printk
Date: Sat, 27 Jan 2001 23:31:35 +0100 [thread overview]
Message-ID: <01012723313500.01190@deepthought.seibold.net> (raw)
Hi guys,
thanks for the feedback. This is now the second try of my disable printk
patch.
First i moved the option for disabling the prinbtk messages form the menu
character devices to kernel hacking.
Second, i had change the macro so it calls now a inline funciton
printk_inline which always return 0. So it should be now compatibel to the
standard printk funciton.
I hope you like the patch...
Greetings,
Stefani
-----patch for 2.4.0 disable printk-----
diff -u --recursive --new-file linux/Documentation/Configure.help
linux.noprintk/Documentation/Configure.help
--- linux/Documentation/Configure.help Thu Jan 4 22:00:55 2001
+++ linux.noprintk/Documentation/Configure.help Thu Jan 18 12:14:41 2001
@@ -12139,6 +12179,14 @@
If unsure, say Y, or else you won't be able to do much with your new
shiny Linux system :-)
+
+Disable kernel messages
+CONFIG_PRINTK
+ This option allows you to disable all kernel messages by overriding
+ the printk function with an empty macro.
+ On small embedded systems, this save a lot of rom and ram space. On
+ server or desktop systems you want human readable outputs, so it is
+ normally the best choice to say N to this option.
Support for console on virtual terminal
CONFIG_VT_CONSOLE
diff -u --recursive --new-file linux/include/asm-i386/spinlock.h
linux.noprintk/include/asm-i386/spinlock.h
--- linux/include/asm-i386/spinlock.h Thu Jan 4 23:50:46 2001
+++ linux.noprintk/include/asm-i386/spinlock.h Thu Jan 25 23:07:43 2001
@@ -5,8 +5,10 @@
#include <asm/rwlock.h>
#include <asm/page.h>
+#ifndef CONFIG_PRINTK
extern int printk(const char * fmt, ...)
__attribute__ ((format (printf, 1, 2)));
+#endif
/* It seems that people are forgetting to
* initialize their spinlocks properly, tsk tsk.
diff -u --recursive --new-file linux/include/linux/kernel.h
linux.noprintk/include/linux/kernel.h
--- linux/include/linux/kernel.h Mon Dec 11 21:49:54 2000
+++ linux.noprintk/include/linux/kernel.h Sat Jan 27 22:22:59 2001
@@ -68,8 +68,18 @@
extern int session_of_pgrp(int pgrp);
+#ifdef CONFIG_PRINTK
+#define printk(x...) printk_inline()
+
+static inline int printk_inline(void) __attribute__ ((const,unused));
+
+static inline int printk_inline(void) { return 0; }
+#else
+
asmlinkage int printk(const char * fmt, ...)
__attribute__ ((format (printf, 1, 2)));
+#endif
+
extern int console_loglevel;
diff -u --recursive --new-file linux/kernel/ksyms.c
linux.noprintk/kernel/ksyms.c
--- linux/kernel/ksyms.c Wed Jan 3 01:45:37 2001
+++ linux.noprintk/kernel/ksyms.c Thu Jan 18 12:14:41 2001
@@ -439,7 +440,9 @@
/* misc */
EXPORT_SYMBOL(panic);
+#ifndef CONFIG_PRINTK
EXPORT_SYMBOL(printk);
+#endif
EXPORT_SYMBOL(sprintf);
EXPORT_SYMBOL(vsprintf);
EXPORT_SYMBOL(kdevname);
diff -u --recursive --new-file linux/kernel/printk.c
linux.noprintk/kernel/printk.c
--- linux/kernel/printk.c Sun Dec 31 03:16:13 2000
+++ linux.noprintk/kernel/printk.c Thu Jan 25 23:03:37 2001
@@ -25,7 +25,9 @@
#define LOG_BUF_LEN (16384)
#define LOG_BUF_MASK (LOG_BUF_LEN-1)
+#ifndef CONFIG_PRINTK
static char buf[1024];
+#endif
/* printk's without a loglevel use this.. */
#define DEFAULT_MESSAGE_LOGLEVEL 4 /* KERN_WARNING */
@@ -251,6 +253,20 @@
return do_syslog(type, buf, len);
}
+
+#ifdef CONFIG_PRINTK
+#undef printk
+
+#include <linux/module.h>
+
+asmlinkage int printk(const char *fmt, ...)
+{
+ return 0;
+}
+
+EXPORT_SYMBOL_NOVERS(printk);
+
+#else
asmlinkage int printk(const char *fmt, ...)
{
va_list args;
@@ -311,6 +322,7 @@
wake_up_interruptible(&log_wait);
return i;
}
+#endif
void console_print(const char *s)
{
diff -u --recursive --new-file linux/CREDITS linux.noprintk/CREDITS
--- linux/CREDITS Sun Dec 31 18:27:57 2000
+++ linux.noprintk/CREDITS Fri Jan 26 10:51:19 2001
@@ -2395,6 +2395,14 @@
S: Oldenburg
S: Germany
+N: Stefani Seibold
+E: Stefani@Seibold.net
+D: Possibility to disable all kernel messages by overload printk with a
+D: dummy macro (saves a lot of disk- and ramspace for embedded systems
+D: and rescue disks)
+S: Munich
+S: Germany
+
N: Darren Senn
E: sinster@darkwater.com
D: Whatever I notice needs doing (so far: itimers, /proc)
diff -u --recursive --new-file linux/arch/alpha/config.in
linux.noprintk/arch/alpha/config.in
--- linux/arch/alpha/config.in Fri Dec 29 23:07:19 2000
+++ linux.noprintk/arch/alpha/config.in Sat Jan 27 22:37:20 2001
@@ -359,6 +359,7 @@
fi
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
bool 'Legacy kernel start address' CONFIG_ALPHA_LEGACY_START_ADDRESS
diff -u --recursive --new-file linux/arch/arm/config.in
linux.noprintk/arch/arm/config.in
--- linux/arch/arm/config.in Thu Nov 16 21:51:28 2000
+++ linux.noprintk/arch/arm/config.in Sat Jan 27 22:34:57 2001
@@ -414,6 +414,7 @@
bool 'Verbose user fault messages' CONFIG_DEBUG_USER
bool 'Include debugging information in kernel binary' CONFIG_DEBUG_INFO
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
if [ "$CONFIG_CPU_26" = "y" ]; then
bool 'Disable pgtable cache' CONFIG_NO_PGT_CACHE
fi
diff -u --recursive --new-file linux/arch/i386/config.in
linux.noprintk/arch/i386/config.in
--- linux/arch/i386/config.in Fri Dec 29 23:35:47 2000
+++ linux.noprintk/arch/i386/config.in Sat Jan 27 22:36:09 2001
@@ -374,4 +374,5 @@
#bool 'Debug kmalloc/kfree' CONFIG_DEBUG_MALLOC
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
endmenu
diff -u --recursive --new-file linux/arch/ia64/config.in
linux.noprintk/arch/ia64/config.in
--- linux/arch/ia64/config.in Thu Jan 4 21:50:17 2001
+++ linux.noprintk/arch/ia64/config.in Sat Jan 27 22:36:48 2001
@@ -249,6 +249,7 @@
fi
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
bool 'Early printk support (requires VGA!)' CONFIG_IA64_EARLY_PRINTK
bool 'Turn on compare-and-exchange bug checking (slow!)'
CONFIG_IA64_DEBUG_CMPXCHG
bool 'Turn on irq debug checks (slow!)' CONFIG_IA64_DEBUG_IRQ
diff -u --recursive --new-file linux/arch/m68k/config.in
linux.noprintk/arch/m68k/config.in
--- linux/arch/m68k/config.in Thu Jan 4 22:00:55 2001
+++ linux.noprintk/arch/m68k/config.in Sat Jan 27 22:36:57 2001
@@ -538,4 +538,5 @@
#bool 'Debug kmalloc/kfree' CONFIG_DEBUG_MALLOC
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
endmenu
diff -u --recursive --new-file linux/arch/mips/config.in
linux.noprintk/arch/mips/config.in
--- linux/arch/mips/config.in Thu Nov 16 21:51:28 2000
+++ linux.noprintk/arch/mips/config.in Sat Jan 27 22:37:02 2001
@@ -397,4 +397,5 @@
bool 'Remote GDB kernel debugging' CONFIG_REMOTE_DEBUG
fi
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
endmenu
diff -u --recursive --new-file linux/arch/mips64/config.in
linux.noprintk/arch/mips64/config.in
--- linux/arch/mips64/config.in Wed Nov 29 06:42:04 2000
+++ linux.noprintk/arch/mips64/config.in Sat Jan 27 22:37:45 2001
@@ -266,4 +266,5 @@
fi
bool 'Remote GDB kernel debugging' CONFIG_REMOTE_DEBUG
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
endmenu
diff -u --recursive --new-file linux/arch/parisc/config.in
linux.noprintk/arch/parisc/config.in
--- linux/arch/parisc/config.in Tue Dec 5 21:29:39 2000
+++ linux.noprintk/arch/parisc/config.in Sat Jan 27 22:37:51 2001
@@ -204,5 +204,6 @@
#bool 'Debug kmalloc/kfree' CONFIG_DEBUG_MALLOC
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
endmenu
diff -u --recursive --new-file linux/arch/ppc/config.in
linux.noprintk/arch/ppc/config.in
--- linux/arch/ppc/config.in Thu Nov 16 21:51:28 2000
+++ linux.noprintk/arch/ppc/config.in Sat Jan 27 22:35:33 2001
@@ -324,6 +324,7 @@
comment 'Kernel hacking'
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
bool 'Include kgdb kernel debugger' CONFIG_KGDB
bool 'Include xmon kernel debugger' CONFIG_XMON
endmenu
diff -u --recursive --new-file linux/arch/s390/config.in
linux.noprintk/arch/s390/config.in
--- linux/arch/s390/config.in Thu Nov 16 21:51:28 2000
+++ linux.noprintk/arch/s390/config.in Sat Jan 27 22:37:14 2001
@@ -77,5 +77,6 @@
bool 'Remote GDB kernel debugging' CONFIG_REMOTE_DEBUG
fi
# this does not work. bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
endmenu
diff -u --recursive --new-file linux/arch/sh/config.in
linux.noprintk/arch/sh/config.in
--- linux/arch/sh/config.in Thu Jan 4 22:19:13 2001
+++ linux.noprintk/arch/sh/config.in Sat Jan 27 22:35:09 2001
@@ -260,6 +260,7 @@
comment 'Kernel hacking'
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
bool 'Use LinuxSH standard BIOS' CONFIG_SH_STANDARD_BIOS
if [ "$CONFIG_SH_STANDARD_BIOS" = "y" ]; then
bool 'GDB Stub kernel debug' CONFIG_DEBUG_KERNEL_WITH_GDB_STUB
diff -u --recursive --new-file linux/arch/sparc/config.in
linux.noprintk/arch/sparc/config.in
--- linux/arch/sparc/config.in Wed Nov 29 06:53:44 2000
+++ linux.noprintk/arch/sparc/config.in Sat Jan 27 22:37:29 2001
@@ -258,4 +258,5 @@
comment 'Kernel hacking'
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
endmenu
diff -u --recursive --new-file linux/arch/sparc64/config.in
linux.noprintk/arch/sparc64/config.in
--- linux/arch/sparc64/config.in Thu Nov 16 21:51:28 2000
+++ linux.noprintk/arch/sparc64/config.in Sat Jan 27 22:37:38 2001
@@ -331,5 +331,6 @@
comment 'Kernel hacking'
bool 'Magic SysRq key' CONFIG_MAGIC_SYSRQ
+bool 'Disable kernel messages' CONFIG_PRINTK
#bool 'ECache flush trap support at ta 0x72' CONFIG_EC_FLUSH_TRAP
endmenu
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
next reply other threads:[~2001-01-27 22:34 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-01-27 22:31 Stefani Seibold [this message]
2001-01-28 0:44 ` patch for 2.4.0 disable printk Andrew Morton
2001-01-28 9:27 ` Stefani Seibold
2001-01-28 17:32 ` Jamie Lokier
2001-01-29 2:48 ` Paul Gortmaker
-- strict thread matches above, loose matches on Subject: below --
2001-01-26 20:46 Stefani Seibold
2001-01-26 21:13 ` David Weinehall
2001-01-26 11:05 Stefani Seibold
2001-01-27 0:09 ` Thunder from the hill
2001-01-27 10:57 ` Stefani Seibold
2001-01-29 17:40 ` James Simmons
2001-01-29 20:17 ` Stefani Seibold
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=01012723313500.01190@deepthought.seibold.net \
--to=stefani@seibold.net \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=andrewm@uow.edu.au \
--cc=linux-kernel@vger.kernel.org \
--cc=tao@acc.umu.se \
--cc=torvalds@transmeta.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox