1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
|
#
# For a description of the syntax of this configuration file,
# see scripts/kbuild/config-language.txt.
#
menu "Linux Module Utilities"
config MODPROBE_SMALL
bool "Simplified modutils"
default n
help
Simplified modutils.
With this option modprobe does not require modules.dep file
and does not use /etc/modules.conf file.
It scans module files in /lib/modules/`uname -r` and
determines dependencies and module alias names on the fly.
This may make module loading slower, most notably
when one needs to load module by alias (this requires
scanning through module _bodies_).
At the first attempt to load a module by alias modprobe
will try to generate modules.dep.bb file in order to speed up
future loads by alias. Failure to do so (read-only /lib/modules,
etc) is not reported, and future modprobes will be slow too.
NB: modules.dep.bb file format is not compatible
with modules.dep file as created/used by standard module tools.
Additional module parameters can be stored in
/etc/modules/$module_name files.
Apart from modprobe, other utilities are also provided:
- insmod is an alias to modprobe
- rmmod is an alias to modprobe -r
- depmod generates modules.dep.bb
As of 2008-07, this code is experimental. It is 14kb smaller
than "non-small" modutils.
config FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE
bool "Accept module options on modprobe command line"
default n
depends on MODPROBE_SMALL
help
Allow insmod and modprobe take module options from command line.
N.B. Very bloaty.
config FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED
bool "Skip loading of already loaded modules"
default n
depends on MODPROBE_SMALL
help
Check if the module is already loaded.
N.B. It's racy.
config DEPMOD
bool "depmod"
default n
depends on !MODPROBE_SMALL
help
depmod generates modules.dep (FIXME: elaborate)
config FEATURE_DEPMOD_PRUNE_FANCY
bool "Fancy dependency pruning"
default n
depends on DEPMOD
help
By default modules.dep contains all dependencies as listed by
the modules.
If you enable this option then we remove implied modules from
the dependencies.
This makes depmod somewhat bigger but generates a smaller
modules.dep file.
If unsure, say N.
config FEATURE_DEPMOD_ALIAS
bool "Alias support"
default n
depends on DEPMOD
help
By default modules.dep does not contain alias information.
Enable this to emit aliases of the form:
alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs
config INSMOD
bool "insmod"
default n
depends on !MODPROBE_SMALL
help
insmod is used to load specified modules in the running kernel.
config FEATURE_INSMOD_VERSION_CHECKING
bool "Module version checking"
default n
depends on INSMOD && FEATURE_2_4_MODULES
help
Support checking of versions for modules. This is used to
ensure that the kernel and module are made for each other.
config FEATURE_INSMOD_KSYMOOPS_SYMBOLS
bool "Add module symbols to kernel symbol table"
default n
depends on INSMOD && FEATURE_2_4_MODULES
help
By adding module symbols to the kernel symbol table, Oops messages
occuring within kernel modules can be properly debugged. By enabling
this feature, module symbols will always be added to the kernel symbol
table for properly debugging support. If you are not interested in
Oops messages from kernel modules, say N.
config FEATURE_INSMOD_LOADINKMEM
bool "In kernel memory optimization (uClinux only)"
default n
depends on INSMOD && FEATURE_2_4_MODULES
help
This is a special uClinux only memory optimization that lets insmod
load the specified kernel module directly into kernel space, reducing
memory usage by preventing the need for two copies of the module
being loaded into memory.
config FEATURE_INSMOD_LOAD_MAP
bool "Enable load map (-m) option"
default n
depends on INSMOD && ( FEATURE_2_4_MODULES || FEATURE_2_6_MODULES )
help
Enabling this, one would be able to get a load map
output on stdout. This makes kernel module debugging
easier.
If you don't plan to debug kernel modules, you
don't need this option.
config FEATURE_INSMOD_LOAD_MAP_FULL
bool "Symbols in load map"
default y
depends on FEATURE_INSMOD_LOAD_MAP
help
Without this option, -m will only output section
load map. With this option, -m will also output
symbols load map.
config RMMOD
bool "rmmod"
default n
depends on !MODPROBE_SMALL
help
rmmod is used to unload specified modules from the kernel.
config LSMOD
bool "lsmod"
default n
depends on !MODPROBE_SMALL
help
lsmod is used to display a list of loaded modules.
config FEATURE_LSMOD_PRETTY_2_6_OUTPUT
bool "Pretty output for 2.6.x Linux kernels"
default n
depends on LSMOD
help
This option makes output format of lsmod adjusted to
the format of module-init-tools for Linux kernel 2.6.
config MODPROBE
bool "modprobe"
default n
depends on !MODPROBE_SMALL
help
Handle the loading of modules, and their dependencies on a high
level.
Note that in the state, modprobe does not understand multiple
module options from the configuration file. See option below.
config FEATURE_MODPROBE_MULTIPLE_OPTIONS
bool
prompt "Multiple options parsing"
default y
depends on MODPROBE
help
Allow modprobe to understand more than one option to pass to
modules.
This is a WIP, while waiting for a common argument parsing
common amongst all BB applets (shell, modprobe, etc...) and
adds around 600 bytes on x86, 700 bytes on ARM. The code is
biggish and uggly, but just works.
Saying Y here is not a bad idea if you're not that short
on storage capacity.
config FEATURE_MODPROBE_FANCY_ALIAS
bool
prompt "Fancy alias parsing"
default y
depends on MODPROBE && FEATURE_2_6_MODULES
help
Say 'y' here to enable parsing of aliases with underscore/dash
mismatch between module name and file name, along with bus-specific
aliases (such as pci:... or usb:... aliases).
config FEATURE_MODPROBE_BLACKLIST
bool
prompt "Blacklist support"
default n
depends on MODPROBE && FEATURE_2_6_MODULES
help
Say 'y' here to enable support for the 'blacklist' command in
modprobe.conf. This prevents the alias resolver to resolve
blacklisted modules. This is useful if you want to prevent your
hardware autodetection scripts to load modules like evdev, frame
buffer drivers etc.
comment "Options common to multiple modutils"
depends on INSMOD || RMMOD || MODPROBE || LSMOD || DEPMOD
config FEATURE_CHECK_TAINTED_MODULE
# Simulate indentation
bool "Support tainted module checking with new kernels"
default y
depends on INSMOD || LSMOD
help
Support checking for tainted modules. These are usually binary
only modules that will make the linux-kernel list ignore your
support request.
This option is required to support GPLONLY modules.
config FEATURE_2_4_MODULES
# Simulate indentation
bool "Support version 2.2.x to 2.4.x Linux kernels"
default y
depends on INSMOD || RMMOD || MODPROBE
help
Support module loading for 2.2.x and 2.4.x Linux kernels.
Note:
This is automatically enabled if 2.6 modules are not enabled.
config FEATURE_2_6_MODULES
# Simulate indentation
bool "Support version 2.6.x Linux kernels"
default y
depends on INSMOD || RMMOD || MODPROBE
help
Support module loading for newer 2.6.x Linux kernels.
config DEFAULT_MODULES_DIR
# Simulate indentation
string "Default directory containing modules"
default "/lib/modules"
depends on INSMOD || RMMOD || MODPROBE || MODPROBE_SMALL || DEPMOD
help
Directory that contains kernel modules.
Defaults to "/lib/modules"
config DEFAULT_DEPMOD_FILE
# Simulate indentation
string "Default name of modules.dep"
default "modules.dep"
depends on INSMOD || RMMOD || MODPROBE || MODPROBE_SMALL || DEPMOD
help
Filename that contains kernel modules dependencies.
Defaults to "modules.dep"
config FEATURE_QUERY_MODULE_INTERFACE
bool
default y
depends on FEATURE_2_4_MODULES && !FEATURE_2_6_MODULES
endmenu
|