Lines Matching +full:hall +full:- +full:enable
1 # SPDX-License-Identifier: GPL-2.0
12 menu "General architecture-dependent options"
77 for kernel debugging, non-intrusive instrumentation and testing.
86 makes certain almost-always-true or almost-always-false branch
89 Certain performance-sensitive kernel code, such as trace points,
103 ( On 32-bit x86, the necessary options added to the compiler
110 Boot time self-test of the branch patching code.
116 Boot time self-test of the call patching code.
136 Uprobes is the user-space counterpart to kprobes: they
137 enable instrumentation applications (such as 'perf probe')
138 to establish unintrusive probes in user-space binaries and
140 are hit by user-space applications.
142 ( These probes come in the form of single-byte breakpoints,
162 See Documentation/core-api/unaligned-memory-access.rst for more
169 for handling byte-swapping. Using these, instead of the old
174 with a nearby load or store and use load-and-swap or
175 store-and-swap instructions if the architecture has them. It
177 hand-coded assembler in <asm/swab.h>. But just in case it
180 Any architecture with load-and-swap or store-and-swap
192 Provide a kernel-internal notification when a cpu is about to
220 # arch_has_single_step() if there is hardware single-step support
221 # arch_has_block_step() if there is hardware block-step support
222 # asm/syscall.h supplying asm-generic/syscall.h interface
272 # to undo an in-place page table remap for uncached access.
308 All new 32-bit architectures should have 64-bit off_t type on
311 still support 32-bit off_t. This option is enabled for all such
318 <asm/asm-prototypes.h> to support the module versioning for symbols
327 For example the kprobes-based event tracer needs this API.
372 The arch chooses to use the generic perf-NMI-based hardlockup
394 bit-mapping of each registers and a unique architecture id.
431 shootdowns should enable this.
468 and compat syscalls if the asm-generic/seccomp.h defaults need adjustment:
469 - __NR_seccomp_read_32
470 - __NR_seccomp_write_32
471 - __NR_seccomp_exit_32
472 - __NR_seccomp_sigreturn_32
479 - all the requirements for HAVE_ARCH_SECCOMP
480 - syscall_get_arch()
481 - syscall_get_arguments()
482 - syscall_rollback()
483 - syscall_set_return_value()
484 - SIGSYS siginfo_t support
485 - secure_computing is called from a ptrace_event()-safe context
486 - secure_computing return value is checked and a return value of -1
488 - seccomp syscall wired up
491 prompt "Enable seccomp to safely execute untrusted bytecode"
511 Enable tasks to build secure computing environments defined
513 task-defined system call filtering polices.
515 See Documentation/userspace-api/seccomp_filter.rst for details.
528 - it has implemented a stack canary (e.g. __stack_chk_guard)
533 depends on $(cc-option,-fstack-protector)
536 This option turns on the "stack-protector" GCC feature. This
544 Functions will have the stack-protector canary logic added if they
545 have an 8-byte or larger character array on the stack.
548 gcc with the feature backported ("-fstack-protector").
557 depends on $(cc-option,-fstack-protector-strong)
560 Functions will have the stack-protector canary logic added in any
563 - local variable's address used as part of the right hand side of an
565 - local variable is an array (or union containing an array),
567 - uses register local variables
570 gcc with the feature backported ("-fstack-protector-strong").
615 Syscalls need to be wrapped inside user_exit()-user_enter(), either
637 With VIRT_CPU_ACCOUNTING_GEN, cputime_t becomes 64-bit.
640 cputime_t. For example, reading/writing 64-bit cputime_t on
641 some 32-bit arches may require multiple accesses, so proper
675 just need a simple module loader without arch specific data - those
676 should not enable this.
709 - arch_mmap_rnd()
710 - arch_randomize_brk()
718 - ARCH_MMAP_RND_BITS_MIN
719 - ARCH_MMAP_RND_BITS_MAX
757 - ARCH_MMAP_RND_COMPAT_BITS_MIN
758 - ARCH_MMAP_RND_COMPAT_BITS_MAX
788 This allows 64bit applications to invoke 32-bit mmap() syscall
789 and vice-versa 32-bit applications to call 64-bit mmap().
793 # address by giving priority to top-down scheme only if the process
797 # - STACK_RND_MASK
807 performs compile-time stack metadata validation.
821 file which provides platform-specific implementations of some
831 # ABI hall of shame
858 Architecture has old sigsuspend(2) syscall, of one-argument variety
863 Even weirder antique ABI - three-argument sigsuspend(2)
869 as OLD_SIGSUSPEND | OLD_SIGSUSPEND3 - alpha has sigsuspend(2),
877 bool "Provide system calls for 32-bit time_t"
881 This is relevant on all 32-bit architectures, and 64-bit architectures
899 - vmalloc space must be large enough to hold many kernel stacks.
900 This may rule out many 32-bit architectures.
902 - Stacks in vmalloc space need to work reliably. For example, if
909 - If the stack overflows into a guard page, something reasonable
915 bool "Use a virtually-mapped stack"
919 Enable this if you want the use virtually-mapped kernel stacks
921 caught immediately rather than causing difficult-to-diagnose
938 bool "Make kernel text and rodata read-only" if ARCH_OPTIONAL_KERNEL_RWX
942 If this is set, kernel text and rodata memory will be made read-only,
943 and non-text memory will be made non-executable. This provides
958 If this is set, module text and rodata memory will be made read-only,
959 and non-text memory will be made non-executable. This provides
962 # select if the architecture provides an asm/dma-direct.h header
971 linux/compiler-*.h in order to override macro definitions that those
977 May be selected by an architecture if it supports place-relative
978 32-bit relocations, both in the toolchain and in the module loader,
991 Enable light-weight counting of various locking related events
1007 well as compatible NM and OBJCOPY utilities (llvm-nm and llvm-objcopy
1035 included, size-asserted, or discarded in the linker scripts. This is
1042 source "scripts/gcc-plugins/Kconfig"