forked from Minki/linux
2142b7f0c6
- Add arm64 Shadow Call Stack support for GCC 12 (Dan Li) - Avoid memset with stack offset randomization under Clang (Marco Elver) - Clean up stackleak plugin to play nice with .noinstr (Kees Cook) - Check stack depth for greater usercopy hardening coverage (Kees Cook) -----BEGIN PGP SIGNATURE----- iQJKBAABCgA0FiEEpcP2jyKd1g9yPm4TiXL039xtwCYFAmI4kXMWHGtlZXNjb29r QGNocm9taXVtLm9yZwAKCRCJcvTf3G3AJhBoD/wJFr0s13Cvsbibuk7PLAPJlQe9 QBMolrrS9+JNoqdIMiILrmthCPnDBkBNrU/YvfkIyGQOO2RGxrtZVzLhyHKCDg6u iIkNG9S5D12ucEdqqLWdZxyBZcQuR6Rf//lGvtx8ps+jYy8fDwRekurJIb3kWl5u qB0O0PFd+RjGgvtm+Fh8h0FiBMxbKfPXI+s7W2rCfcwe+w5Z24YD1eoCHmnQJYcu Mnuk7cHsx2TFms4UqUK1Z/0EBpCKNEEX4s0z/nrfu8dRTPvLqLgbGpcmXTkik9PN BucIxgdRqqYbTyGvhsDhpEUVfmFcQzdPmuMnnnUc8BiXy9EqGqSfjMEzutuf+RS7 0i4LWoDW2LYMUixqDLAMdLpwdC2Ca7hP62kE4vNVqW3jBty+jhPBVO6ddhHO14nd q6m+CQz0SVTIyrLI4N+TNg/EIj2DpBpAhs49QWDOL/ZqP0ewYk8Ef8pXKgJo2jJC aAs+18pdpoVCEs1fztzjuWZT77iTmziYhb2BOMnT4yBcAdifi7eW6l0pYsgfxoJ/ WC/MmTWt08/IHBk09d8GbFdoP8byDUgzmzUUoskJJH2JA7475xM6qhI2J627Lpth baEv3UT8JWBBX+koU2wxhxKgscIvbNjJjpEGNt2YuBBeQ4lrlijsFzQjmu62gZDL LG0XOVV97/1V9uJ2CA== =yaWZ -----END PGP SIGNATURE----- Merge tag 'hardening-v5.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux Pull kernel hardening updates from Kees Cook: - Add arm64 Shadow Call Stack support for GCC 12 (Dan Li) - Avoid memset with stack offset randomization under Clang (Marco Elver) - Clean up stackleak plugin to play nice with .noinstr (Kees Cook) - Check stack depth for greater usercopy hardening coverage (Kees Cook) * tag 'hardening-v5.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux: arm64: Add gcc Shadow Call Stack support m68k: Implement "current_stack_pointer" xtensa: Implement "current_stack_pointer" usercopy: Check valid lifetime via stack depth stack: Constrain and fix stack offset randomization with Clang builds stack: Introduce CONFIG_RANDOMIZE_KSTACK_OFFSET gcc-plugins/stackleak: Ignore .noinstr.text and .entry.text gcc-plugins/stackleak: Exactly match strings instead of prefixes gcc-plugins/stackleak: Provide verbose mode
140 lines
3.0 KiB
Plaintext
140 lines
3.0 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
config M68K
|
|
bool
|
|
default y
|
|
select ARCH_32BIT_OFF_T
|
|
select ARCH_HAS_BINFMT_FLAT
|
|
select ARCH_HAS_CURRENT_STACK_POINTER
|
|
select ARCH_HAS_DMA_PREP_COHERENT if HAS_DMA && MMU && !COLDFIRE
|
|
select ARCH_HAS_SYNC_DMA_FOR_DEVICE if HAS_DMA
|
|
select ARCH_HAVE_NMI_SAFE_CMPXCHG if RMW_INSNS
|
|
select ARCH_MIGHT_HAVE_PC_PARPORT if ISA
|
|
select ARCH_NO_PREEMPT if !COLDFIRE
|
|
select ARCH_USE_MEMTEST if MMU_MOTOROLA
|
|
select ARCH_WANT_IPC_PARSE_VERSION
|
|
select BINFMT_FLAT_ARGVP_ENVP_ON_STACK
|
|
select DMA_DIRECT_REMAP if HAS_DMA && MMU && !COLDFIRE
|
|
select GENERIC_ATOMIC64
|
|
select GENERIC_CPU_DEVICES
|
|
select GENERIC_IOMAP
|
|
select GENERIC_IRQ_SHOW
|
|
select HAVE_ASM_MODVERSIONS
|
|
select HAVE_DEBUG_BUGVERBOSE
|
|
select HAVE_EFFICIENT_UNALIGNED_ACCESS if !CPU_HAS_NO_UNALIGNED
|
|
select HAVE_MOD_ARCH_SPECIFIC
|
|
select HAVE_UID16
|
|
select MMU_GATHER_NO_RANGE if MMU
|
|
select MODULES_USE_ELF_REL
|
|
select MODULES_USE_ELF_RELA
|
|
select NO_DMA if !MMU && !COLDFIRE
|
|
select OLD_SIGACTION
|
|
select OLD_SIGSUSPEND3
|
|
select UACCESS_MEMCPY if !MMU
|
|
select VIRT_TO_BUS
|
|
select ZONE_DMA
|
|
|
|
config CPU_BIG_ENDIAN
|
|
def_bool y
|
|
|
|
config ARCH_HAS_ILOG2_U32
|
|
bool
|
|
|
|
config ARCH_HAS_ILOG2_U64
|
|
bool
|
|
|
|
config GENERIC_HWEIGHT
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_CALIBRATE_DELAY
|
|
bool
|
|
default y
|
|
|
|
config GENERIC_CSUM
|
|
bool
|
|
|
|
config TIME_LOW_RES
|
|
bool
|
|
default y
|
|
|
|
config NO_IOPORT_MAP
|
|
def_bool y
|
|
|
|
config HZ
|
|
int
|
|
default 1000 if CLEOPATRA
|
|
default 100
|
|
|
|
config PGTABLE_LEVELS
|
|
default 2 if SUN3 || COLDFIRE
|
|
default 3
|
|
|
|
config MMU
|
|
bool "MMU-based Paged Memory Management Support"
|
|
default y
|
|
help
|
|
Select if you want MMU-based virtualised addressing space
|
|
support by paged memory management. If unsure, say 'Y'.
|
|
|
|
config MMU_MOTOROLA
|
|
bool
|
|
|
|
config MMU_COLDFIRE
|
|
bool
|
|
|
|
config MMU_SUN3
|
|
bool
|
|
depends on MMU && !MMU_MOTOROLA && !MMU_COLDFIRE
|
|
|
|
config KEXEC
|
|
bool "kexec system call"
|
|
depends on M68KCLASSIC
|
|
select KEXEC_CORE
|
|
help
|
|
kexec is a system call that implements the ability to shutdown your
|
|
current kernel, and to start another kernel. It is like a reboot
|
|
but it is independent of the system firmware. And like a reboot
|
|
you can start any kernel with it, not just Linux.
|
|
|
|
The name comes from the similarity to the exec system call.
|
|
|
|
It is an ongoing process to be certain the hardware in a machine
|
|
is properly shutdown, so do not be surprised if this code does not
|
|
initially work for you. As of this writing the exact hardware
|
|
interface is strongly in flux, so no good recommendation can be
|
|
made.
|
|
|
|
config BOOTINFO_PROC
|
|
bool "Export bootinfo in procfs"
|
|
depends on KEXEC && M68KCLASSIC
|
|
help
|
|
Say Y to export the bootinfo used to boot the kernel in a
|
|
"bootinfo" file in procfs. This is useful with kexec.
|
|
|
|
menu "Platform setup"
|
|
|
|
source "arch/m68k/Kconfig.cpu"
|
|
|
|
source "arch/m68k/Kconfig.machine"
|
|
|
|
source "arch/m68k/Kconfig.bus"
|
|
|
|
endmenu
|
|
|
|
menu "Kernel Features"
|
|
|
|
endmenu
|
|
|
|
if !MMU
|
|
menu "Power management options"
|
|
|
|
config PM
|
|
bool "Power Management support"
|
|
help
|
|
Support processor power management modes
|
|
|
|
endmenu
|
|
endif
|
|
|
|
source "arch/m68k/Kconfig.devices"
|