1 .\" Copyright (c) 2003 Greg Lehey. All rights reserved.
3 .\" Redistribution and use in source and binary forms, with or without
4 .\" modification, are permitted provided that the following conditions
6 .\" 1. Redistributions of source code must retain the above copyright
7 .\" notice, this list of conditions and the following disclaimer.
8 .\" 2. Redistributions in binary form must reproduce the above copyright
9 .\" notice, this list of conditions and the following disclaimer in the
10 .\" documentation and/or other materials provided with the distribution.
12 .\" This software is provided by Greg Lehey ``as is'' and
13 .\" any express or implied warranties, including, but not limited to, the
14 .\" implied warranties of merchantability and fitness for a particular purpose
15 .\" are disclaimed. in no event shall Greg Lehey be liable
16 .\" for any direct, indirect, incidental, special, exemplary, or consequential
17 .\" damages (including, but not limited to, procurement of substitute goods
18 .\" or services; loss of use, data, or profits; or business interruption)
19 .\" however caused and on any theory of liability, whether in contract, strict
20 .\" liability, or tort (including negligence or otherwise) arising in any way
21 .\" out of the use of this software, even if advised of the possibility of
39 .Op Ar modules-path Op Ar outfile
40 .Sh DEPRECATION NOTICE
43 utility is not present in
48 debugger handles kernel module state internally.
54 output from standard input and writes to the
58 commands to add symbol files from KLDs in subdirectories of the subdirectory
60 of the current directory, which is intended to be a kernel build directory.
63 to load the symbols into the debugging environment.
67 argument can specify a semicolon-separated list of directory pathnames
71 Each directory in the list will be searched in turn for modules.
72 The default list consists of just one element,
74 which is suitable if the current directory is a kernel build directory.
80 writes to it instead of
86 standard output is used.
88 The following options modify the function of
90 .Bl -tag -width indent
92 When writing to an explicit
94 append to the file rather than overwriting it.
96 Instead of trying to simplistically guess the path for each module, perform
97 a traversal in the same way that
99 does to locate an exact path for each module, no matter where in
103 Instead of reading from standard input, use the conventional
104 system interface to get the list of modules currently loaded.
106 Instead of reading from standard input, start a
108 and read the information from it.
110 Specify the core file for
115 Specify the system file for
122 to write or append its output to.
127 standard output is used.
129 Do not prepend a (guessed) subdirectory of the module path.
131 Instead of reading from standard input, use the
133 interface to get the list of modules.
134 This interface allows for inspecting system crash dumps,
135 as well as the live system.
140 options will be of use if inspecting a crash dump.
141 Elevated privileges, e.g., those of a superuser,
142 may be needed to use this option.
146 to the list of suffixes
148 tries to append to KLD file names.
149 The default list consists of
153 The null suffix always stays at the list tail, after the suffix added.
154 Should it be needed in the middle of the list,
155 a blank suffix can be specified to
159 Clear the list of suffixes
161 tries to append to KLD file names.
162 Only the null suffix is left in the list.
165 To add symbol files from the system search path specified by the
167 sysctl, the following command can be used:
169 .Dl asf -s `sysctl -n kern.module_path`
179 utility first appeared in
182 .An Greg Lehey Aq Mt grog@FreeBSD.org
184 Module paths are guessed in a rather naive way by default.
185 It is likely to lag behind the changes to the build tree layout.