~ [ 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-5.2.21)


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