所有架构上的特性状态

子系统:core

特性

Kconfig / 描述

各架构状态

cBPF-JIT

HAVE_CBPF_JIT

架构支持 cBPF JIT 优化

  • 正常: mips, powerpc sparc

  • 待办: alpha, arc, arm arm64, csky, hexagon loongarch, m68k, microblaze nios2, openrisc, parisc riscv, s390, sh, um, x86 xtensa

eBPF-JIT

HAVE_EBPF_JIT

架构支持 eBPF JIT 优化

  • 正常: arc, arm, arm64 loongarch, mips, parisc powerpc, riscv, s390, sparc x86

  • 待办: alpha, csky hexagon, m68k, microblaze nios2, openrisc, sh, um xtensa

generic-idle-thread

GENERIC_SMP_IDLE_THREAD

架构使用通用的 SMP 空闲线程设施

  • 正常: alpha, arc, arm arm64, csky, hexagon loongarch, mips, openrisc parisc, powerpc, riscv s390, sh, sparc, um, x86 xtensa

  • 待办: m68k, microblaze nios2

jump-labels

HAVE_ARCH_JUMP_LABEL

架构支持实时打补丁的高效分支

  • 正常: arc, arm, arm64 csky, loongarch, mips openrisc, parisc, powerpc riscv, s390, sparc, x86 xtensa

  • 待办: alpha, hexagon m68k, microblaze, nios2, sh um

mseal-system-mappings

ARCH_SUPPORTS_MSEAL_SYSTEM_MAPPINGS

架构支持 mseal 系统映射

  • 正常: arm64, loongarch riscv, s390, x86

  • 待办: alpha, mips parisc, powerpc, sparc, um

  • 不适用: arc, arm, csky hexagon, m68k, microblaze nios2, openrisc, sh, xtensa

thread-info-in-task

THREAD_INFO_IN_TASK

架构利用核心内核设施将 thread_info 嵌入到 task_struct 中

  • 正常: arm, arm64 loongarch, parisc, powerpc riscv, s390, um, x86

  • 待办: alpha, arc, csky hexagon, m68k, microblaze mips, nios2, openrisc, sh sparc, xtensa

tracehook

HAVE_ARCH_TRACEHOOK

架构支持 tracehook (ptrace) 寄存器处理 API

  • 正常: arc, arm, arm64 csky, hexagon, loongarch mips, nios2, openrisc parisc, powerpc, riscv s390, sh, sparc, um, x86 xtensa

  • 待办: alpha, m68k microblaze

子系统:debug

特性

Kconfig / 描述

各架构状态

debug-vm-pgtable

ARCH_HAS_DEBUG_VM_PGTABLE

架构支持用于语义合规性的 pgtable 测试

  • 正常: arc, arm64 loongarch, parisc, powerpc riscv, s390, x86, xtensa

  • 待办: alpha, arm, csky hexagon, m68k, microblaze mips, nios2, openrisc, sh sparc, um

gcov-profile-all

ARCH_HAS_GCOV_PROFILE_ALL

架构支持全内核 GCOV 代码覆盖率分析

  • 正常: arm, arm64, csky microblaze, mips, powerpc riscv, s390, sh, um, x86 xtensa

  • 待办: alpha, arc hexagon, loongarch, m68k nios2, openrisc, parisc sparc

KASAN

HAVE_ARCH_KASAN

架构支持 KASAN 运行时内存检查器

  • 正常: arm, arm64 loongarch, powerpc, riscv s390, um, x86, xtensa

  • 待办: alpha, arc, csky hexagon, m68k, microblaze mips, nios2, openrisc parisc, sh, sparc

kcov

ARCH_HAS_KCOV

架构支持用于覆盖率引导模糊测试的 kcov

  • 正常: arm, arm64 loongarch, mips, powerpc riscv, s390, um, x86 xtensa

  • 待办: alpha, arc, csky hexagon, m68k, microblaze nios2, openrisc, parisc, sh sparc

kgdb

HAVE_ARCH_KGDB

架构支持 kGDB 内核调试器

  • 正常: arc, arm, arm64 hexagon, loongarch microblaze, mips, nios2 parisc, powerpc, riscv, sh sparc, x86

  • 待办: alpha, csky, m68k openrisc, s390, um, xtensa

kmemleak

HAVE_DEBUG_KMEMLEAK

架构支持内核内存泄漏检测器

  • 正常: arc, arm, arm64 csky, loongarch, microblaze mips, powerpc, riscv, s390 sh, sparc, um, x86, xtensa

  • 待办: alpha, hexagon m68k, nios2, openrisc parisc

kprobes

HAVE_KPROBES

架构支持实时打补丁的内核探测

  • 正常: arc, arm, arm64 csky, loongarch, mips parisc, powerpc, riscv s390, sh, sparc, x86

  • 待办: alpha, hexagon m68k, microblaze, nios2 openrisc, um, xtensa

kprobes-on-ftrace

HAVE_KPROBES_ON_FTRACE

架构支持组合的 kprobes 和 ftrace 实时补丁

  • 正常: csky, loongarch parisc, powerpc, s390, x86

  • 待办: alpha, arc, arm arm64, hexagon, m68k microblaze, mips, nios2 openrisc, riscv, sh, sparc um, xtensa

kretprobes

HAVE_KRETPROBES

架构支持内核函数返回探测

  • 正常: arc, arm, arm64 csky, loongarch, mips parisc, powerpc, riscv s390, sh, sparc, x86

  • 待办: alpha, hexagon m68k, microblaze, nios2 openrisc, um, xtensa

optprobes

HAVE_OPTPROBES

架构支持实时打补丁的优化探测

  • 正常: arm, powerpc, x86

  • 待办: alpha, arc, arm64 csky, hexagon, loongarch m68k, microblaze, mips nios2, openrisc, parisc riscv, s390, sh, sparc, um xtensa

stackprotector

HAVE_STACKPROTECTOR

架构支持编译器驱动的栈溢出保护

  • 正常: arm, arm64, csky loongarch, mips, powerpc riscv, s390, sh, x86 xtensa

  • 待办: alpha, arc hexagon, m68k, microblaze nios2, openrisc, parisc sparc, um

uprobes

ARCH_SUPPORTS_UPROBES

架构支持实时打补丁的用户探测

  • 正常: arm, arm64, csky loongarch, mips, powerpc riscv, s390, sparc, x86

  • 待办: alpha, arc hexagon, m68k, microblaze nios2, openrisc, parisc, sh um, xtensa

user-ret-profiler

HAVE_USER_RETURN_NOTIFIER

架构支持从系统调用分析器返回的用户空间

  • 正常: x86

  • 待办: alpha, arc, arm arm64, csky, hexagon loongarch, m68k, microblaze mips, nios2, openrisc parisc, powerpc, riscv s390, sh, sparc, um, xtensa

子系统:io

特性

Kconfig / 描述

各架构状态

dma-contiguous

HAVE_DMA_CONTIGUOUS

架构支持 DMA CMA(连续内存分配器)

  • 正常: arm, arm64, csky loongarch, microblaze, mips riscv, s390, x86, xtensa

  • 待办: alpha, arc hexagon, m68k, nios2 openrisc, parisc, powerpc sh, sparc, um

子系统:locking

特性

Kconfig / 描述

各架构状态

cmpxchg-local

HAVE_CMPXCHG_LOCAL

架构支持 this_cpu_cmpxchg() API

  • 正常: arm64, s390, x86

  • 待办: alpha, arc, arm csky, hexagon, loongarch m68k, microblaze, mips nios2, openrisc, parisc powerpc, riscv, sh, sparc um, xtensa

lockdep

LOCKDEP_SUPPORT

架构支持运行时锁正确性调试设施

  • 正常: arc, arm, arm64 csky, hexagon, loongarch microblaze, mips, openrisc parisc, powerpc, riscv s390, sh, sparc, um, x86 xtensa

  • 待办: alpha, m68k nios2

queued-rwlocks

ARCH_USE_QUEUED_RWLOCKS

架构支持队列读写锁

  • 正常: arm64, csky loongarch, mips, openrisc powerpc, riscv, sparc, x86 xtensa

  • 待办: alpha, arc, arm hexagon, m68k, microblaze nios2, parisc, s390, sh, um

queued-spinlocks

ARCH_USE_QUEUED_SPINLOCKS

架构支持队列自旋锁

  • 正常: arm64, csky loongarch, mips, openrisc powerpc, riscv, sparc, x86 xtensa

  • 待办: alpha, arc, arm hexagon, m68k, microblaze nios2, parisc, s390, sh, um

子系统:perf

特性

Kconfig / 描述

各架构状态

kprobes-event

HAVE_REGS_AND_STACK_ACCESS_API

架构支持带有 perf 事件的 kprobes

  • 正常: arc, arm, arm64 csky, hexagon, loongarch mips, openrisc, parisc powerpc, riscv, s390, sh sparc, x86

  • 待办: alpha, m68k microblaze, nios2, um xtensa

perf-regs

HAVE_PERF_REGS

架构支持 perf 事件寄存器访问

  • 正常: arm, arm64, csky loongarch, mips, parisc powerpc, riscv, s390, x86

  • 待办: alpha, arc hexagon, m68k, microblaze nios2, openrisc, sh, sparc um, xtensa

perf-stackdump

HAVE_PERF_USER_STACK_DUMP

架构支持 perf 事件栈转储

  • 正常: arm, arm64, csky loongarch, mips, parisc powerpc, riscv, s390, x86

  • 待办: alpha, arc hexagon, m68k, microblaze nios2, openrisc, sh, sparc um, xtensa

子系统:sched

特性

Kconfig / 描述

各架构状态

membarrier-sync-core

ARCH_HAS_MEMBARRIER_SYNC_CORE

架构支持核心序列化 membarrier

  • 正常: arm, arm64, powerpc riscv, s390, x86

  • 待办: alpha, arc, csky hexagon, loongarch, m68k microblaze, mips, nios2 openrisc, parisc, sh, sparc um, xtensa

numa-balancing

ARCH_SUPPORTS_NUMA_BALANCING

架构支持 NUMA 平衡

  • 正常: arm64, loongarch powerpc, riscv, s390, x86

  • 待办: alpha, mips sparc

  • 不兼容: arc arm, csky, hexagon, m68k microblaze, nios2, openrisc parisc, sh, um, xtensa

子系统:seccomp

特性

Kconfig / 描述

各架构状态

seccomp-filter

HAVE_ARCH_SECCOMP_FILTER

架构支持 seccomp 过滤器

  • 正常: alpha, arm, arm64 csky, loongarch, m68k, mips parisc, powerpc, riscv s390, sh, um, x86, xtensa

  • 待办: arc, hexagon microblaze, nios2, openrisc sparc

子系统:time

特性

Kconfig / 描述

各架构状态

arch-tick-broadcast

ARCH_HAS_TICK_BROADCAST

架构提供 tick_broadcast()

  • 正常: arm, arm64 loongarch, mips, powerpc riscv, sh

  • 待办: alpha, arc, csky hexagon, m68k, microblaze nios2, openrisc, parisc s390, sparc, um, x86 xtensa

clockevents

!LEGACY_TIMER_TICK

架构支持通用时钟事件

  • 正常: alpha, arc, arm64 csky, hexagon, loongarch microblaze, mips, nios2 openrisc, parisc, powerpc riscv, s390, sh, sparc, um x86, xtensa

  • 待办: arm, m68k

irq-time-acct

HAVE_IRQ_TIME_ACCOUNTING

架构支持精确的 IRQ 时间记账

  • 正常: arm, arm64 loongarch, mips, powerpc riscv, x86, xtensa

  • 待办: arc, csky hexagon, m68k, microblaze nios2, openrisc, sh, um

  • 不兼容: alpha parisc, s390, sparc

user-context-tracking

HAVE_CONTEXT_TRACKING_USER

架构支持针对 NO_HZ_FULL 的用户上下文跟踪

  • 正常: arm, arm64, csky loongarch, mips, powerpc riscv, sparc, x86, xtensa

  • 待办: alpha, arc hexagon, m68k, microblaze nios2, openrisc, parisc s390, sh, um

virt-cpuacct

HAVE_VIRT_CPU_ACCOUNTING

架构支持精确的虚拟 CPU 时间记账

  • 正常: alpha, arm, arm64 csky, loongarch, mips parisc, powerpc, s390 sparc, x86, xtensa

  • 待办: arc, hexagon m68k, microblaze, nios2 openrisc, riscv, sh, um

子系统:vm

特性

Kconfig / 描述

各架构状态

batch-unmap-tlb-flush

ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH

架构支持推迟 TLB 刷新,直到取消映射多个页面

  • 正常: arm64, riscv, x86

  • 待办: alpha, arc, arm csky, hexagon, loongarch mips, parisc, powerpc, s390 sh, sparc, xtensa

  • 不兼容: m68k microblaze, nios2, openrisc um

ELF-ASLR

ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT

架构随机化 ELF 二进制文件的栈、堆和二进制镜像

  • 正常: arm, arm64, csky loongarch, mips, parisc powerpc, riscv, s390, x86

  • 待办: alpha, arc hexagon, m68k, microblaze nios2, openrisc, sh, sparc um, xtensa

huge-vmap

HAVE_ARCH_HUGE_VMAP

架构支持 arch_vmap_pud_supported()arch_vmap_pmd_supported() VM API

  • 正常: arm64, powerpc riscv, x86

  • 待办: alpha, arc, arm csky, hexagon, loongarch m68k, microblaze, mips nios2, openrisc, parisc s390, sh, sparc, um, xtensa

ioremap_prot

HAVE_IOREMAP_PROT

架构拥有 ioremap_prot()

  • 正常: arc, arm64 loongarch, mips, powerpc riscv, s390, sh, x86

  • 待办: alpha, arm, csky hexagon, m68k, microblaze nios2, openrisc, parisc sparc, um, xtensa

pte_special

ARCH_HAS_PTE_SPECIAL

架构支持 pte_special()/pte_mkspecial() VM API

  • 正常: arc, arm, arm64 loongarch, mips, parisc powerpc, riscv, s390, sh sparc, x86

  • 待办: alpha, csky hexagon, m68k, microblaze nios2, openrisc, um, xtensa

THP

HAVE_ARCH_TRANSPARENT_HUGEPAGE

架构支持透明大页

  • 正常: arc, arm, arm64 loongarch, mips, powerpc riscv, s390, sparc, x86

  • 待办: alpha, parisc

  • 不兼容: csky hexagon, m68k, microblaze nios2, openrisc, sh, um xtensa