Eric Andersen | c9f20d9 | 2002-12-05 08:41:41 +0000 | [diff] [blame] | 1 | # |
| 2 | # For a description of the syntax of this configuration file, |
| 3 | # see scripts/kbuild/config-language.txt. |
| 4 | # |
| 5 | |
Glenn L McGrath | 1b6dfa7 | 2003-03-30 13:57:26 +0000 | [diff] [blame] | 6 | menu "Linux Module Utilities" |
Eric Andersen | c9f20d9 | 2002-12-05 08:41:41 +0000 | [diff] [blame] | 7 | |
Denys Vlasenko | 326edc3 | 2016-12-22 14:36:49 +0100 | [diff] [blame] | 8 | config MODPROBE_SMALL |
| 9 | bool "Simplified modutils" |
| 10 | default y |
| 11 | select PLATFORM_LINUX |
| 12 | help |
| 13 | Simplified modutils. |
| 14 | |
| 15 | With this option modprobe does not require modules.dep file |
| 16 | and does not use /etc/modules.conf file. |
| 17 | It scans module files in /lib/modules/`uname -r` and |
| 18 | determines dependencies and module alias names on the fly. |
| 19 | This may make module loading slower, most notably |
| 20 | when one needs to load module by alias (this requires |
| 21 | scanning through module _bodies_). |
| 22 | |
| 23 | At the first attempt to load a module by alias modprobe |
| 24 | will try to generate modules.dep.bb file in order to speed up |
| 25 | future loads by alias. Failure to do so (read-only /lib/modules, |
| 26 | etc) is not reported, and future modprobes will be slow too. |
| 27 | |
| 28 | NB: modules.dep.bb file format is not compatible |
| 29 | with modules.dep file as created/used by standard module tools. |
| 30 | |
| 31 | Additional module parameters can be stored in |
| 32 | /etc/modules/$module_name files. |
| 33 | |
| 34 | Apart from modprobe, other utilities are also provided: |
| 35 | - insmod is an alias to modprobe |
| 36 | - rmmod is an alias to modprobe -r |
| 37 | - depmod generates modules.dep.bb |
| 38 | |
Pascal Bellard | 22bdf90 | 2010-06-06 04:55:13 +0200 | [diff] [blame] | 39 | INSERT |
| 40 | |
Rob Landley | 762bb62 | 2005-12-11 20:20:05 +0000 | [diff] [blame] | 41 | comment "Options common to multiple modutils" |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 42 | |
| 43 | config FEATURE_2_4_MODULES |
| 44 | bool "Support version 2.2/2.4 Linux kernels" |
| 45 | default n |
| 46 | depends on INSMOD || RMMOD || LSMOD |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 47 | select PLATFORM_LINUX |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 48 | help |
| 49 | Support module loading for 2.2.x and 2.4.x Linux kernels. |
| 50 | This increases size considerably. Say N unless you plan |
| 51 | to run ancient kernels. |
| 52 | |
Denys Vlasenko | 77c066e | 2009-10-25 04:35:22 +0100 | [diff] [blame] | 53 | config FEATURE_INSMOD_TRY_MMAP |
| 54 | bool "Try to load module from a mmap'ed area" |
| 55 | default n |
| 56 | depends on INSMOD || MODPROBE_SMALL |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 57 | select PLATFORM_LINUX |
Denys Vlasenko | 77c066e | 2009-10-25 04:35:22 +0100 | [diff] [blame] | 58 | help |
| 59 | This option causes module loading code to try to mmap |
| 60 | module first. If it does not work (for example, |
| 61 | it does not work for compressed modules), module will be read |
| 62 | (and unpacked if needed) into a memory block allocated by malloc. |
| 63 | |
| 64 | The only case when mmap works but malloc does not is when |
| 65 | you are trying to load a big module on a very memory-constrained |
| 66 | machine. Malloc will momentarily need 2x as much memory as mmap. |
| 67 | |
| 68 | Choosing N saves about 250 bytes of code (on 32-bit x86). |
| 69 | |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 70 | config FEATURE_INSMOD_VERSION_CHECKING |
| 71 | bool "Enable module version checking" |
| 72 | default n |
| 73 | depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE) |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 74 | select PLATFORM_LINUX |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 75 | help |
| 76 | Support checking of versions for modules. This is used to |
| 77 | ensure that the kernel and module are made for each other. |
| 78 | |
| 79 | config FEATURE_INSMOD_KSYMOOPS_SYMBOLS |
| 80 | bool "Add module symbols to kernel symbol table" |
| 81 | default n |
| 82 | depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE) |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 83 | select PLATFORM_LINUX |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 84 | help |
| 85 | By adding module symbols to the kernel symbol table, Oops messages |
| 86 | occuring within kernel modules can be properly debugged. By enabling |
| 87 | this feature, module symbols will always be added to the kernel symbol |
Denis Vlasenko | c574100 | 2009-03-05 09:26:17 +0000 | [diff] [blame] | 88 | table for proper debugging support. If you are not interested in |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 89 | Oops messages from kernel modules, say N. |
| 90 | |
| 91 | config FEATURE_INSMOD_LOADINKMEM |
| 92 | bool "In kernel memory optimization (uClinux only)" |
| 93 | default n |
| 94 | depends on FEATURE_2_4_MODULES && (INSMOD || MODPROBE) |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 95 | select PLATFORM_LINUX |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 96 | help |
| 97 | This is a special uClinux only memory optimization that lets insmod |
| 98 | load the specified kernel module directly into kernel space, reducing |
| 99 | memory usage by preventing the need for two copies of the module |
| 100 | being loaded into memory. |
| 101 | |
| 102 | config FEATURE_INSMOD_LOAD_MAP |
| 103 | bool "Enable insmod load map (-m) option" |
| 104 | default n |
| 105 | depends on FEATURE_2_4_MODULES && INSMOD |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 106 | select PLATFORM_LINUX |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 107 | help |
| 108 | Enabling this, one would be able to get a load map |
| 109 | output on stdout. This makes kernel module debugging |
| 110 | easier. |
| 111 | If you don't plan to debug kernel modules, you |
| 112 | don't need this option. |
| 113 | |
| 114 | config FEATURE_INSMOD_LOAD_MAP_FULL |
| 115 | bool "Symbols in load map" |
| 116 | default y |
| 117 | depends on FEATURE_INSMOD_LOAD_MAP && !MODPROBE_SMALL |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 118 | select PLATFORM_LINUX |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 119 | help |
| 120 | Without this option, -m will only output section |
| 121 | load map. With this option, -m will also output |
| 122 | symbols load map. |
Eric Andersen | c9f20d9 | 2002-12-05 08:41:41 +0000 | [diff] [blame] | 123 | |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 124 | config FEATURE_CHECK_TAINTED_MODULE |
Rob Landley | 2ec922e | 2006-04-13 23:22:16 +0000 | [diff] [blame] | 125 | bool "Support tainted module checking with new kernels" |
Eric Andersen | c9f20d9 | 2002-12-05 08:41:41 +0000 | [diff] [blame] | 126 | default y |
Denis Vlasenko | e35af56 | 2009-01-31 14:22:24 +0000 | [diff] [blame] | 127 | depends on (LSMOD || FEATURE_2_4_MODULES) && !MODPROBE_SMALL |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 128 | select PLATFORM_LINUX |
Eric Andersen | c9f20d9 | 2002-12-05 08:41:41 +0000 | [diff] [blame] | 129 | help |
Bernhard Reutner-Fischer | 3e8669f | 2008-07-22 18:27:53 +0000 | [diff] [blame] | 130 | Support checking for tainted modules. These are usually binary |
Eric Andersen | 9c3c38d | 2003-07-22 09:59:34 +0000 | [diff] [blame] | 131 | only modules that will make the linux-kernel list ignore your |
| 132 | support request. |
Glenn L McGrath | 759d7ec | 2003-09-03 00:42:58 +0000 | [diff] [blame] | 133 | This option is required to support GPLONLY modules. |
Eric Andersen | c9f20d9 | 2002-12-05 08:41:41 +0000 | [diff] [blame] | 134 | |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 135 | config FEATURE_MODUTILS_ALIAS |
| 136 | bool "Support for module.aliases file" |
Rob Landley | 762bb62 | 2005-12-11 20:20:05 +0000 | [diff] [blame] | 137 | default y |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 138 | depends on DEPMOD || MODPROBE |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 139 | select PLATFORM_LINUX |
Rob Landley | 762bb62 | 2005-12-11 20:20:05 +0000 | [diff] [blame] | 140 | help |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 141 | Generate and parse modules.alias containing aliases for bus |
| 142 | identifiers: |
| 143 | alias pcmcia:m*c*f03fn*pfn*pa*pb*pc*pd* parport_cs |
Rob Landley | 762bb62 | 2005-12-11 20:20:05 +0000 | [diff] [blame] | 144 | |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 145 | and aliases for logical modules names e.g.: |
| 146 | alias padlock_aes aes |
| 147 | alias aes_i586 aes |
| 148 | alias aes_generic aes |
Bernhard Reutner-Fischer | 9474830 | 2008-05-27 08:41:32 +0000 | [diff] [blame] | 149 | |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 150 | Say Y if unsure. |
| 151 | |
| 152 | config FEATURE_MODUTILS_SYMBOLS |
| 153 | bool "Support for module.symbols file" |
Rob Landley | 762bb62 | 2005-12-11 20:20:05 +0000 | [diff] [blame] | 154 | default y |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 155 | depends on DEPMOD || MODPROBE |
Denys Vlasenko | e3b1a1f | 2011-02-26 22:24:08 +0100 | [diff] [blame] | 156 | select PLATFORM_LINUX |
Rob Landley | 762bb62 | 2005-12-11 20:20:05 +0000 | [diff] [blame] | 157 | help |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 158 | Generate and parse modules.symbols containing aliases for |
| 159 | symbol_request() kernel calls, such as: |
| 160 | alias symbol:usb_sg_init usbcore |
Rob Landley | 762bb62 | 2005-12-11 20:20:05 +0000 | [diff] [blame] | 161 | |
Denis Vlasenko | ba1315d | 2008-09-13 14:59:38 +0000 | [diff] [blame] | 162 | Say Y if unsure. |
Rob Landley | 762bb62 | 2005-12-11 20:20:05 +0000 | [diff] [blame] | 163 | |
Denis Vlasenko | e35af56 | 2009-01-31 14:22:24 +0000 | [diff] [blame] | 164 | config DEFAULT_MODULES_DIR |
| 165 | string "Default directory containing modules" |
| 166 | default "/lib/modules" |
Lauri Kasanen | f646400 | 2010-06-26 13:41:35 +0300 | [diff] [blame] | 167 | depends on DEPMOD || MODPROBE || MODPROBE_SMALL || MODINFO |
Denis Vlasenko | e35af56 | 2009-01-31 14:22:24 +0000 | [diff] [blame] | 168 | help |
| 169 | Directory that contains kernel modules. |
| 170 | Defaults to "/lib/modules" |
| 171 | |
| 172 | config DEFAULT_DEPMOD_FILE |
| 173 | string "Default name of modules.dep" |
| 174 | default "modules.dep" |
Lauri Kasanen | f646400 | 2010-06-26 13:41:35 +0300 | [diff] [blame] | 175 | depends on DEPMOD || MODPROBE || MODPROBE_SMALL || MODINFO |
Denis Vlasenko | e35af56 | 2009-01-31 14:22:24 +0000 | [diff] [blame] | 176 | help |
| 177 | Filename that contains kernel modules dependencies. |
| 178 | Defaults to "modules.dep" |
| 179 | |
Eric Andersen | c9f20d9 | 2002-12-05 08:41:41 +0000 | [diff] [blame] | 180 | endmenu |