* [PATCH 2.6.12] printk: add sysctl to control printk_time
@ 2005-07-20 20:08 Mark Whittington
2005-07-21 4:42 ` randy_dunlap
0 siblings, 1 reply; 2+ messages in thread
From: Mark Whittington @ 2005-07-20 20:08 UTC (permalink / raw)
To: linux-kernel
Added a sysctl (KERN_PRINTK_TIME) and by proxy an entry in
/proc/sys/kernel to enable and disable printk interval information when
CONFIG_PRINTK_TIME is compiled in.
Signed-off-by: Mark Whittington <markc@liquidev.com>
diff -ruN linux-2.6.12/Documentation/sysctl/kernel.txt linux-2.6.12-work/Documentation/sysctl/kernel.txt
--- linux-2.6.12/Documentation/sysctl/kernel.txt 2005-06-17 15:48:29.000000000 -0400
+++ linux-2.6.12-work/Documentation/sysctl/kernel.txt 2005-07-20 14:58:15.000000000 -0400
@@ -39,6 +39,7 @@
- pid_max
- powersave-nap [ PPC only ]
- printk
+- printk_time [ CONFIG_PRINTK_TIME=y ]
- real-root-dev ==> Documentation/initrd.txt
- reboot-cmd [ SPARC only ]
- rtsig-max
@@ -260,6 +261,14 @@
==============================================================
+printk_time:
+
+If CONFIG_PRINTK_TIME is on at compile time, you can enable
+and disable time printing by echoing 1 or 0 to this file. You
+can also read the current value from this file.
+
+==============================================================
+
reboot-cmd: (Sparc only)
??? This seems to be a way to give an argument to the Sparc
diff -ruN linux-2.6.12/include/linux/sysctl.h linux-2.6.12-work/include/linux/sysctl.h
--- linux-2.6.12/include/linux/sysctl.h 2005-06-17 15:48:29.000000000 -0400
+++ linux-2.6.12-work/include/linux/sysctl.h 2005-07-20 14:54:29.000000000 -0400
@@ -136,6 +136,9 @@
KERN_UNKNOWN_NMI_PANIC=66, /* int: unknown nmi panic flag */
KERN_BOOTLOADER_TYPE=67, /* int: boot loader type */
KERN_RANDOMIZE=68, /* int: randomize virtual address space */
+#if defined(CONFIG_PRINTK_TIME)
+ KERN_PRINTK_TIME=69, /* int: printk times enabled */
+#endif
};
diff -ruN linux-2.6.12/kernel/printk.c linux-2.6.12-work/kernel/printk.c
--- linux-2.6.12/kernel/printk.c 2005-06-17 15:48:29.000000000 -0400
+++ linux-2.6.12-work/kernel/printk.c 2005-07-20 15:32:03.000000000 -0400
@@ -473,7 +473,8 @@
}
#if defined(CONFIG_PRINTK_TIME)
-static int printk_time = 1;
+int printk_time = 1;
+EXPORT_SYMBOL(printk_time);
#else
static int printk_time = 0;
#endif
diff -ruN linux-2.6.12/kernel/sysctl.c linux-2.6.12-work/kernel/sysctl.c
--- linux-2.6.12/kernel/sysctl.c 2005-06-17 15:48:29.000000000 -0400
+++ linux-2.6.12-work/kernel/sysctl.c 2005-07-20 14:53:54.000000000 -0400
@@ -63,6 +63,7 @@
extern int pid_max;
extern int min_free_kbytes;
extern int printk_ratelimit_jiffies;
+extern int printk_time;
extern int printk_ratelimit_burst;
extern int pid_max_min, pid_max_max;
@@ -589,6 +590,16 @@
.mode = 0644,
.proc_handler = &proc_dointvec,
},
+#if defined(CONFIG_PRINTK_TIME)
+ {
+ .ctl_name = KERN_PRINTK_TIME,
+ .procname = "printk_time",
+ .data = &printk_time,
+ .maxlen = sizeof(int),
+ .mode = 0644,
+ .proc_handler = &proc_dointvec,
+ },
+#endif
{
.ctl_name = KERN_PRINTK_RATELIMIT,
.procname = "printk_ratelimit",
diff -ruN linux-2.6.12/lib/Kconfig.debug linux-2.6.12-work/lib/Kconfig.debug
--- linux-2.6.12/lib/Kconfig.debug 2005-06-17 15:48:29.000000000 -0400
+++ linux-2.6.12-work/lib/Kconfig.debug 2005-07-20 15:09:07.000000000 -0400
@@ -6,7 +6,9 @@
included in printk output. This allows you to measure
the interval between kernel operations, including bootup
operations. This is useful for identifying long delays
- in kernel startup.
+ in kernel startup. If this option is enabled, you can turn
+ off and on the timing information by echoing a 1 or 0 to
+ /proc/kernel/sys/printk_time.
config DEBUG_KERNEL
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH 2.6.12] printk: add sysctl to control printk_time
2005-07-20 20:08 [PATCH 2.6.12] printk: add sysctl to control printk_time Mark Whittington
@ 2005-07-21 4:42 ` randy_dunlap
0 siblings, 0 replies; 2+ messages in thread
From: randy_dunlap @ 2005-07-21 4:42 UTC (permalink / raw)
To: Mark Whittington; +Cc: linux-kernel
On Wed, 20 Jul 2005 16:08:35 -0400 (EDT) Mark Whittington wrote:
> Added a sysctl (KERN_PRINTK_TIME) and by proxy an entry in
> /proc/sys/kernel to enable and disable printk interval information when
> CONFIG_PRINTK_TIME is compiled in.
1/ That explains "what." How about "why?"
2/ The patch does not apply cleanly. It looks like some tabs
are messed up, but I'm not sure about it.
rddunlap@midway:linux-2612> patch -p1 -b --dry-run < ~/fixes/printk_time.patch
patching file Documentation/sysctl/kernel.txt
Hunk #1 FAILED at 39.
Hunk #2 FAILED at 261.
2 out of 2 hunks FAILED -- saving rejects to file Documentation/sysctl/kernel.txt.rej
patching file include/linux/sysctl.h
Hunk #1 FAILED at 136.
1 out of 1 hunk FAILED -- saving rejects to file include/linux/sysctl.h.rej
patching file kernel/printk.c
Hunk #1 FAILED at 473.
1 out of 1 hunk FAILED -- saving rejects to file kernel/printk.c.rej
patching file kernel/sysctl.c
Hunk #1 FAILED at 63.
Hunk #2 FAILED at 590.
2 out of 2 hunks FAILED -- saving rejects to file kernel/sysctl.c.rej
patching file lib/Kconfig.debug
Hunk #1 FAILED at 6.
1 out of 1 hunk FAILED -- saving rejects to file lib/Kconfig.debug.rej
3/ The patch should be made against a more recent kernel version,
like 2.6.13-rc3 or 2.6.13-rc3-git4.
> Signed-off-by: Mark Whittington <markc@liquidev.com>
>
> diff -ruN linux-2.6.12/kernel/printk.c linux-2.6.12-work/kernel/printk.c
> --- linux-2.6.12/kernel/printk.c 2005-06-17 15:48:29.000000000 -0400
> +++ linux-2.6.12-work/kernel/printk.c 2005-07-20 15:32:03.000000000 -0400
> @@ -473,7 +473,8 @@
> }
>
> #if defined(CONFIG_PRINTK_TIME)
> -static int printk_time = 1;
> +int printk_time = 1;
> +EXPORT_SYMBOL(printk_time);
I wouldn't think that the EXPORT_SYMBOL() is needed. That just
makes it visible to modules. Not being 'static' should be enough
to make it visible to other built-in-kernel files...
so, did you try it without the EXPORT_SYMBOL()?
> #else
> static int printk_time = 0;
> #endif
> diff -ruN linux-2.6.12/lib/Kconfig.debug linux-2.6.12-work/lib/Kconfig.debug
> --- linux-2.6.12/lib/Kconfig.debug 2005-06-17 15:48:29.000000000 -0400
> +++ linux-2.6.12-work/lib/Kconfig.debug 2005-07-20 15:09:07.000000000 -0400
> @@ -6,7 +6,9 @@
> included in printk output. This allows you to measure
> the interval between kernel operations, including bootup
> operations. This is useful for identifying long delays
> - in kernel startup.
> + in kernel startup. If this option is enabled, you can turn
> + off and on the timing information by echoing a 1 or 0 to
> + /proc/kernel/sys/printk_time.
Those last 2 lines should line up with the lines above them.
However, the last 2 lines use only spaces and not tab(s),
which is incorrect.
Basically, fix your email client and justify the patch.
---
~Randy
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2005-07-21 4:43 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-20 20:08 [PATCH 2.6.12] printk: add sysctl to control printk_time Mark Whittington
2005-07-21 4:42 ` randy_dunlap
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®