summaryrefslogtreecommitdiffstats
path: root/man5
diff options
context:
space:
mode:
authorAlejandro Colomar <alx@kernel.org>2023-08-15 22:46:06 +0200
committerAlejandro Colomar <alx@kernel.org>2023-08-15 23:19:19 +0200
commit4ddf958b6df77b7ade03c2e8d2795ac9ad8903db (patch)
tree71525bdf694c5337e6e3a2cb412997d538591d83 /man5
parent41c5d7e07746490be1bb9b9e8158085429ad61b1 (diff)
proc.5, proc_timer_stats.5: Split /proc/timer_stats from proc(5)
Signed-off-by: Alejandro Colomar <alx@kernel.org>
Diffstat (limited to 'man5')
-rw-r--r--man5/proc.5105
-rw-r--r--man5/proc_timer_stats.5117
2 files changed, 117 insertions, 105 deletions
diff --git a/man5/proc.5 b/man5/proc.5
index f68bda52d..fa6d3c7c0 100644
--- a/man5/proc.5
+++ b/man5/proc.5
@@ -225,111 +225,6 @@ hierarchy.
.\" FIXME Document /proc/sched_debug (since Linux 2.6.23)
.\" See also /proc/[pid]/sched
.TP
-.IR /proc/timer_stats " (from Linux 2.6.21 until Linux 4.10)"
-.\" commit 82f67cd9fca8c8762c15ba7ed0d5747588c1e221
-.\" Date: Fri Feb 16 01:28:13 2007 -0800
-.\" Text largely derived from Documentation/timers/timer_stats.txt
-.\" removed in commit dfb4357da6ddbdf57d583ba64361c9d792b0e0b1
-.\" Date: Wed Feb 8 11:26:59 2017 -0800
-This is a debugging facility to make timer (ab)use in a Linux
-system visible to kernel and user-space developers.
-It can be used by kernel and user-space developers to verify that
-their code does not make undue use of timers.
-The goal is to avoid unnecessary wakeups,
-thereby optimizing power consumption.
-.IP
-If enabled in the kernel
-.RB ( CONFIG_TIMER_STATS ),
-but not used,
-it has almost zero run-time overhead and a relatively small
-data-structure overhead.
-Even if collection is enabled at run time, overhead is low:
-all the locking is per-CPU and lookup is hashed.
-.IP
-The
-.I /proc/timer_stats
-file is used both to control sampling facility and to read out the
-sampled information.
-.IP
-The
-.I timer_stats
-functionality is inactive on bootup.
-A sampling period can be started using the following command:
-.IP
-.in +4n
-.EX
-# echo 1 > /proc/timer_stats
-.EE
-.in
-.IP
-The following command stops a sampling period:
-.IP
-.in +4n
-.EX
-# echo 0 > /proc/timer_stats
-.EE
-.in
-.IP
-The statistics can be retrieved by:
-.IP
-.in +4n
-.EX
-$ cat /proc/timer_stats
-.EE
-.in
-.IP
-While sampling is enabled, each readout from
-.I /proc/timer_stats
-will see
-newly updated statistics.
-Once sampling is disabled, the sampled information
-is kept until a new sample period is started.
-This allows multiple readouts.
-.IP
-Sample output from
-.IR /proc/timer_stats :
-.IP
-.in +4n
-.EX
-.RB $ " cat /proc/timer_stats"
-Timer Stats Version: v0.3
-Sample period: 1.764 s
-Collection: active
- 255, 0 swapper/3 hrtimer_start_range_ns (tick_sched_timer)
- 71, 0 swapper/1 hrtimer_start_range_ns (tick_sched_timer)
- 58, 0 swapper/0 hrtimer_start_range_ns (tick_sched_timer)
- 4, 1694 gnome\-shell mod_delayed_work_on (delayed_work_timer_fn)
- 17, 7 rcu_sched rcu_gp_kthread (process_timeout)
-\&...
- 1, 4911 kworker/u16:0 mod_delayed_work_on (delayed_work_timer_fn)
- 1D, 2522 kworker/0:0 queue_delayed_work_on (delayed_work_timer_fn)
-1029 total events, 583.333 events/sec
-.EE
-.in
-.IP
-The output columns are:
-.RS
-.IP [1] 5
-a count of the number of events,
-optionally (since Linux 2.6.23) followed by the letter \[aq]D\[aq]
-.\" commit c5c061b8f9726bc2c25e19dec227933a13d1e6b7 deferrable timers
-if this is a deferrable timer;
-.IP [2]
-the PID of the process that initialized the timer;
-.IP [3]
-the name of the process that initialized the timer;
-.IP [4]
-the function where the timer was initialized; and
-(in parentheses)
-the callback function that is associated with the timer.
-.RE
-.IP
-During the Linux 4.11 development cycle,
-this file was removed because of security concerns,
-as it exposes information across namespaces.
-Furthermore, it is possible to obtain
-the same information via in-kernel tracing facilities such as ftrace.
-.TP
.I /proc/tty
Subdirectory containing the pseudo-files and subdirectories for
tty drivers and line disciplines.
diff --git a/man5/proc_timer_stats.5 b/man5/proc_timer_stats.5
new file mode 100644
index 000000000..0c9f45978
--- /dev/null
+++ b/man5/proc_timer_stats.5
@@ -0,0 +1,117 @@
+.\" Copyright (C) 1994, 1995, Daniel Quinlan <quinlan@yggdrasil.com>
+.\" Copyright (C) 2002-2008, 2017, Michael Kerrisk <mtk.manpages@gmail.com>
+.\" Copyright (C) 2023, Alejandro Colomar <alx@kernel.org>
+.\"
+.\" SPDX-License-Identifier: GPL-3.0-or-later
+.\"
+.TH proc_timer_stats 5 (date) "Linux man-pages (unreleased)"
+.SH NAME
+/proc/timer_stats \- timer statistics
+.SH DESCRIPTION
+.TP
+.IR /proc/timer_stats " (from Linux 2.6.21 until Linux 4.10)"
+.\" commit 82f67cd9fca8c8762c15ba7ed0d5747588c1e221
+.\" Date: Fri Feb 16 01:28:13 2007 -0800
+.\" Text largely derived from Documentation/timers/timer_stats.txt
+.\" removed in commit dfb4357da6ddbdf57d583ba64361c9d792b0e0b1
+.\" Date: Wed Feb 8 11:26:59 2017 -0800
+This is a debugging facility to make timer (ab)use in a Linux
+system visible to kernel and user-space developers.
+It can be used by kernel and user-space developers to verify that
+their code does not make undue use of timers.
+The goal is to avoid unnecessary wakeups,
+thereby optimizing power consumption.
+.IP
+If enabled in the kernel
+.RB ( CONFIG_TIMER_STATS ),
+but not used,
+it has almost zero run-time overhead and a relatively small
+data-structure overhead.
+Even if collection is enabled at run time, overhead is low:
+all the locking is per-CPU and lookup is hashed.
+.IP
+The
+.I /proc/timer_stats
+file is used both to control sampling facility and to read out the
+sampled information.
+.IP
+The
+.I timer_stats
+functionality is inactive on bootup.
+A sampling period can be started using the following command:
+.IP
+.in +4n
+.EX
+# echo 1 > /proc/timer_stats
+.EE
+.in
+.IP
+The following command stops a sampling period:
+.IP
+.in +4n
+.EX
+# echo 0 > /proc/timer_stats
+.EE
+.in
+.IP
+The statistics can be retrieved by:
+.IP
+.in +4n
+.EX
+$ cat /proc/timer_stats
+.EE
+.in
+.IP
+While sampling is enabled, each readout from
+.I /proc/timer_stats
+will see
+newly updated statistics.
+Once sampling is disabled, the sampled information
+is kept until a new sample period is started.
+This allows multiple readouts.
+.IP
+Sample output from
+.IR /proc/timer_stats :
+.IP
+.in +4n
+.EX
+.RB $ " cat /proc/timer_stats"
+Timer Stats Version: v0.3
+Sample period: 1.764 s
+Collection: active
+ 255, 0 swapper/3 hrtimer_start_range_ns (tick_sched_timer)
+ 71, 0 swapper/1 hrtimer_start_range_ns (tick_sched_timer)
+ 58, 0 swapper/0 hrtimer_start_range_ns (tick_sched_timer)
+ 4, 1694 gnome\-shell mod_delayed_work_on (delayed_work_timer_fn)
+ 17, 7 rcu_sched rcu_gp_kthread (process_timeout)
+\&...
+ 1, 4911 kworker/u16:0 mod_delayed_work_on (delayed_work_timer_fn)
+ 1D, 2522 kworker/0:0 queue_delayed_work_on (delayed_work_timer_fn)
+1029 total events, 583.333 events/sec
+.EE
+.in
+.IP
+The output columns are:
+.RS
+.IP [1] 5
+a count of the number of events,
+optionally (since Linux 2.6.23) followed by the letter \[aq]D\[aq]
+.\" commit c5c061b8f9726bc2c25e19dec227933a13d1e6b7 deferrable timers
+if this is a deferrable timer;
+.IP [2]
+the PID of the process that initialized the timer;
+.IP [3]
+the name of the process that initialized the timer;
+.IP [4]
+the function where the timer was initialized; and
+(in parentheses)
+the callback function that is associated with the timer.
+.RE
+.IP
+During the Linux 4.11 development cycle,
+this file was removed because of security concerns,
+as it exposes information across namespaces.
+Furthermore, it is possible to obtain
+the same information via in-kernel tracing facilities such as ftrace.
+.SH SEE ALSO
+.BR proc (5)