~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/fs/Kconfig.binfmt

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /fs/Kconfig.binfmt (Version linux-6.11-rc3) and /fs/Kconfig.binfmt (Version linux-6.0.19)


  1 # SPDX-License-Identifier: GPL-2.0-only             1 # SPDX-License-Identifier: GPL-2.0-only
  2                                                     2 
  3 menu "Executable file formats"                      3 menu "Executable file formats"
  4                                                     4 
  5 config BINFMT_ELF                                   5 config BINFMT_ELF
  6         bool "Kernel support for ELF binaries"      6         bool "Kernel support for ELF binaries"
  7         depends on MMU                              7         depends on MMU
  8         select ELFCORE                              8         select ELFCORE
  9         default y                                   9         default y
 10         help                                       10         help
 11           ELF (Executable and Linkable Format)     11           ELF (Executable and Linkable Format) is a format for libraries and
 12           executables used across different ar     12           executables used across different architectures and operating
 13           systems. Saying Y here will enable y     13           systems. Saying Y here will enable your kernel to run ELF binaries
 14           and enlarge it by about 13 KB. ELF s     14           and enlarge it by about 13 KB. ELF support under Linux has now all
 15           but replaced the traditional Linux a     15           but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC)
 16           because it is portable (this does *n     16           because it is portable (this does *not* mean that you will be able
 17           to run executables from different ar     17           to run executables from different architectures or operating systems
 18           however) and makes building run-time     18           however) and makes building run-time libraries very easy. Many new
 19           executables are distributed solely i     19           executables are distributed solely in ELF format. You definitely
 20           want to say Y here.                      20           want to say Y here.
 21                                                    21 
 22           Information about ELF is contained i     22           Information about ELF is contained in the ELF HOWTO available from
 23           <http://www.tldp.org/docs.html#howto     23           <http://www.tldp.org/docs.html#howto>.
 24                                                    24 
 25           If you find that after upgrading fro     25           If you find that after upgrading from Linux kernel 1.2 and saying Y
 26           here, you still can't run any ELF bi     26           here, you still can't run any ELF binaries (they just crash), then
 27           you'll have to install the newest EL     27           you'll have to install the newest ELF runtime libraries, including
 28           ld.so (check the file <file:Document     28           ld.so (check the file <file:Documentation/Changes> for location and
 29           latest version).                         29           latest version).
 30                                                    30 
 31 config BINFMT_ELF_KUNIT_TEST                       31 config BINFMT_ELF_KUNIT_TEST
 32         bool "Build KUnit tests for ELF binary     32         bool "Build KUnit tests for ELF binary support" if !KUNIT_ALL_TESTS
 33         depends on KUNIT=y && BINFMT_ELF=y         33         depends on KUNIT=y && BINFMT_ELF=y
 34         default KUNIT_ALL_TESTS                    34         default KUNIT_ALL_TESTS
 35         help                                       35         help
 36           This builds the ELF loader KUnit tes     36           This builds the ELF loader KUnit tests, which try to gather
 37           prior bug fixes into a regression te     37           prior bug fixes into a regression test collection. This is really
 38           only needed for debugging. Note that     38           only needed for debugging. Note that with CONFIG_COMPAT=y, the
 39           compat_binfmt_elf KUnit test is also     39           compat_binfmt_elf KUnit test is also created.
 40                                                    40 
 41 config COMPAT_BINFMT_ELF                           41 config COMPAT_BINFMT_ELF
 42         def_bool y                                 42         def_bool y
 43         depends on COMPAT && BINFMT_ELF            43         depends on COMPAT && BINFMT_ELF
 44         select ELFCORE                             44         select ELFCORE
 45                                                    45 
 46 config ARCH_BINFMT_ELF_STATE                       46 config ARCH_BINFMT_ELF_STATE
 47         bool                                       47         bool
 48                                                    48 
 49 config ARCH_BINFMT_ELF_EXTRA_PHDRS                 49 config ARCH_BINFMT_ELF_EXTRA_PHDRS
 50         bool                                       50         bool
 51                                                    51 
 52 config ARCH_HAVE_ELF_PROT                          52 config ARCH_HAVE_ELF_PROT
 53         bool                                       53         bool
 54                                                    54 
 55 config ARCH_USE_GNU_PROPERTY                       55 config ARCH_USE_GNU_PROPERTY
 56         bool                                       56         bool
 57                                                    57 
 58 config BINFMT_ELF_FDPIC                            58 config BINFMT_ELF_FDPIC
 59         bool "Kernel support for FDPIC ELF bin     59         bool "Kernel support for FDPIC ELF binaries"
 60         default y if !BINFMT_ELF                   60         default y if !BINFMT_ELF
 61         depends on ARM || ((M68K || RISCV || S !!  61         depends on ARM || ((M68K || SUPERH) && !MMU)
 62         select ELFCORE                             62         select ELFCORE
 63         help                                       63         help
 64           ELF FDPIC binaries are based on ELF,     64           ELF FDPIC binaries are based on ELF, but allow the individual load
 65           segments of a binary to be located i     65           segments of a binary to be located in memory independently of each
 66           other. This makes this format ideal      66           other. This makes this format ideal for use in environments where no
 67           MMU is available as it still permits     67           MMU is available as it still permits text segments to be shared,
 68           even if data segments are not.           68           even if data segments are not.
 69                                                    69 
 70           It is also possible to run FDPIC ELF     70           It is also possible to run FDPIC ELF binaries on MMU linux also.
 71                                                    71 
 72 config ELFCORE                                     72 config ELFCORE
 73         bool                                       73         bool
 74         help                                       74         help
 75           This option enables kernel/elfcore.o     75           This option enables kernel/elfcore.o.
 76                                                    76 
 77 config CORE_DUMP_DEFAULT_ELF_HEADERS               77 config CORE_DUMP_DEFAULT_ELF_HEADERS
 78         bool "Write ELF core dumps with partia     78         bool "Write ELF core dumps with partial segments"
 79         default y                                  79         default y
 80         depends on BINFMT_ELF && ELF_CORE          80         depends on BINFMT_ELF && ELF_CORE
 81         help                                       81         help
 82           ELF core dump files describe each me     82           ELF core dump files describe each memory mapping of the crashed
 83           process, and can contain or omit the     83           process, and can contain or omit the memory contents of each one.
 84           The contents of an unmodified text m     84           The contents of an unmodified text mapping are omitted by default.
 85                                                    85 
 86           For an unmodified text mapping of an     86           For an unmodified text mapping of an ELF object, including just
 87           the first page of the file in a core     87           the first page of the file in a core dump makes it possible to
 88           identify the build ID bits in the fi     88           identify the build ID bits in the file, without paying the i/o
 89           cost and disk space to dump all the      89           cost and disk space to dump all the text.  However, versions of
 90           GDB before 6.7 are confused by ELF c     90           GDB before 6.7 are confused by ELF core dump files in this format.
 91                                                    91 
 92           The core dump behavior can be contro     92           The core dump behavior can be controlled per process using
 93           the /proc/PID/coredump_filter pseudo     93           the /proc/PID/coredump_filter pseudo-file; this setting is
 94           inherited.  See Documentation/filesy     94           inherited.  See Documentation/filesystems/proc.rst for details.
 95                                                    95 
 96           This config option changes the defau     96           This config option changes the default setting of coredump_filter
 97           seen at boot time.  If unsure, say Y     97           seen at boot time.  If unsure, say Y.
 98                                                    98 
 99 config BINFMT_SCRIPT                               99 config BINFMT_SCRIPT
100         tristate "Kernel support for scripts s    100         tristate "Kernel support for scripts starting with #!"
101         default y                                 101         default y
102         help                                      102         help
103           Say Y here if you want to execute in    103           Say Y here if you want to execute interpreted scripts starting with
104           #! followed by the path to an interp    104           #! followed by the path to an interpreter.
105                                                   105 
106           You can build this support as a modu    106           You can build this support as a module; however, until that module
107           gets loaded, you cannot run scripts.    107           gets loaded, you cannot run scripts.  Thus, if you want to load this
108           module from an initramfs, the portio    108           module from an initramfs, the portion of the initramfs before loading
109           this module must consist of compiled    109           this module must consist of compiled binaries only.
110                                                   110 
111           Most systems will not boot if you sa    111           Most systems will not boot if you say M or N here.  If unsure, say Y.
112                                                   112 
113 config ARCH_HAS_BINFMT_FLAT                       113 config ARCH_HAS_BINFMT_FLAT
114         bool                                      114         bool
115                                                   115 
116 config BINFMT_FLAT                                116 config BINFMT_FLAT
117         bool "Kernel support for flat binaries    117         bool "Kernel support for flat binaries"
118         depends on ARCH_HAS_BINFMT_FLAT           118         depends on ARCH_HAS_BINFMT_FLAT
119         help                                      119         help
120           Support uClinux FLAT format binaries    120           Support uClinux FLAT format binaries.
121                                                   121 
122 config BINFMT_FLAT_ARGVP_ENVP_ON_STACK            122 config BINFMT_FLAT_ARGVP_ENVP_ON_STACK
123         bool                                      123         bool
124                                                   124 
125 config BINFMT_FLAT_OLD_ALWAYS_RAM                 125 config BINFMT_FLAT_OLD_ALWAYS_RAM
126         bool                                      126         bool
127                                                   127 
128 config BINFMT_FLAT_NO_DATA_START_OFFSET           128 config BINFMT_FLAT_NO_DATA_START_OFFSET
129         bool                                      129         bool
130                                                   130 
131 config BINFMT_FLAT_OLD                            131 config BINFMT_FLAT_OLD
132         bool "Enable support for very old lega    132         bool "Enable support for very old legacy flat binaries"
133         depends on BINFMT_FLAT                    133         depends on BINFMT_FLAT
134         help                                      134         help
135           Support decade old uClinux FLAT form    135           Support decade old uClinux FLAT format binaries.  Unless you know
136           you have some of those say N here.      136           you have some of those say N here.
137                                                   137 
138 config BINFMT_ZFLAT                               138 config BINFMT_ZFLAT
139         bool "Enable ZFLAT support"               139         bool "Enable ZFLAT support"
140         depends on BINFMT_FLAT                    140         depends on BINFMT_FLAT
141         select ZLIB_INFLATE                       141         select ZLIB_INFLATE
142         help                                      142         help
143           Support FLAT format compressed binar    143           Support FLAT format compressed binaries
144                                                   144 
                                                   >> 145 config HAVE_AOUT
                                                   >> 146        def_bool n
                                                   >> 147 
                                                   >> 148 config BINFMT_AOUT
                                                   >> 149         tristate "Kernel support for a.out and ECOFF binaries"
                                                   >> 150         depends on HAVE_AOUT
                                                   >> 151         help
                                                   >> 152           A.out (Assembler.OUTput) is a set of formats for libraries and
                                                   >> 153           executables used in the earliest versions of UNIX.  Linux used
                                                   >> 154           the a.out formats QMAGIC and ZMAGIC until they were replaced
                                                   >> 155           with the ELF format.
                                                   >> 156 
                                                   >> 157           The conversion to ELF started in 1995.  This option is primarily
                                                   >> 158           provided for historical interest and for the benefit of those
                                                   >> 159           who need to run binaries from that era.
                                                   >> 160 
                                                   >> 161           Most people should answer N here.  If you think you may have
                                                   >> 162           occasional use for this format, enable module support above
                                                   >> 163           and answer M here to compile this support as a module called
                                                   >> 164           binfmt_aout.
                                                   >> 165 
                                                   >> 166           If any crucial components of your system (such as /sbin/init
                                                   >> 167           or /lib/ld.so) are still in a.out format, you will have to
                                                   >> 168           say Y here.
                                                   >> 169 
                                                   >> 170 config OSF4_COMPAT
                                                   >> 171         bool "OSF/1 v4 readv/writev compatibility"
                                                   >> 172         depends on ALPHA && BINFMT_AOUT
                                                   >> 173         help
                                                   >> 174           Say Y if you are using OSF/1 binaries (like Netscape and Acrobat)
                                                   >> 175           with v4 shared libraries freely available from Compaq. If you're
                                                   >> 176           going to use shared libraries from Tru64 version 5.0 or later, say N.
                                                   >> 177 
145 config BINFMT_MISC                                178 config BINFMT_MISC
146         tristate "Kernel support for MISC bina    179         tristate "Kernel support for MISC binaries"
147         help                                      180         help
148           If you say Y here, it will be possib    181           If you say Y here, it will be possible to plug wrapper-driven binary
149           formats into the kernel. You will li    182           formats into the kernel. You will like this especially when you use
150           programs that need an interpreter to    183           programs that need an interpreter to run like Java, Python, .NET or
151           Emacs-Lisp. It's also useful if you     184           Emacs-Lisp. It's also useful if you often run DOS executables under
152           the Linux DOS emulator DOSEMU (read     185           the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from
153           <http://www.tldp.org/docs.html#howto    186           <http://www.tldp.org/docs.html#howto>). Once you have
154           registered such a binary class with     187           registered such a binary class with the kernel, you can start one of
155           those programs simply by typing in i    188           those programs simply by typing in its name at a shell prompt; Linux
156           will automatically feed it to the co    189           will automatically feed it to the correct interpreter.
157                                                   190 
158           You can do other nice things, too. R    191           You can do other nice things, too. Read the file
159           <file:Documentation/admin-guide/binf    192           <file:Documentation/admin-guide/binfmt-misc.rst> to learn how to use this
160           feature, <file:Documentation/admin-g    193           feature, <file:Documentation/admin-guide/java.rst> for information about how
161           to include Java support. and <file:D    194           to include Java support. and <file:Documentation/admin-guide/mono.rst> for
162           information about how to include Mon    195           information about how to include Mono-based .NET support.
163                                                   196 
164           To use binfmt_misc, you will need to    197           To use binfmt_misc, you will need to mount it:
165                 mount binfmt_misc -t binfmt_mi    198                 mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc
166                                                   199 
167           You may say M here for module suppor    200           You may say M here for module support and later load the module when
168           you have use for it; the module is c    201           you have use for it; the module is called binfmt_misc. If you
169           don't know what to answer at this po    202           don't know what to answer at this point, say Y.
170                                                   203 
171 config COREDUMP                                   204 config COREDUMP
172         bool "Enable core dump support" if EXP    205         bool "Enable core dump support" if EXPERT
173         default y                                 206         default y
174         help                                      207         help
175           This option enables support for perf    208           This option enables support for performing core dumps. You almost
176           certainly want to say Y here. Not ne    209           certainly want to say Y here. Not necessary on systems that never
177           need debugging or only ever run flaw    210           need debugging or only ever run flawless code.
178                                                << 
179 config EXEC_KUNIT_TEST                         << 
180         bool "Build execve tests" if !KUNIT_AL << 
181         depends on KUNIT=y                     << 
182         default KUNIT_ALL_TESTS                << 
183         help                                   << 
184           This builds the exec KUnit tests, wh << 
185           of various aspects of the exec inter << 
186                                                   211 
187 endmenu                                           212 endmenu
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php