xref: /dflybsd-src/usr.bin/pctrack/pctrack.8 (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
1*86d7f5d3SJohn Marino.\"
2*86d7f5d3SJohn Marino.\" Copyright (c) 2003,2004 The DragonFly Project.  All rights reserved.
3*86d7f5d3SJohn Marino.\"
4*86d7f5d3SJohn Marino.\" This code is derived from software contributed to The DragonFly Project
5*86d7f5d3SJohn Marino.\" by Matthew Dillon <dillon@backplane.com>
6*86d7f5d3SJohn Marino.\"
7*86d7f5d3SJohn Marino.\" Redistribution and use in source and binary forms, with or without
8*86d7f5d3SJohn Marino.\" modification, are permitted provided that the following conditions
9*86d7f5d3SJohn Marino.\" are met:
10*86d7f5d3SJohn Marino.\"
11*86d7f5d3SJohn Marino.\" 1. Redistributions of source code must retain the above copyright
12*86d7f5d3SJohn Marino.\"    notice, this list of conditions and the following disclaimer.
13*86d7f5d3SJohn Marino.\" 2. Redistributions in binary form must reproduce the above copyright
14*86d7f5d3SJohn Marino.\"    notice, this list of conditions and the following disclaimer in
15*86d7f5d3SJohn Marino.\"    the documentation and/or other materials provided with the
16*86d7f5d3SJohn Marino.\"    distribution.
17*86d7f5d3SJohn Marino.\" 3. Neither the name of The DragonFly Project nor the names of its
18*86d7f5d3SJohn Marino.\"    contributors may be used to endorse or promote products derived
19*86d7f5d3SJohn Marino.\"    from this software without specific, prior written permission.
20*86d7f5d3SJohn Marino.\"
21*86d7f5d3SJohn Marino.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22*86d7f5d3SJohn Marino.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23*86d7f5d3SJohn Marino.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24*86d7f5d3SJohn Marino.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
25*86d7f5d3SJohn Marino.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26*86d7f5d3SJohn Marino.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
27*86d7f5d3SJohn Marino.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28*86d7f5d3SJohn Marino.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
29*86d7f5d3SJohn Marino.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
30*86d7f5d3SJohn Marino.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
31*86d7f5d3SJohn Marino.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32*86d7f5d3SJohn Marino.\" SUCH DAMAGE.
33*86d7f5d3SJohn Marino.\"
34*86d7f5d3SJohn Marino.\" $DragonFly: src/usr.bin/pctrack/pctrack.8,v 1.4 2006/07/22 18:49:25 swildner Exp $
35*86d7f5d3SJohn Marino.\"
36*86d7f5d3SJohn Marino.Dd June 8, 2006
37*86d7f5d3SJohn Marino.Dt PCTRACK 8
38*86d7f5d3SJohn Marino.Os
39*86d7f5d3SJohn Marino.Sh NAME
40*86d7f5d3SJohn Marino.Nm pctrack
41*86d7f5d3SJohn Marino.Nd print kernel system/interrupt PC sampling history
42*86d7f5d3SJohn Marino.Sh SYNOPSIS
43*86d7f5d3SJohn Marino.Nm
44*86d7f5d3SJohn Marino.Op Fl fnsi
45*86d7f5d3SJohn Marino.Op Fl c Ar cpu
46*86d7f5d3SJohn Marino.Op Fl N Ar execfile
47*86d7f5d3SJohn Marino.Op Fl M Ar corefile
48*86d7f5d3SJohn Marino.Op Ar interval
49*86d7f5d3SJohn Marino.Sh DESCRIPTION
50*86d7f5d3SJohn MarinoKernels compiled with
51*86d7f5d3SJohn Marino.Dv DEBUG_PCTRACK
52*86d7f5d3SJohn Marinorecord the program counter (PC) of
53*86d7f5d3SJohn Marinothe code interrupted by the statistics clock interrupt.
54*86d7f5d3SJohn MarinoThis information can be dumped with the
55*86d7f5d3SJohn Marino.Nm
56*86d7f5d3SJohn Marinoutility
57*86d7f5d3SJohn Marino.Pp
58*86d7f5d3SJohn MarinoThe following options are available:
59*86d7f5d3SJohn Marino.Bl -tag -width ".Fl N Ar execfile"
60*86d7f5d3SJohn Marino.It Fl c Ar cpu
61*86d7f5d3SJohn MarinoSpecify which CPU to dump.  If not specified, all CPUs will be dumped.
62*86d7f5d3SJohn Marino.It Fl f
63*86d7f5d3SJohn MarinoIf a single CPU and either
64*86d7f5d3SJohn Marino.Fl i
65*86d7f5d3SJohn Marinoor
66*86d7f5d3SJohn Marino.Fl s
67*86d7f5d3SJohn Marinois specified, this option will use the repeat interval to detect changes
68*86d7f5d3SJohn Marinoand dump them as they occur.
69*86d7f5d3SJohn Marino.It Fl i
70*86d7f5d3SJohn MarinoDump the interrupt tracking buffer.
71*86d7f5d3SJohn Marino.It Fl s
72*86d7f5d3SJohn MarinoDump the kernel tracking buffer.
73*86d7f5d3SJohn MarinoIf neither
74*86d7f5d3SJohn Marino.Fl i
75*86d7f5d3SJohn Marinoor
76*86d7f5d3SJohn Marino.Fl s
77*86d7f5d3SJohn Marinois specified, both tracking buffers will be dumped.
78*86d7f5d3SJohn Marino.It Fl n
79*86d7f5d3SJohn Marino.Nm
80*86d7f5d3SJohn Marinonormally tries to translate the PC into symbols.  This option forces hex
81*86d7f5d3SJohn Marinovalues to be displayed instead.
82*86d7f5d3SJohn Marino.It Fl N Ar execfile
83*86d7f5d3SJohn MarinoThe kernel image to resolve symbols from.
84*86d7f5d3SJohn MarinoThe default is the value returned via
85*86d7f5d3SJohn Marino.Xr getbootfile 3 .
86*86d7f5d3SJohn Marino.It Fl M Ar corefile
87*86d7f5d3SJohn MarinoThe core file or memory image to read from.
88*86d7f5d3SJohn MarinoThe default is
89*86d7f5d3SJohn Marino.Pa /dev/mem .
90*86d7f5d3SJohn Marino.El
91*86d7f5d3SJohn Marino.\".Sh OPERATIONAL NOTES
92*86d7f5d3SJohn Marino.Sh HISTORY
93*86d7f5d3SJohn MarinoThe
94*86d7f5d3SJohn Marino.Nm
95*86d7f5d3SJohn Marinoutility first appeared in
96*86d7f5d3SJohn Marino.Dx 1.5 .
97*86d7f5d3SJohn Marino.Sh AUTHORS
98*86d7f5d3SJohn Marino.An -nosplit
99*86d7f5d3SJohn MarinoThe
100*86d7f5d3SJohn Marino.Nm
101*86d7f5d3SJohn Marinoutility was originally implemented by
102*86d7f5d3SJohn Marino.An Matthew Dillon
103*86d7f5d3SJohn Marinofor
104*86d7f5d3SJohn Marino.Dx .
105