diff --git a/.vscode/settings.json b/.vscode/settings.json index d7d57ae..603c0ff 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -846,6 +846,8 @@ "hwmon", "Hybla", "Hygon", + "Hyperaufrufen", + "hypercall", "HYPERV", "Hypervisoren", "hypervisorspezifischen", @@ -1398,6 +1400,7 @@ "Nocona", "nogit", "nohz", + "nommconf", "NOMMU", "nomsi", "noresume", @@ -1927,6 +1930,7 @@ "SPCR", "speedstep", "Speedstream", + "speicherabgebildeter", "speicherbelegte", "Speicherdefragmentierung", "speichereffizienter", diff --git a/config-6.16 b/config-6.16 index be3c872..80f1aac 100644 --- a/config-6.16 +++ b/config-6.16 @@ -58,7 +58,6 @@ CONFIG_DEFAULT_INIT="" CONFIG_DEFAULT_HOSTNAME="orange" CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y -CONFIG_SYSVIPC_COMPAT=y CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y # CONFIG_WATCH_QUEUE is not set @@ -262,12 +261,10 @@ CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y CONFIG_LD_ORPHAN_WARN=y CONFIG_LD_ORPHAN_WARN_LEVEL="warn" CONFIG_SYSCTL=y -CONFIG_HAVE_UID16=y CONFIG_SYSCTL_EXCEPTION_TRACE=y # CONFIG_SYSFS_SYSCALL is not set CONFIG_HAVE_PCSPKR_PLATFORM=y CONFIG_EXPERT=y -CONFIG_UID16=y CONFIG_MULTIUSER=y CONFIG_SGETMASK_SYSCALL=y CONFIG_FHANDLE=y @@ -494,7 +491,6 @@ CONFIG_PHYSICAL_ALIGN=0x200000 CONFIG_RANDOMIZE_MEMORY=y CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa CONFIG_HOTPLUG_CPU=y -# CONFIG_COMPAT_VDSO is not set CONFIG_LEGACY_VSYSCALL_XONLY=y # CONFIG_LEGACY_VSYSCALL_NONE is not set # CONFIG_CMDLINE_BOOL is not set @@ -677,12 +673,11 @@ CONFIG_X86_AMD_PSTATE_UT=m CONFIG_X86_ACPI_CPUFREQ=m CONFIG_X86_POWERNOW_K8=m # CONFIG_X86_SPEEDSTEP_CENTRINO is not set -CONFIG_X86_P4_CLOCKMOD=m +# CONFIG_X86_P4_CLOCKMOD is not set # # shared options # -CONFIG_X86_SPEEDSTEP_LIB=m CONFIG_CPUFREQ_ARCH_CUR_FREQ=y # end of CPU Frequency scaling @@ -711,12 +706,8 @@ CONFIG_ISA_DMA_API=y # # Binary Emulations # -CONFIG_IA32_EMULATION=y -# CONFIG_IA32_EMULATION_DEFAULT_DISABLED is not set -CONFIG_X86_X32_ABI=y -CONFIG_COMPAT_32=y -CONFIG_COMPAT=y -CONFIG_COMPAT_FOR_U64_ALIGNMENT=y +# CONFIG_IA32_EMULATION is not set +# CONFIG_X86_X32_ABI is not set # end of Binary Emulations CONFIG_KVM_COMMON=y @@ -734,7 +725,6 @@ CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y CONFIG_KVM_VFIO=y CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y CONFIG_KVM_GENERIC_PRE_FAULT_MEMORY=y -CONFIG_KVM_COMPAT=y CONFIG_HAVE_KVM_IRQ_BYPASS=m CONFIG_HAVE_KVM_NO_POLL=y CONFIG_KVM_XFER_TO_GUEST_WORK=y @@ -857,8 +847,6 @@ CONFIG_ARCH_HAS_NMI_SAFE_THIS_CPU_OPS=y CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y CONFIG_HAVE_CMPXCHG_LOCAL=y CONFIG_HAVE_CMPXCHG_DOUBLE=y -CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y -CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y CONFIG_HAVE_ARCH_SECCOMP=y CONFIG_HAVE_ARCH_SECCOMP_FILTER=y CONFIG_SECCOMP=y @@ -866,8 +854,7 @@ CONFIG_SECCOMP_FILTER=y # CONFIG_SECCOMP_CACHE_DEBUG is not set CONFIG_HAVE_ARCH_STACKLEAK=y CONFIG_HAVE_STACKPROTECTOR=y -CONFIG_STACKPROTECTOR=y -CONFIG_STACKPROTECTOR_STRONG=y +# CONFIG_STACKPROTECTOR is not set CONFIG_ARCH_SUPPORTS_LTO_CLANG=y CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y CONFIG_LTO_NONE=y @@ -898,9 +885,6 @@ CONFIG_ARCH_HAS_ELF_RANDOMIZE=y CONFIG_HAVE_ARCH_MMAP_RND_BITS=y CONFIG_HAVE_EXIT_THREAD=y CONFIG_ARCH_MMAP_RND_BITS=28 -CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y -CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 -CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y CONFIG_HAVE_PAGE_SIZE_4KB=y CONFIG_PAGE_SIZE_4KB=y CONFIG_PAGE_SIZE_LESS_THAN_64KB=y @@ -914,8 +898,6 @@ CONFIG_HAVE_UACCESS_VALIDATION=y CONFIG_HAVE_STACK_VALIDATION=y CONFIG_HAVE_RELIABLE_STACKTRACE=y CONFIG_ISA_BUS_API=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_COMPAT_OLD_SIGACTION=y CONFIG_COMPAT_32BIT_TIME=y CONFIG_ARCH_SUPPORTS_RT=y CONFIG_HAVE_ARCH_VMAP_STACK=y @@ -970,7 +952,7 @@ CONFIG_MODULE_DEBUGFS=y # CONFIG_MODULE_DEBUG is not set CONFIG_MODULE_FORCE_LOAD=y CONFIG_MODULE_UNLOAD=y -CONFIG_MODULE_FORCE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set CONFIG_MODULE_UNLOAD_TAINT_TRACKING=y # CONFIG_MODVERSIONS is not set CONFIG_MODULE_SRCVERSION_ALL=y @@ -1079,7 +1061,6 @@ CONFIG_FREEZER=y # Executable file formats # CONFIG_BINFMT_ELF=y -CONFIG_COMPAT_BINFMT_ELF=y CONFIG_ELFCORE=y CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y CONFIG_BINFMT_SCRIPT=y @@ -1249,7 +1230,6 @@ CONFIG_DAMON_LRU_SORT=y # end of Memory Management options CONFIG_NET=y -CONFIG_COMPAT_NETLINK_MESSAGES=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y CONFIG_NET_XGRESS=y @@ -1275,7 +1255,6 @@ CONFIG_XFRM=y CONFIG_XFRM_OFFLOAD=y CONFIG_XFRM_ALGO=m CONFIG_XFRM_USER=m -# CONFIG_XFRM_USER_COMPAT is not set CONFIG_XFRM_INTERFACE=m CONFIG_XFRM_SUB_POLICY=y CONFIG_XFRM_MIGRATE=y @@ -1486,7 +1465,6 @@ CONFIG_NF_FLOW_TABLE_INET=m CONFIG_NF_FLOW_TABLE=m CONFIG_NF_FLOW_TABLE_PROCFS=y CONFIG_NETFILTER_XTABLES=m -CONFIG_NETFILTER_XTABLES_COMPAT=y # # Xtables combined modules diff --git a/config-6.16.patch b/config-6.16.patch index 4d3c3c5..946cfc6 100644 --- a/config-6.16.patch +++ b/config-6.16.patch @@ -1,6 +1,6 @@ --- ../config 2025-08-04 13:04:52.053193843 +0200 -+++ .config 2025-08-06 02:42:06.526969888 +0200 -@@ -55,13 +55,13 @@ ++++ .config 2025-08-06 22:40:39.722960685 +0200 +@@ -55,13 +55,12 @@ # CONFIG_KERNEL_LZ4 is not set CONFIG_KERNEL_ZSTD=y CONFIG_DEFAULT_INIT="" @@ -8,7 +8,7 @@ +CONFIG_DEFAULT_HOSTNAME="orange" CONFIG_SYSVIPC=y CONFIG_SYSVIPC_SYSCTL=y - CONFIG_SYSVIPC_COMPAT=y +-CONFIG_SYSVIPC_COMPAT=y CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y -CONFIG_WATCH_QUEUE=y @@ -16,7 +16,7 @@ CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_AUDIT=y CONFIG_HAVE_ARCH_AUDITSYSCALL=y -@@ -84,7 +84,6 @@ +@@ -84,7 +83,6 @@ CONFIG_GENERIC_MSI_IRQ=y CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y CONFIG_GENERIC_IRQ_RESERVATION_MODE=y @@ -24,7 +24,7 @@ CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y # CONFIG_GENERIC_IRQ_DEBUGFS is not set -@@ -113,7 +112,7 @@ +@@ -113,7 +111,7 @@ CONFIG_NO_HZ_FULL=y CONFIG_CONTEXT_TRACKING_USER=y # CONFIG_CONTEXT_TRACKING_USER_FORCE is not set @@ -33,7 +33,7 @@ CONFIG_HIGH_RES_TIMERS=y CONFIG_CLOCKSOURCE_WATCHDOG_MAX_SKEW_US=100 # end of Timers subsystem -@@ -138,11 +137,12 @@ +@@ -138,11 +136,12 @@ CONFIG_ARCH_HAS_PREEMPT_LAZY=y # CONFIG_PREEMPT_NONE is not set # CONFIG_PREEMPT_VOLUNTARY is not set @@ -49,7 +49,7 @@ CONFIG_SCHED_CORE=y CONFIG_SCHED_CLASS_EXT=y -@@ -151,8 +151,7 @@ +@@ -151,8 +150,7 @@ # CONFIG_VIRT_CPU_ACCOUNTING=y CONFIG_VIRT_CPU_ACCOUNTING_GEN=y @@ -59,7 +59,7 @@ CONFIG_BSD_PROCESS_ACCT=y CONFIG_BSD_PROCESS_ACCT_V3=y CONFIG_TASKSTATS=y -@@ -169,47 +168,32 @@ +@@ -169,47 +167,32 @@ # RCU Subsystem # CONFIG_TREE_RCU=y @@ -112,7 +112,7 @@ # end of Scheduler features CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y -@@ -221,8 +205,6 @@ +@@ -221,8 +204,6 @@ CONFIG_GCC_NO_STRINGOP_OVERFLOW=y CONFIG_CC_NO_STRINGOP_OVERFLOW=y CONFIG_ARCH_SUPPORTS_INT128=y @@ -121,7 +121,7 @@ CONFIG_SLAB_OBJ_EXT=y CONFIG_CGROUPS=y CONFIG_PAGE_COUNTER=y -@@ -238,7 +220,6 @@ +@@ -238,7 +219,6 @@ # CONFIG_RT_GROUP_SCHED is not set CONFIG_EXT_GROUP_SCHED=y CONFIG_SCHED_MM_CID=y @@ -129,7 +129,7 @@ CONFIG_CGROUP_PIDS=y CONFIG_CGROUP_RDMA=y CONFIG_CGROUP_DMEM=y -@@ -265,12 +246,12 @@ +@@ -265,12 +245,12 @@ CONFIG_RELAY=y CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE="" @@ -148,16 +148,21 @@ CONFIG_RD_ZSTD=y CONFIG_BOOT_CONFIG=y # CONFIG_BOOT_CONFIG_FORCE is not set -@@ -285,7 +266,7 @@ +@@ -281,12 +261,10 @@ + CONFIG_LD_ORPHAN_WARN=y + CONFIG_LD_ORPHAN_WARN_LEVEL="warn" + CONFIG_SYSCTL=y +-CONFIG_HAVE_UID16=y CONFIG_SYSCTL_EXCEPTION_TRACE=y # CONFIG_SYSFS_SYSCALL is not set CONFIG_HAVE_PCSPKR_PLATFORM=y -# CONFIG_EXPERT is not set +-CONFIG_UID16=y +CONFIG_EXPERT=y - CONFIG_UID16=y CONFIG_MULTIUSER=y CONFIG_SGETMASK_SYSCALL=y -@@ -294,10 +275,10 @@ + CONFIG_FHANDLE=y +@@ -294,10 +272,10 @@ CONFIG_PRINTK=y CONFIG_BUG=y CONFIG_ELF_CORE=y @@ -170,7 +175,7 @@ CONFIG_EPOLL=y CONFIG_SIGNALFD=y CONFIG_TIMERFD=y -@@ -309,10 +290,12 @@ +@@ -309,10 +287,12 @@ CONFIG_MEMBARRIER=y CONFIG_KCMP=y CONFIG_RSEQ=y @@ -184,7 +189,7 @@ CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y CONFIG_ARCH_SUPPORTS_MSEAL_SYSTEM_MAPPINGS=y CONFIG_HAVE_PERF_EVENTS=y -@@ -378,7 +361,6 @@ +@@ -378,7 +358,6 @@ CONFIG_X86_64_SMP=y CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_FIX_EARLYCON_MEM=y @@ -192,7 +197,7 @@ CONFIG_PGTABLE_LEVELS=5 # -@@ -386,46 +368,20 @@ +@@ -386,46 +365,20 @@ # CONFIG_SMP=y CONFIG_X86_X2APIC=y @@ -244,7 +249,7 @@ CONFIG_X86_INTERNODE_CACHE_SHIFT=6 CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_X86_TSC=y -@@ -436,73 +392,60 @@ +@@ -436,73 +389,60 @@ CONFIG_X86_DEBUGCTLMSR=y CONFIG_IA32_FEAT_CTL=y CONFIG_X86_VMX_FEATURE_NAMES=y @@ -340,7 +345,7 @@ CONFIG_MTRR=y CONFIG_MTRR_SANITIZER=y CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 -@@ -511,24 +454,24 @@ +@@ -511,24 +451,24 @@ CONFIG_X86_UMIP=y CONFIG_CC_HAS_IBT=y CONFIG_X86_CET=y @@ -372,7 +377,11 @@ CONFIG_SCHED_HRTICK=y CONFIG_ARCH_SUPPORTS_KEXEC=y CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y -@@ -555,11 +498,10 @@ +@@ -551,15 +491,13 @@ + CONFIG_RANDOMIZE_MEMORY=y + CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa + CONFIG_HOTPLUG_CPU=y +-# CONFIG_COMPAT_VDSO is not set CONFIG_LEGACY_VSYSCALL_XONLY=y # CONFIG_LEGACY_VSYSCALL_NONE is not set # CONFIG_CMDLINE_BOOL is not set @@ -386,7 +395,7 @@ # end of Processor type and features CONFIG_CC_HAS_NAMED_AS=y -@@ -578,12 +520,9 @@ +@@ -578,12 +516,9 @@ CONFIG_MITIGATION_PAGE_TABLE_ISOLATION=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RETHUNK=y @@ -399,7 +408,7 @@ CONFIG_MITIGATION_SLS=y CONFIG_MITIGATION_GDS=y CONFIG_MITIGATION_RFDS=y -@@ -598,7 +537,6 @@ +@@ -598,7 +533,6 @@ CONFIG_MITIGATION_SRBDS=y CONFIG_MITIGATION_SSB=y CONFIG_MITIGATION_ITS=y @@ -407,7 +416,7 @@ CONFIG_ARCH_HAS_ADD_PAGES=y # -@@ -607,6 +545,7 @@ +@@ -607,6 +541,7 @@ CONFIG_ARCH_HIBERNATION_HEADER=y CONFIG_SUSPEND=y CONFIG_SUSPEND_FREEZER=y @@ -415,7 +424,7 @@ CONFIG_HIBERNATE_CALLBACKS=y CONFIG_HIBERNATION=y CONFIG_HIBERNATION_SNAPSHOT_DEV=y -@@ -624,6 +563,7 @@ +@@ -624,6 +559,7 @@ # CONFIG_PM_ADVANCED_DEBUG is not set # CONFIG_PM_TEST_SUSPEND is not set CONFIG_PM_SLEEP_DEBUG=y @@ -423,7 +432,7 @@ CONFIG_PM_TRACE=y CONFIG_PM_TRACE_RTC=y CONFIG_PM_CLK=y -@@ -636,7 +576,6 @@ +@@ -636,7 +572,6 @@ CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y @@ -431,7 +440,7 @@ CONFIG_ACPI_THERMAL_LIB=y # CONFIG_ACPI_DEBUGGER is not set CONFIG_ACPI_SPCR_TABLE=y -@@ -673,11 +612,10 @@ +@@ -673,11 +608,10 @@ CONFIG_ACPI_SBS=m CONFIG_ACPI_HED=y CONFIG_ACPI_BGRT=y @@ -444,7 +453,7 @@ CONFIG_HAVE_ACPI_APEI=y CONFIG_HAVE_ACPI_APEI_NMI=y CONFIG_ACPI_APEI=y -@@ -737,9 +675,7 @@ +@@ -737,16 +671,13 @@ CONFIG_X86_AMD_PSTATE_DEFAULT_MODE=3 CONFIG_X86_AMD_PSTATE_UT=m CONFIG_X86_ACPI_CPUFREQ=m @@ -452,9 +461,17 @@ CONFIG_X86_POWERNOW_K8=m -CONFIG_X86_AMD_FREQ_SENSITIVITY=m # CONFIG_X86_SPEEDSTEP_CENTRINO is not set - CONFIG_X86_P4_CLOCKMOD=m +-CONFIG_X86_P4_CLOCKMOD=m ++# CONFIG_X86_P4_CLOCKMOD is not set -@@ -757,8 +693,6 @@ + # + # shared options + # +-CONFIG_X86_SPEEDSTEP_LIB=m + CONFIG_CPUFREQ_ARCH_CUR_FREQ=y + # end of CPU Frequency scaling + +@@ -757,8 +688,6 @@ CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_IDLE_GOV_MENU=y CONFIG_CPU_IDLE_GOV_TEO=y @@ -463,7 +480,7 @@ # end of CPU Idle CONFIG_INTEL_IDLE=y -@@ -769,11 +703,9 @@ +@@ -769,22 +698,16 @@ # CONFIG_PCI_DIRECT=y CONFIG_PCI_MMCONFIG=y @@ -476,7 +493,28 @@ # end of Bus options (PCI etc.) # -@@ -811,21 +743,17 @@ + # Binary Emulations + # +-CONFIG_IA32_EMULATION=y +-# CONFIG_IA32_EMULATION_DEFAULT_DISABLED is not set +-CONFIG_X86_X32_ABI=y +-CONFIG_COMPAT_32=y +-CONFIG_COMPAT=y +-CONFIG_COMPAT_FOR_U64_ALIGNMENT=y ++# CONFIG_IA32_EMULATION is not set ++# CONFIG_X86_X32_ABI is not set + # end of Binary Emulations + + CONFIG_KVM_COMMON=y +@@ -802,7 +725,6 @@ + CONFIG_KVM_VFIO=y + CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y + CONFIG_KVM_GENERIC_PRE_FAULT_MEMORY=y +-CONFIG_KVM_COMPAT=y + CONFIG_HAVE_KVM_IRQ_BYPASS=m + CONFIG_HAVE_KVM_NO_POLL=y + CONFIG_KVM_XFER_TO_GUEST_WORK=y +@@ -811,21 +733,17 @@ CONFIG_KVM_GENERIC_MMU_NOTIFIER=y CONFIG_KVM_ELIDE_TLB_FLUSH_IF_YOUNG=y CONFIG_KVM_MMU_LOCKLESS_AGING=y @@ -502,7 +540,7 @@ CONFIG_KVM_EXTERNAL_WRITE_TRACKING=y CONFIG_KVM_MAX_NR_VCPUS=1024 CONFIG_X86_REQUIRED_FEATURE_ALWAYS=y -@@ -835,6 +763,8 @@ +@@ -835,6 +753,8 @@ CONFIG_X86_REQUIRED_FEATURE_CPUID=y CONFIG_X86_REQUIRED_FEATURE_FPU=y CONFIG_X86_REQUIRED_FEATURE_PAE=y @@ -511,7 +549,7 @@ CONFIG_X86_REQUIRED_FEATURE_MSR=y CONFIG_X86_REQUIRED_FEATURE_FXSR=y CONFIG_X86_REQUIRED_FEATURE_XMM=y -@@ -844,14 +774,20 @@ +@@ -844,14 +764,20 @@ CONFIG_X86_DISABLED_FEATURE_K6_MTRR=y CONFIG_X86_DISABLED_FEATURE_CYRIX_ARR=y CONFIG_X86_DISABLED_FEATURE_CENTAUR_MCR=y @@ -533,7 +571,45 @@ # # General architecture-dependent options -@@ -996,7 +932,6 @@ +@@ -921,8 +847,6 @@ + CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y + CONFIG_HAVE_CMPXCHG_LOCAL=y + CONFIG_HAVE_CMPXCHG_DOUBLE=y +-CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +-CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y + CONFIG_HAVE_ARCH_SECCOMP=y + CONFIG_HAVE_ARCH_SECCOMP_FILTER=y + CONFIG_SECCOMP=y +@@ -930,8 +854,7 @@ + # CONFIG_SECCOMP_CACHE_DEBUG is not set + CONFIG_HAVE_ARCH_STACKLEAK=y + CONFIG_HAVE_STACKPROTECTOR=y +-CONFIG_STACKPROTECTOR=y +-CONFIG_STACKPROTECTOR_STRONG=y ++# CONFIG_STACKPROTECTOR is not set + CONFIG_ARCH_SUPPORTS_LTO_CLANG=y + CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y + CONFIG_LTO_NONE=y +@@ -962,9 +885,6 @@ + CONFIG_HAVE_ARCH_MMAP_RND_BITS=y + CONFIG_HAVE_EXIT_THREAD=y + CONFIG_ARCH_MMAP_RND_BITS=28 +-CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +-CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 +-CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y + CONFIG_HAVE_PAGE_SIZE_4KB=y + CONFIG_PAGE_SIZE_4KB=y + CONFIG_PAGE_SIZE_LESS_THAN_64KB=y +@@ -978,8 +898,6 @@ + CONFIG_HAVE_STACK_VALIDATION=y + CONFIG_HAVE_RELIABLE_STACKTRACE=y + CONFIG_ISA_BUS_API=y +-CONFIG_OLD_SIGSUSPEND3=y +-CONFIG_COMPAT_OLD_SIGACTION=y + CONFIG_COMPAT_32BIT_TIME=y + CONFIG_ARCH_SUPPORTS_RT=y + CONFIG_HAVE_ARCH_VMAP_STACK=y +@@ -996,7 +914,6 @@ CONFIG_ARCH_USE_MEMREMAP_PROT=y CONFIG_LOCK_EVENT_COUNTS=y CONFIG_ARCH_HAS_MEM_ENCRYPT=y @@ -541,7 +617,7 @@ CONFIG_HAVE_STATIC_CALL=y CONFIG_HAVE_STATIC_CALL_INLINE=y CONFIG_HAVE_PREEMPT_DYNAMIC=y -@@ -1007,7 +942,6 @@ +@@ -1007,7 +924,6 @@ CONFIG_ARCH_HAS_ELFCORE_COMPAT=y CONFIG_ARCH_HAS_PARANOID_L1D_FLUSH=y CONFIG_DYNAMIC_SIGFRAME=y @@ -549,7 +625,24 @@ CONFIG_ARCH_HAS_HW_PTE_YOUNG=y CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG=y CONFIG_ARCH_HAS_KERNEL_FPU_SUPPORT=y -@@ -1179,6 +1113,7 @@ +@@ -1036,7 +952,7 @@ + # CONFIG_MODULE_DEBUG is not set + CONFIG_MODULE_FORCE_LOAD=y + CONFIG_MODULE_UNLOAD=y +-CONFIG_MODULE_FORCE_UNLOAD=y ++# CONFIG_MODULE_FORCE_UNLOAD is not set + CONFIG_MODULE_UNLOAD_TAINT_TRACKING=y + # CONFIG_MODVERSIONS is not set + CONFIG_MODULE_SRCVERSION_ALL=y +@@ -1145,7 +1061,6 @@ + # Executable file formats + # + CONFIG_BINFMT_ELF=y +-CONFIG_COMPAT_BINFMT_ELF=y + CONFIG_ELFCORE=y + CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y + CONFIG_BINFMT_SCRIPT=y +@@ -1179,6 +1094,7 @@ # CONFIG_SLUB=y CONFIG_KVFREE_RCU_BATCHED=y @@ -557,7 +650,7 @@ CONFIG_SLAB_MERGE_DEFAULT=y CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SLAB_FREELIST_HARDENED=y -@@ -1200,7 +1135,6 @@ +@@ -1200,7 +1116,6 @@ CONFIG_ARCH_WANT_HUGETLB_VMEMMAP_PREINIT=y CONFIG_HAVE_GUP_FAST=y CONFIG_MEMBLOCK_KHO_SCRATCH=y @@ -565,7 +658,7 @@ CONFIG_MEMORY_ISOLATION=y CONFIG_EXCLUSIVE_SYSTEM_RAM=y CONFIG_HAVE_BOOTMEM_INFO_NODE=y -@@ -1252,7 +1186,6 @@ +@@ -1252,7 +1167,6 @@ CONFIG_ARCH_SUPPORTS_PUD_PFNMAP=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y @@ -573,7 +666,7 @@ CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_CMA=y CONFIG_CMA_DEBUGFS=y -@@ -1267,6 +1200,7 @@ +@@ -1267,6 +1181,7 @@ CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y CONFIG_ARCH_HAS_PTE_DEVMAP=y @@ -581,7 +674,7 @@ CONFIG_ZONE_DMA=y CONFIG_ZONE_DMA32=y CONFIG_ZONE_DEVICE=y -@@ -1282,7 +1216,6 @@ +@@ -1282,7 +1197,6 @@ # CONFIG_GUP_TEST is not set # CONFIG_DMAPOOL_TEST is not set CONFIG_ARCH_HAS_PTE_SPECIAL=y @@ -589,7 +682,7 @@ CONFIG_MEMFD_CREATE=y CONFIG_SECRETMEM=y CONFIG_ANON_VMA_NAME=y -@@ -1299,8 +1232,6 @@ +@@ -1299,8 +1213,6 @@ CONFIG_LOCK_MM_AND_FIND_VMA=y CONFIG_IOMMU_MM_DATA=y CONFIG_EXECMEM=y @@ -598,7 +691,31 @@ CONFIG_ARCH_HAS_USER_SHADOW_STACK=y CONFIG_ARCH_SUPPORTS_PT_RECLAIM=y CONFIG_PT_RECLAIM=y -@@ -1946,7 +1877,7 @@ +@@ -1318,7 +1230,6 @@ + # end of Memory Management options + + CONFIG_NET=y +-CONFIG_COMPAT_NETLINK_MESSAGES=y + CONFIG_NET_INGRESS=y + CONFIG_NET_EGRESS=y + CONFIG_NET_XGRESS=y +@@ -1344,7 +1255,6 @@ + CONFIG_XFRM_OFFLOAD=y + CONFIG_XFRM_ALGO=m + CONFIG_XFRM_USER=m +-# CONFIG_XFRM_USER_COMPAT is not set + CONFIG_XFRM_INTERFACE=m + CONFIG_XFRM_SUB_POLICY=y + CONFIG_XFRM_MIGRATE=y +@@ -1555,7 +1465,6 @@ + CONFIG_NF_FLOW_TABLE=m + CONFIG_NF_FLOW_TABLE_PROCFS=y + CONFIG_NETFILTER_XTABLES=m +-CONFIG_NETFILTER_XTABLES_COMPAT=y + + # + # Xtables combined modules +@@ -1946,7 +1855,7 @@ CONFIG_NET_SCH_INGRESS=m CONFIG_NET_SCH_PLUG=m CONFIG_NET_SCH_ETS=m @@ -607,7 +724,7 @@ CONFIG_NET_SCH_DEFAULT=y # CONFIG_DEFAULT_FQ is not set # CONFIG_DEFAULT_CODEL is not set -@@ -2027,7 +1958,6 @@ +@@ -2027,7 +1936,6 @@ CONFIG_VMWARE_VMCI_VSOCKETS=m CONFIG_VIRTIO_VSOCKETS=m CONFIG_VIRTIO_VSOCKETS_COMMON=m @@ -615,7 +732,7 @@ CONFIG_NETLINK_DIAG=m CONFIG_MPLS=y CONFIG_NET_MPLS_GSO=m -@@ -2165,7 +2095,7 @@ +@@ -2165,7 +2073,7 @@ # CONFIG_AF_RXRPC_INJECT_RX_DELAY is not set CONFIG_AF_RXRPC_DEBUG=y CONFIG_RXKAD=y @@ -624,7 +741,7 @@ # CONFIG_RXPERF is not set CONFIG_AF_KCM=m CONFIG_STREAM_PARSER=y -@@ -2180,6 +2110,7 @@ +@@ -2180,6 +2088,7 @@ CONFIG_CFG80211=m # CONFIG_NL80211_TESTMODE is not set # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set @@ -632,7 +749,7 @@ CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y CONFIG_CFG80211_DEFAULT_PS=y -@@ -2204,7 +2135,6 @@ +@@ -2204,7 +2113,6 @@ CONFIG_NET_9P=m CONFIG_NET_9P_FD=m CONFIG_NET_9P_VIRTIO=m @@ -640,7 +757,7 @@ CONFIG_NET_9P_USBG=m CONFIG_NET_9P_RDMA=m # CONFIG_NET_9P_DEBUG is not set -@@ -2302,7 +2232,6 @@ +@@ -2302,7 +2210,6 @@ # CONFIG_PCI_REALLOC_ENABLE_AUTO is not set CONFIG_PCI_STUB=y CONFIG_PCI_PF_STUB=m @@ -648,7 +765,7 @@ CONFIG_PCI_ATS=y CONFIG_PCI_DOE=y CONFIG_PCI_LOCKLESS_CONFIG=y -@@ -2313,7 +2242,11 @@ +@@ -2313,7 +2220,11 @@ CONFIG_PCIE_TPH=y CONFIG_PCI_P2PDMA=y CONFIG_PCI_LABEL=y @@ -661,7 +778,7 @@ CONFIG_VGA_ARB=y CONFIG_VGA_ARB_MAX_GPUS=10 CONFIG_HOTPLUG_PCI=y -@@ -2329,7 +2262,6 @@ +@@ -2329,7 +2240,6 @@ # PCI controller drivers # CONFIG_VMD=m @@ -669,7 +786,7 @@ # # Cadence-based PCIe controllers -@@ -2370,15 +2302,14 @@ +@@ -2370,15 +2280,14 @@ CONFIG_PCI_SW_SWITCHTEC=m # end of PCI switch controller drivers @@ -687,7 +804,7 @@ CONFIG_CXL_PORT=m CONFIG_CXL_SUSPEND=y CONFIG_CXL_REGION=y -@@ -2437,9 +2368,7 @@ +@@ -2437,9 +2346,7 @@ # CONFIG_DEBUG_DRIVER is not set # CONFIG_DEBUG_DEVRES is not set # CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set @@ -697,7 +814,7 @@ CONFIG_GENERIC_CPU_DEVICES=y CONFIG_GENERIC_CPU_AUTOPROBE=y CONFIG_GENERIC_CPU_VULNERABILITIES=y -@@ -2515,7 +2444,6 @@ +@@ -2515,7 +2422,6 @@ CONFIG_EFI_ESRT=y CONFIG_EFI_VARS_PSTORE=y CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE=y @@ -705,7 +822,7 @@ CONFIG_EFI_DXE_MEM_ATTRIBUTES=y CONFIG_EFI_RUNTIME_WRAPPERS=y CONFIG_EFI_BOOTLOADER_CONTROL=m -@@ -2530,7 +2458,6 @@ +@@ -2530,7 +2436,6 @@ CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y # CONFIG_EFI_DISABLE_RUNTIME is not set CONFIG_EFI_COCO_SECRET=y @@ -713,7 +830,7 @@ CONFIG_EFI_EMBEDDED_FIRMWARE=y # end of EFI (Extensible Firmware Interface) Support -@@ -2540,10 +2467,6 @@ +@@ -2540,10 +2445,6 @@ # # Qualcomm firmware drivers # @@ -724,7 +841,7 @@ # end of Qualcomm firmware drivers # -@@ -2745,8 +2668,6 @@ +@@ -2745,8 +2646,6 @@ CONFIG_CDROM_PKTCDVD_BUFFERS=8 # CONFIG_CDROM_PKTCDVD_WCACHE is not set CONFIG_ATA_OVER_ETH=m @@ -733,7 +850,7 @@ CONFIG_VIRTIO_BLK=y # CONFIG_BLK_DEV_RUST_NULL is not set CONFIG_BLK_DEV_RBD=m -@@ -2755,7 +2676,7 @@ +@@ -2755,7 +2654,7 @@ CONFIG_BLK_DEV_RNBD=y CONFIG_BLK_DEV_RNBD_CLIENT=m CONFIG_BLK_DEV_RNBD_SERVER=m @@ -742,7 +859,7 @@ # # NVME Support -@@ -2796,7 +2717,7 @@ +@@ -2796,7 +2695,7 @@ CONFIG_IBM_ASM=m CONFIG_PHANTOM=m CONFIG_RPMB=m @@ -751,7 +868,7 @@ CONFIG_TIFM_CORE=m CONFIG_TIFM_7XX1=m CONFIG_ICS932S401=m -@@ -2812,7 +2733,6 @@ +@@ -2812,7 +2711,6 @@ CONFIG_SENSORS_APDS990X=m CONFIG_HMC6352=m CONFIG_DS1682=m @@ -759,7 +876,7 @@ CONFIG_LATTICE_ECP3_CONFIG=m # CONFIG_SRAM is not set CONFIG_DW_XDATA_PCIE=m -@@ -2867,8 +2787,7 @@ +@@ -2867,8 +2765,7 @@ CONFIG_GP_PCI1XXXX=m CONFIG_KEBA_CP500=m CONFIG_KEBA_LAN9252=m @@ -769,7 +886,7 @@ # end of Misc devices # -@@ -2961,8 +2880,6 @@ +@@ -2961,8 +2858,6 @@ CONFIG_SCSI_MYRB=m CONFIG_SCSI_MYRS=m CONFIG_VMWARE_PVSCSI=m @@ -778,7 +895,7 @@ CONFIG_LIBFC=m CONFIG_LIBFCOE=m CONFIG_FCOE=m -@@ -3232,7 +3149,7 @@ +@@ -3232,7 +3127,7 @@ CONFIG_DUMMY=m CONFIG_WIREGUARD=m # CONFIG_WIREGUARD_DEBUG is not set @@ -787,7 +904,7 @@ CONFIG_EQUALIZER=m CONFIG_NET_FC=y CONFIG_IFB=m -@@ -3469,7 +3386,7 @@ +@@ -3469,7 +3364,7 @@ CONFIG_HIBMCGE=m CONFIG_NET_VENDOR_HUAWEI=y CONFIG_HINIC=m @@ -796,7 +913,7 @@ CONFIG_NET_VENDOR_I825XX=y CONFIG_NET_VENDOR_INTEL=y CONFIG_LIBETH=m -@@ -3570,7 +3487,6 @@ +@@ -3570,7 +3465,6 @@ CONFIG_NET_VENDOR_MICROSEMI=y CONFIG_MSCC_OCELOT_SWITCH_LIB=m CONFIG_NET_VENDOR_MICROSOFT=y @@ -804,7 +921,7 @@ CONFIG_NET_VENDOR_MYRI=y CONFIG_MYRI10GE=m CONFIG_MYRI10GE_DCA=y -@@ -3724,7 +3640,7 @@ +@@ -3724,7 +3618,7 @@ # # MII PHY device drivers # @@ -813,7 +930,7 @@ CONFIG_AIR_EN8811H_PHY=m CONFIG_AMD_PHY=m CONFIG_ADIN_PHY=m -@@ -3750,7 +3666,7 @@ +@@ -3750,7 +3644,7 @@ CONFIG_MARVELL_88Q2XXX_PHY=m CONFIG_MARVELL_88X2222_PHY=m CONFIG_MAXLINEAR_GPHY=m @@ -822,7 +939,7 @@ CONFIG_MEDIATEK_GE_PHY=m # CONFIG_MEDIATEK_GE_SOC_PHY is not set CONFIG_MTK_NET_PHYLIB=m -@@ -4023,7 +3939,7 @@ +@@ -4023,7 +3917,7 @@ # CONFIG_ATH11K_TRACING is not set CONFIG_ATH11K_SPECTRAL=y CONFIG_ATH12K=m @@ -831,7 +948,7 @@ CONFIG_ATH12K_DEBUG=y CONFIG_ATH12K_DEBUGFS=y CONFIG_ATH12K_TRACING=y -@@ -4333,12 +4249,9 @@ +@@ -4333,12 +4227,9 @@ CONFIG_MTK_T7XX=m # end of Wireless WAN @@ -844,7 +961,7 @@ CONFIG_NETDEVSIM=m CONFIG_NET_FAILOVER=m CONFIG_ISDN=y -@@ -4434,7 +4347,6 @@ +@@ -4434,7 +4325,6 @@ CONFIG_MOUSE_PS2_SENTELIC=y CONFIG_MOUSE_PS2_TOUCHKIT=y CONFIG_MOUSE_PS2_FOCALTECH=y @@ -852,7 +969,7 @@ CONFIG_MOUSE_PS2_SMBUS=y CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_APPLETOUCH=m -@@ -4612,7 +4524,6 @@ +@@ -4612,7 +4502,6 @@ CONFIG_INPUT_BMA150=m # CONFIG_INPUT_CS40L50_VIBRA is not set CONFIG_INPUT_E3X0_BUTTON=m @@ -860,7 +977,7 @@ CONFIG_INPUT_MAX77693_HAPTIC=m CONFIG_INPUT_MAX8925_ONKEY=m CONFIG_INPUT_MAX8997_HAPTIC=m -@@ -4657,7 +4568,6 @@ +@@ -4657,7 +4546,6 @@ CONFIG_INPUT_IQS7222=m CONFIG_INPUT_CMA3000=m CONFIG_INPUT_CMA3000_I2C=m @@ -868,7 +985,7 @@ CONFIG_INPUT_IDEAPAD_SLIDEBAR=m CONFIG_INPUT_SOC_BUTTON_ARRAY=m CONFIG_INPUT_DRV260X_HAPTICS=m -@@ -4696,7 +4606,6 @@ +@@ -4696,7 +4584,6 @@ CONFIG_SERIO_ALTERA_PS2=m CONFIG_SERIO_PS2MULT=m CONFIG_SERIO_ARC_PS2=m @@ -876,7 +993,7 @@ CONFIG_SERIO_GPIO_PS2=m CONFIG_USERIO=m CONFIG_GAMEPORT=m -@@ -4791,12 +4700,10 @@ +@@ -4791,12 +4678,10 @@ CONFIG_NOZOMI=m CONFIG_NULL_TTY=m CONFIG_HVC_DRIVER=y @@ -890,7 +1007,7 @@ CONFIG_PRINTER=m CONFIG_LP_CONSOLE=y CONFIG_PPDEV=m -@@ -4844,10 +4751,8 @@ +@@ -4844,10 +4729,8 @@ CONFIG_TCG_NSC=m CONFIG_TCG_ATMEL=m CONFIG_TCG_INFINEON=m @@ -901,7 +1018,7 @@ CONFIG_TCG_TIS_ST33ZP24=m CONFIG_TCG_TIS_ST33ZP24_I2C=m CONFIG_TCG_TIS_ST33ZP24_SPI=m -@@ -4878,7 +4783,6 @@ +@@ -4878,7 +4761,6 @@ CONFIG_I2C_MUX_MLXCPLD=m # end of Multiplexer I2C Chip support @@ -909,7 +1026,7 @@ CONFIG_I2C_HELPER_AUTO=y CONFIG_I2C_SMBUS=m CONFIG_I2C_ALGOBIT=m -@@ -4927,7 +4831,7 @@ +@@ -4927,7 +4809,7 @@ CONFIG_I2C_DESIGNWARE_CORE=y CONFIG_I2C_DESIGNWARE_SLAVE=y CONFIG_I2C_DESIGNWARE_PLATFORM=y @@ -918,7 +1035,7 @@ CONFIG_I2C_DESIGNWARE_BAYTRAIL=y CONFIG_I2C_DESIGNWARE_PCI=y CONFIG_I2C_EMEV2=m -@@ -5060,13 +4964,11 @@ +@@ -5060,13 +4942,11 @@ CONFIG_PTP_1588_CLOCK_OPTIONAL=m CONFIG_DP83640_PHY=m CONFIG_PTP_1588_CLOCK_INES=m @@ -932,7 +1049,7 @@ CONFIG_PTP_1588_CLOCK_OCP=m CONFIG_PTP_DFL_TOD=m # end of PTP clock support -@@ -5128,6 +5030,7 @@ +@@ -5128,6 +5008,7 @@ CONFIG_GPIO_ACPI=y CONFIG_GPIOLIB_IRQCHIP=y # CONFIG_DEBUG_GPIO is not set @@ -940,7 +1057,7 @@ CONFIG_GPIO_CDEV=y CONFIG_GPIO_CDEV_V1=y CONFIG_GPIO_GENERIC=m -@@ -5257,6 +5160,7 @@ +@@ -5257,6 +5138,7 @@ # # GPIO Debugging utilities # @@ -948,7 +1065,7 @@ # CONFIG_GPIO_VIRTUSER is not set # end of GPIO Debugging utilities -@@ -5304,7 +5208,7 @@ +@@ -5304,7 +5186,7 @@ CONFIG_POWER_RESET_ATC260X=m CONFIG_POWER_RESET_MT6323=y CONFIG_POWER_RESET_RESTART=y @@ -957,7 +1074,7 @@ CONFIG_POWER_RESET_TPS65086=y CONFIG_POWER_SEQUENCING=m CONFIG_POWER_SUPPLY=y -@@ -5319,7 +5223,7 @@ +@@ -5319,7 +5201,7 @@ CONFIG_TEST_POWER=m CONFIG_BATTERY_88PM860X=m CONFIG_CHARGER_ADP5061=m @@ -966,7 +1083,7 @@ CONFIG_BATTERY_CW2015=m CONFIG_BATTERY_DS2760=m CONFIG_BATTERY_DS2780=m -@@ -5363,7 +5267,7 @@ +@@ -5363,7 +5245,7 @@ CONFIG_CHARGER_MAX77693=m CONFIG_CHARGER_MAX77705=m CONFIG_CHARGER_MAX77976=m @@ -975,7 +1092,7 @@ CONFIG_CHARGER_MAX8997=m CONFIG_CHARGER_MAX8998=m CONFIG_CHARGER_MP2629=m -@@ -5429,10 +5333,8 @@ +@@ -5429,10 +5311,8 @@ CONFIG_SENSORS_ASUS_ROG_RYUJIN=m CONFIG_SENSORS_AXI_FAN_CONTROL=m CONFIG_SENSORS_K8TEMP=m @@ -988,7 +1105,7 @@ CONFIG_SENSORS_APPLESMC=m CONFIG_SENSORS_ASB100=m CONFIG_SENSORS_ATXP1=m -@@ -5505,7 +5407,7 @@ +@@ -5505,7 +5385,7 @@ CONFIG_SENSORS_MAX6650=m CONFIG_SENSORS_MAX6697=m CONFIG_SENSORS_MAX31790=m @@ -997,7 +1114,7 @@ CONFIG_SENSORS_MC34VR500=m CONFIG_SENSORS_MCP3021=m CONFIG_SENSORS_MLXREG_FAN=m -@@ -5570,8 +5472,7 @@ +@@ -5570,8 +5450,7 @@ CONFIG_SENSORS_ISL68137=m CONFIG_SENSORS_LM25066=m CONFIG_SENSORS_LM25066_REGULATOR=y @@ -1007,7 +1124,7 @@ CONFIG_SENSORS_LT7182S=m CONFIG_SENSORS_LTC2978=m # CONFIG_SENSORS_LTC2978_REGULATOR is not set -@@ -5799,7 +5700,7 @@ +@@ -5799,7 +5678,7 @@ CONFIG_WAFER_WDT=m CONFIG_I6300ESB_WDT=m CONFIG_IE6XX_WDT=m @@ -1016,7 +1133,7 @@ CONFIG_ITCO_WDT=m CONFIG_ITCO_VENDOR_SUPPORT=y CONFIG_IT8712F_WDT=m -@@ -5825,7 +5726,6 @@ +@@ -5825,7 +5704,6 @@ CONFIG_NIC7018_WDT=m CONFIG_SIEMENS_SIMATIC_IPC_WDT=m CONFIG_MEN_A21_WDT=m @@ -1024,7 +1141,7 @@ # # PCI-based Watchdog Cards -@@ -6012,7 +5912,7 @@ +@@ -6012,7 +5890,7 @@ CONFIG_REGULATOR_88PM8607=m CONFIG_REGULATOR_ACT8865=m CONFIG_REGULATOR_AD5398=m @@ -1033,7 +1150,7 @@ CONFIG_REGULATOR_AAT2870=m CONFIG_REGULATOR_ARIZONA_LDO1=m CONFIG_REGULATOR_ARIZONA_MICSUPP=m -@@ -6639,8 +6539,6 @@ +@@ -6639,8 +6517,6 @@ CONFIG_VIDEOBUF2_DVB=m # end of Media drivers @@ -1042,7 +1159,7 @@ # # Media ancillary drivers # -@@ -6684,8 +6582,8 @@ +@@ -6684,8 +6560,8 @@ CONFIG_VIDEO_OG01A1B=m CONFIG_VIDEO_OV01A10=m CONFIG_VIDEO_OV02A10=m @@ -1053,7 +1170,7 @@ CONFIG_VIDEO_OV08D10=m CONFIG_VIDEO_OV08X40=m CONFIG_VIDEO_OV13858=m -@@ -6721,8 +6619,8 @@ +@@ -6721,8 +6597,8 @@ CONFIG_VIDEO_S5C73M3=m CONFIG_VIDEO_S5K5BAF=m CONFIG_VIDEO_S5K6A3=m @@ -1064,7 +1181,7 @@ CONFIG_VIDEO_CCS=m CONFIG_VIDEO_ET8EK8=m -@@ -6752,48 +6650,111 @@ +@@ -6752,48 +6628,111 @@ # end of Flash devices # @@ -1181,7 +1298,7 @@ # # Media SPI Adapters -@@ -6805,7 +6766,7 @@ +@@ -6805,7 +6744,7 @@ CONFIG_MEDIA_TUNER=m # @@ -1190,7 +1307,7 @@ # CONFIG_MEDIA_TUNER_E4000=m CONFIG_MEDIA_TUNER_FC0011=m -@@ -6816,6 +6777,7 @@ +@@ -6816,6 +6755,7 @@ CONFIG_MEDIA_TUNER_M88RS6000T=m CONFIG_MEDIA_TUNER_MAX2165=m CONFIG_MEDIA_TUNER_MC44S803=m @@ -1198,7 +1315,7 @@ CONFIG_MEDIA_TUNER_MT2060=m CONFIG_MEDIA_TUNER_MT2063=m CONFIG_MEDIA_TUNER_MT20XX=m -@@ -6843,9 +6805,10 @@ +@@ -6843,9 +6783,10 @@ CONFIG_MEDIA_TUNER_XC2028=m CONFIG_MEDIA_TUNER_XC4000=m CONFIG_MEDIA_TUNER_XC5000=m @@ -1210,7 +1327,7 @@ # # -@@ -6913,6 +6876,7 @@ +@@ -6913,6 +6854,7 @@ CONFIG_DVB_DIB3000MC=m CONFIG_DVB_DIB7000M=m CONFIG_DVB_DIB7000P=m @@ -1218,7 +1335,7 @@ CONFIG_DVB_DRXD=m CONFIG_DVB_EC100=m CONFIG_DVB_GP8PSK_FE=m -@@ -6921,6 +6885,7 @@ +@@ -6921,6 +6863,7 @@ CONFIG_DVB_NXT6000=m CONFIG_DVB_RTL2830=m CONFIG_DVB_RTL2832=m @@ -1226,7 +1343,7 @@ CONFIG_DVB_SI2168=m CONFIG_DVB_SP887X=m CONFIG_DVB_STV0367=m -@@ -6928,6 +6893,7 @@ +@@ -6928,6 +6871,7 @@ CONFIG_DVB_TDA1004X=m CONFIG_DVB_ZD1301_DEMOD=m CONFIG_DVB_ZL10353=m @@ -1234,7 +1351,7 @@ # # DVB-C (cable) frontends -@@ -6965,6 +6931,7 @@ +@@ -6965,6 +6909,7 @@ # # ISDB-S (satellite) & ISDB-T (terrestrial) frontends # @@ -1242,7 +1359,7 @@ CONFIG_DVB_TC90522=m # -@@ -6987,8 +6954,10 @@ +@@ -6987,8 +6932,10 @@ CONFIG_DVB_ISL6421=m CONFIG_DVB_ISL6423=m CONFIG_DVB_IX2505V=m @@ -1253,7 +1370,7 @@ CONFIG_DVB_LNBP21=m CONFIG_DVB_LNBP22=m CONFIG_DVB_M88RS2000=m -@@ -7000,6 +6969,7 @@ +@@ -7000,6 +6947,7 @@ # CONFIG_DVB_CXD2099=m CONFIG_DVB_SP2=m @@ -1261,7 +1378,7 @@ # # Tools to develop new frontends -@@ -7016,7 +6986,6 @@ +@@ -7016,7 +6964,6 @@ # CONFIG_AUXDISPLAY is not set # CONFIG_PANEL is not set CONFIG_AGP=y @@ -1269,7 +1386,7 @@ CONFIG_AGP_INTEL=m CONFIG_AGP_SIS=m CONFIG_AGP_VIA=m -@@ -7028,6 +6997,7 @@ +@@ -7028,6 +6975,7 @@ # # DRM debugging options # @@ -1277,7 +1394,7 @@ # CONFIG_DRM_DEBUG_MM is not set # end of DRM debugging options -@@ -7043,6 +7013,8 @@ +@@ -7043,6 +6991,8 @@ CONFIG_DRM_PANIC_SCREEN_QR_CODE=y CONFIG_DRM_PANIC_SCREEN_QR_CODE_URL="https://panic.archlinux.org/panic_report#" CONFIG_DRM_PANIC_SCREEN_QR_VERSION=40 @@ -1286,7 +1403,7 @@ CONFIG_DRM_CLIENT=y CONFIG_DRM_CLIENT_LIB=y CONFIG_DRM_CLIENT_SELECTION=y -@@ -7053,6 +7025,7 @@ +@@ -7053,6 +7003,7 @@ # CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 @@ -1294,7 +1411,7 @@ CONFIG_DRM_CLIENT_LOG=y CONFIG_DRM_CLIENT_DEFAULT_FBDEV=y # CONFIG_DRM_CLIENT_DEFAULT_LOG is not set -@@ -7099,6 +7072,7 @@ +@@ -7099,6 +7050,7 @@ CONFIG_DRM_AMDGPU_CIK=y CONFIG_DRM_AMDGPU_USERPTR=y CONFIG_DRM_AMD_ISP=y @@ -1302,7 +1419,7 @@ # # ACP (Audio CoProcessor) Configuration -@@ -7136,6 +7110,27 @@ +@@ -7136,6 +7088,27 @@ CONFIG_DRM_I915_GVT_KVMGT=m CONFIG_DRM_I915_PXP=y CONFIG_DRM_I915_DP_TUNNEL=y @@ -1330,7 +1447,7 @@ CONFIG_DRM_I915_REQUEST_TIMEOUT=20000 CONFIG_DRM_I915_FENCE_TIMEOUT=10000 CONFIG_DRM_I915_USERFAULT_AUTOSUSPEND=250 -@@ -7145,6 +7140,8 @@ +@@ -7145,6 +7118,8 @@ CONFIG_DRM_I915_MAX_REQUEST_BUSYWAIT=8000 CONFIG_DRM_I915_STOP_TIMEOUT=100 CONFIG_DRM_I915_TIMESLICE_DURATION=1 @@ -1339,7 +1456,7 @@ CONFIG_DRM_I915_GVT=y CONFIG_DRM_XE=m CONFIG_DRM_XE_DISPLAY=y -@@ -7152,6 +7149,23 @@ +@@ -7152,6 +7127,23 @@ CONFIG_DRM_XE_GPUSVM=y CONFIG_DRM_XE_DEVMEM_MIRROR=y CONFIG_DRM_XE_FORCE_PROBE="" @@ -1363,7 +1480,7 @@ CONFIG_DRM_XE_JOB_TIMEOUT_MAX=10000 CONFIG_DRM_XE_JOB_TIMEOUT_MIN=1 CONFIG_DRM_XE_TIMESLICE_MAX=10000000 -@@ -7160,10 +7174,10 @@ +@@ -7160,10 +7152,10 @@ CONFIG_DRM_XE_PREEMPT_TIMEOUT_MAX=10000000 CONFIG_DRM_XE_PREEMPT_TIMEOUT_MIN=1 CONFIG_DRM_XE_ENABLE_SCHEDTIMEOUT_LIMIT=y @@ -1376,7 +1493,7 @@ CONFIG_DRM_GMA500=m CONFIG_DRM_UDL=m CONFIG_DRM_AST=m -@@ -7209,17 +7223,14 @@ +@@ -7209,17 +7201,14 @@ CONFIG_TINYDRM_MI0283QT=m CONFIG_TINYDRM_REPAPER=m CONFIG_TINYDRM_SHARP_MEMORY=m @@ -1397,7 +1514,7 @@ CONFIG_DRM_PANEL_BACKLIGHT_QUIRKS=m CONFIG_DRM_PRIVACY_SCREEN=y CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y -@@ -7267,10 +7278,8 @@ +@@ -7267,10 +7256,8 @@ # CONFIG_FB_UDL is not set # CONFIG_FB_IBM_GXT4500 is not set # CONFIG_FB_VIRTUAL is not set @@ -1408,7 +1525,7 @@ # CONFIG_FB_SSD1307 is not set # CONFIG_FB_SM712 is not set CONFIG_FB_CORE=y -@@ -7429,7 +7438,6 @@ +@@ -7429,7 +7416,6 @@ CONFIG_SND_VX_LIB=m CONFIG_SND_AC97_CODEC=m CONFIG_SND_DRIVERS=y @@ -1416,7 +1533,7 @@ CONFIG_SND_DUMMY=m CONFIG_SND_ALOOP=m CONFIG_SND_PCMTEST=m -@@ -7522,7 +7530,7 @@ +@@ -7522,7 +7508,7 @@ CONFIG_SND_HDA=m CONFIG_SND_HDA_GENERIC_LEDS=y CONFIG_SND_HDA_INTEL=m @@ -1425,7 +1542,7 @@ CONFIG_SND_HDA_HWDEP=y CONFIG_SND_HDA_RECONFIG=y CONFIG_SND_HDA_INPUT_BEEP=y -@@ -7582,7 +7590,6 @@ +@@ -7582,7 +7568,6 @@ CONFIG_SND_USB_6FIRE=m CONFIG_SND_USB_HIFACE=m CONFIG_SND_BCD2000=m @@ -1433,7 +1550,7 @@ CONFIG_SND_USB_LINE6=m CONFIG_SND_USB_POD=m CONFIG_SND_USB_PODHD=m -@@ -7608,7 +7615,7 @@ +@@ -7608,7 +7593,7 @@ CONFIG_SND_SOC_COMPRESS=y CONFIG_SND_SOC_TOPOLOGY=y CONFIG_SND_SOC_ACPI=m @@ -1442,7 +1559,7 @@ CONFIG_SND_SOC_ADI=m CONFIG_SND_SOC_ADI_AXI_I2S=m CONFIG_SND_SOC_ADI_AXI_SPDIF=m -@@ -7634,9 +7641,6 @@ +@@ -7634,9 +7619,6 @@ CONFIG_SND_SOC_AMD_ACP_PCM=m CONFIG_SND_SOC_AMD_ACP_PCI=m CONFIG_SND_AMD_ASOC_RENOIR=m @@ -1452,7 +1569,7 @@ CONFIG_SND_SOC_AMD_MACH_COMMON=m CONFIG_SND_SOC_AMD_LEGACY_MACH=m CONFIG_SND_SOC_AMD_SOF_MACH=m -@@ -7774,20 +7778,12 @@ +@@ -7774,20 +7756,12 @@ CONFIG_SND_SOC_SOF_ACPI_DEV=m CONFIG_SND_SOC_SOF_DEBUG_PROBES=m CONFIG_SND_SOC_SOF_CLIENT=m @@ -1474,7 +1591,7 @@ CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL=y CONFIG_SND_SOC_SOF_INTEL_HIFI_EP_IPC=m CONFIG_SND_SOC_SOF_INTEL_ATOM_HIFI_EP=m -@@ -7927,7 +7923,7 @@ +@@ -7927,7 +7901,7 @@ CONFIG_SND_SOC_CS43130=m CONFIG_SND_SOC_CS4341=m CONFIG_SND_SOC_CS4349=m @@ -1483,7 +1600,7 @@ CONFIG_SND_SOC_CS53L30=m CONFIG_SND_SOC_CS530X=m CONFIG_SND_SOC_CS530X_I2C=m -@@ -7946,8 +7942,8 @@ +@@ -7946,8 +7920,8 @@ CONFIG_SND_SOC_ES8328=m CONFIG_SND_SOC_ES8328_I2C=m CONFIG_SND_SOC_ES8328_SPI=m @@ -1494,7 +1611,7 @@ CONFIG_SND_SOC_GTM601=m CONFIG_SND_SOC_HDAC_HDA=m CONFIG_SND_SOC_HDA=m -@@ -8035,8 +8031,8 @@ +@@ -8035,8 +8009,8 @@ CONFIG_SND_SOC_RT715_SDW=m CONFIG_SND_SOC_RT715_SDCA_SDW=m CONFIG_SND_SOC_RT9120=m @@ -1505,7 +1622,7 @@ CONFIG_SND_SOC_RTQ9128=m # CONFIG_SND_SOC_SDW_MOCKUP is not set CONFIG_SND_SOC_SGTL5000=m -@@ -8133,7 +8129,7 @@ +@@ -8133,7 +8107,7 @@ CONFIG_SND_SOC_WM8974=m CONFIG_SND_SOC_WM8978=m CONFIG_SND_SOC_WM8985=m @@ -1514,7 +1631,7 @@ CONFIG_SND_SOC_WSA881X=m CONFIG_SND_SOC_WSA883X=m CONFIG_SND_SOC_WSA884X=m -@@ -8167,7 +8163,6 @@ +@@ -8167,7 +8141,6 @@ CONFIG_SND_X86=y CONFIG_HDMI_LPE_AUDIO=m CONFIG_SND_SYNTH_EMUX=m @@ -1522,7 +1639,7 @@ CONFIG_SND_VIRTIO=m CONFIG_AC97_BUS=m CONFIG_HID_SUPPORT=y -@@ -8295,7 +8290,6 @@ +@@ -8295,7 +8268,6 @@ CONFIG_HID_RMI=m CONFIG_HID_GREENASIA=m CONFIG_GREENASIA_FF=y @@ -1530,7 +1647,7 @@ CONFIG_HID_SMARTJOYPLUS=m CONFIG_SMARTJOYPLUS_FF=y CONFIG_HID_TIVO=m -@@ -8390,6 +8384,7 @@ +@@ -8390,6 +8362,7 @@ # CONFIG_USB_DYNAMIC_MINORS is not set # CONFIG_USB_OTG is not set # CONFIG_USB_OTG_PRODUCTLIST is not set @@ -1538,7 +1655,7 @@ CONFIG_USB_LEDS_TRIGGER_USBPORT=m CONFIG_USB_AUTOSUSPEND_DELAY=2 CONFIG_USB_DEFAULT_AUTHORIZATION_MODE=1 -@@ -8404,7 +8399,7 @@ +@@ -8404,7 +8377,7 @@ CONFIG_USB_XHCI_PCI=y CONFIG_USB_XHCI_PCI_RENESAS=m CONFIG_USB_XHCI_PLATFORM=m @@ -1547,7 +1664,7 @@ CONFIG_USB_EHCI_HCD=y CONFIG_USB_EHCI_ROOT_HUB_TT=y CONFIG_USB_EHCI_TT_NEWSCHED=y -@@ -8425,7 +8420,6 @@ +@@ -8425,7 +8398,6 @@ CONFIG_USB_HCD_BCMA=m CONFIG_USB_HCD_SSB=m # CONFIG_USB_HCD_TEST_MODE is not set @@ -1555,7 +1672,7 @@ # # USB Device Class drivers -@@ -9006,7 +9000,6 @@ +@@ -9006,7 +8978,6 @@ # CONFIG_HFI1_DEBUG_SDMA_ORDER is not set # CONFIG_SDMA_VERBOSITY is not set CONFIG_INFINIBAND_IRDMA=m @@ -1563,7 +1680,7 @@ CONFIG_MLX4_INFINIBAND=m CONFIG_MLX5_INFINIBAND=m CONFIG_INFINIBAND_MTHCA=m -@@ -9037,12 +9030,10 @@ +@@ -9037,12 +9008,10 @@ CONFIG_EDAC=y CONFIG_EDAC_LEGACY_SYSFS=y # CONFIG_EDAC_DEBUG is not set @@ -1576,7 +1693,7 @@ CONFIG_EDAC_E752X=m CONFIG_EDAC_I82975X=m CONFIG_EDAC_I3000=m -@@ -9264,7 +9255,6 @@ +@@ -9264,7 +9233,6 @@ CONFIG_UIO_PCI_GENERIC=m CONFIG_UIO_NETX=m CONFIG_UIO_MF624=m @@ -1584,7 +1701,7 @@ CONFIG_UIO_DFL=m CONFIG_VFIO=m CONFIG_VFIO_DEVICE_CDEV=y -@@ -9296,13 +9286,7 @@ +@@ -9296,13 +9264,7 @@ CONFIG_VMGENID=y CONFIG_VBOXGUEST=m CONFIG_NITRO_ENCLAVES=m @@ -1598,7 +1715,7 @@ CONFIG_VIRTIO_ANCHOR=y CONFIG_VIRTIO=y CONFIG_VIRTIO_PCI_LIB=y -@@ -9320,14 +9304,11 @@ +@@ -9320,14 +9282,11 @@ CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y CONFIG_VIRTIO_DMA_SHARED_BUFFER=m CONFIG_VIRTIO_DEBUG=y @@ -1614,7 +1731,7 @@ CONFIG_IFCVF=m CONFIG_MLX5_VDPA=y CONFIG_MLX5_VDPA_NET=m -@@ -9351,54 +9332,8 @@ +@@ -9351,54 +9310,8 @@ # # Microsoft Hyper-V guest support # @@ -1669,7 +1786,7 @@ # CONFIG_GREYBUS is not set # CONFIG_COMEDI is not set CONFIG_STAGING=y -@@ -9506,7 +9441,7 @@ +@@ -9506,7 +9419,7 @@ CONFIG_WILCO_EC_TELEMETRY=m CONFIG_MELLANOX_PLATFORM=y CONFIG_MLX_PLATFORM=m @@ -1678,7 +1795,7 @@ CONFIG_MLXREG_HOTPLUG=m CONFIG_MLXREG_IO=m CONFIG_MLXREG_LC=m -@@ -9540,22 +9475,9 @@ +@@ -9540,22 +9453,9 @@ CONFIG_ACERHDF=m CONFIG_ACER_WIRELESS=m CONFIG_ACER_WMI=m @@ -1702,7 +1819,7 @@ CONFIG_ADV_SWBUTTON=m CONFIG_APPLE_GMUX=m CONFIG_ASUS_LAPTOP=m -@@ -9666,7 +9588,7 @@ +@@ -9666,7 +9566,7 @@ CONFIG_MSI_WMI=m CONFIG_MSI_WMI_PLATFORM=m CONFIG_PCENGINES_APU2=m @@ -1711,7 +1828,7 @@ CONFIG_BARCO_P50_GPIO=m CONFIG_SAMSUNG_GALAXYBOOK=m CONFIG_SAMSUNG_LAPTOP=m -@@ -9687,7 +9609,7 @@ +@@ -9687,7 +9587,7 @@ CONFIG_TOUCHSCREEN_DMI=y CONFIG_INSPUR_PLATFORM_PROFILE=m CONFIG_LENOVO_WMI_CAMERA=m @@ -1720,7 +1837,7 @@ CONFIG_X86_ANDROID_TABLETS=m CONFIG_FW_ATTR_CLASS=m CONFIG_INTEL_IPS=m -@@ -9704,8 +9626,8 @@ +@@ -9704,8 +9604,8 @@ CONFIG_SILICOM_PLATFORM=m CONFIG_WINMATE_FM07_KEYS=m CONFIG_SEL3350_PLATFORM=m @@ -1731,7 +1848,7 @@ CONFIG_P2SB=y CONFIG_HAVE_CLK=y CONFIG_HAVE_CLK_PREPARE=y -@@ -9730,7 +9652,6 @@ +@@ -9730,7 +9630,6 @@ # Clock Source drivers # CONFIG_CLKEVT_I8253=y @@ -1739,7 +1856,7 @@ CONFIG_CLKBLD_I8253=y # end of Clock Source drivers -@@ -9766,7 +9687,6 @@ +@@ -9766,7 +9665,6 @@ CONFIG_IOMMUFD_DRIVER_CORE=y CONFIG_IOMMUFD=m CONFIG_IRQ_REMAP=y @@ -1747,7 +1864,7 @@ CONFIG_VIRTIO_IOMMU=m # -@@ -9838,7 +9758,6 @@ +@@ -9838,7 +9736,6 @@ # # Qualcomm SoC drivers # @@ -1755,7 +1872,7 @@ CONFIG_QCOM_PMIC_PDCHARGER_ULOG=m CONFIG_QCOM_QMI_HELPERS=m # end of Qualcomm SoC drivers -@@ -10006,7 +9925,6 @@ +@@ -10006,7 +9903,6 @@ # # Analog to digital converters # @@ -1763,7 +1880,7 @@ CONFIG_AD_SIGMA_DELTA=m CONFIG_AD4000=m CONFIG_AD4030=m -@@ -10080,11 +9998,11 @@ +@@ -10080,11 +9976,11 @@ CONFIG_MEN_Z188_ADC=m CONFIG_MP2629_ADC=m CONFIG_NAU7802=m @@ -1777,7 +1894,7 @@ CONFIG_RICHTEK_RTQ6056=m CONFIG_SD_ADC_MODULATOR=m CONFIG_TI_ADC081C=m -@@ -10157,13 +10075,13 @@ +@@ -10157,13 +10053,13 @@ CONFIG_ENS160_I2C=m CONFIG_ENS160_SPI=m CONFIG_IAQCORE=m @@ -1793,7 +1910,7 @@ CONFIG_SENSIRION_SGP30=m CONFIG_SENSIRION_SGP40=m CONFIG_SPS30=m -@@ -10206,7 +10124,7 @@ +@@ -10206,7 +10102,7 @@ # # Digital to analog converters # @@ -1802,7 +1919,7 @@ CONFIG_AD3552R_HS=m CONFIG_AD3552R_LIB=m CONFIG_AD3552R=m -@@ -10680,6 +10598,7 @@ +@@ -10680,6 +10576,7 @@ CONFIG_SERIAL_IPOCTAL=m CONFIG_RESET_CONTROLLER=y CONFIG_RESET_GPIO=m @@ -1810,7 +1927,7 @@ CONFIG_RESET_TI_SYSCON=m CONFIG_RESET_TI_TPS380X=m -@@ -10726,9 +10645,6 @@ +@@ -10726,9 +10623,6 @@ CONFIG_RAS=y CONFIG_RAS_CEC=y # CONFIG_RAS_CEC_DEBUG is not set @@ -1820,7 +1937,7 @@ CONFIG_USB4=m # CONFIG_USB4_DEBUGFS_WRITE is not set # CONFIG_USB4_DMA_TEST is not set -@@ -10755,9 +10671,7 @@ +@@ -10755,9 +10649,7 @@ CONFIG_DAX=y CONFIG_DEV_DAX=m CONFIG_DEV_DAX_PMEM=m @@ -1830,7 +1947,7 @@ CONFIG_DEV_DAX_KMEM=m CONFIG_NVMEM=y CONFIG_NVMEM_SYSFS=y -@@ -10809,8 +10723,6 @@ +@@ -10809,8 +10701,6 @@ CONFIG_FPGA_MGR_MICROCHIP_SPI=m CONFIG_FPGA_MGR_LATTICE_SYSCONFIG=m CONFIG_FPGA_MGR_LATTICE_SYSCONFIG_SPI=m @@ -1839,7 +1956,7 @@ CONFIG_MULTIPLEXER=m # -@@ -11074,7 +10986,7 @@ +@@ -11074,7 +10964,7 @@ CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT=y CONFIG_SQUASHFS_MOUNT_DECOMP_THREADS=y CONFIG_SQUASHFS_XATTR=y @@ -1848,7 +1965,7 @@ CONFIG_SQUASHFS_ZLIB=y CONFIG_SQUASHFS_LZ4=y CONFIG_SQUASHFS_LZO=y -@@ -11121,7 +11033,7 @@ +@@ -11121,7 +11011,7 @@ CONFIG_EROFS_FS_ZIP_LZMA=y CONFIG_EROFS_FS_ZIP_DEFLATE=y CONFIG_EROFS_FS_ZIP_ZSTD=y @@ -1857,7 +1974,7 @@ CONFIG_EROFS_FS_ONDEMAND=y CONFIG_EROFS_FS_PCPU_KTHREAD=y CONFIG_EROFS_FS_PCPU_KTHREAD_HIPRI=y -@@ -11277,11 +11189,9 @@ +@@ -11277,11 +11167,9 @@ CONFIG_TRUSTED_KEYS=m CONFIG_HAVE_TRUSTED_KEYS=y CONFIG_TRUSTED_KEYS_TPM=y @@ -1869,7 +1986,7 @@ CONFIG_SECURITY_DMESG_RESTRICT=y CONFIG_PROC_MEM_ALWAYS_FORCE=y # CONFIG_PROC_MEM_FORCE_PTRACE is not set -@@ -11435,6 +11345,7 @@ +@@ -11435,6 +11323,7 @@ CONFIG_CRYPTO_MANAGER=y CONFIG_CRYPTO_MANAGER2=y CONFIG_CRYPTO_USER=m @@ -1877,7 +1994,7 @@ CONFIG_CRYPTO_NULL=m CONFIG_CRYPTO_PCRYPT=m CONFIG_CRYPTO_CRYPTD=m -@@ -11620,11 +11531,6 @@ +@@ -11620,11 +11509,6 @@ CONFIG_CRYPTO_DEV_ATMEL_ECC=m CONFIG_CRYPTO_DEV_ATMEL_SHA204A=m CONFIG_CRYPTO_DEV_CCP=y @@ -1889,7 +2006,7 @@ CONFIG_CRYPTO_DEV_NITROX=m CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m CONFIG_CRYPTO_DEV_QAT=m -@@ -11633,7 +11539,7 @@ +@@ -11633,7 +11517,7 @@ CONFIG_CRYPTO_DEV_QAT_C62X=m CONFIG_CRYPTO_DEV_QAT_4XXX=m CONFIG_CRYPTO_DEV_QAT_420XX=m @@ -1898,7 +2015,7 @@ CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m CONFIG_CRYPTO_DEV_QAT_C3XXXVF=m CONFIG_CRYPTO_DEV_QAT_C62XVF=m -@@ -11701,9 +11607,8 @@ +@@ -11701,9 +11585,8 @@ CONFIG_CRYPTO_LIB_UTILS=y CONFIG_CRYPTO_LIB_AES=y CONFIG_CRYPTO_LIB_AESCFB=y @@ -1909,7 +2026,7 @@ CONFIG_CRYPTO_ARCH_HAVE_LIB_BLAKE2S=y CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=y -@@ -11756,7 +11661,7 @@ +@@ -11756,7 +11639,7 @@ CONFIG_LZO_DECOMPRESS=y CONFIG_LZ4_COMPRESS=m CONFIG_LZ4HC_COMPRESS=m @@ -1918,7 +2035,7 @@ CONFIG_ZSTD_COMMON=y CONFIG_ZSTD_COMPRESS=y CONFIG_ZSTD_DECOMPRESS=y -@@ -11771,12 +11676,6 @@ +@@ -11771,12 +11654,6 @@ CONFIG_XZ_DEC_MICROLZMA=y CONFIG_XZ_DEC_BCJ=y # CONFIG_XZ_DEC_TEST is not set @@ -1931,7 +2048,7 @@ CONFIG_DECOMPRESS_ZSTD=y CONFIG_GENERIC_ALLOCATOR=y CONFIG_REED_SOLOMON=m -@@ -11802,13 +11701,10 @@ +@@ -11802,13 +11679,10 @@ CONFIG_NEED_SG_DMA_LENGTH=y CONFIG_NEED_DMA_MAP_STATE=y CONFIG_ARCH_DMA_ADDR_T_64BIT=y @@ -1945,7 +2062,7 @@ # # Default contiguous memory area size: -@@ -11823,7 +11719,6 @@ +@@ -11823,7 +11697,6 @@ # CONFIG_DMA_MAP_BENCHMARK is not set CONFIG_SGL_ALLOC=y CONFIG_CHECK_SIGNATURE=y @@ -1953,7 +2070,7 @@ CONFIG_CPU_RMAP=y CONFIG_DQL=y CONFIG_GLOB=y -@@ -11930,8 +11825,10 @@ +@@ -11930,8 +11803,10 @@ # CONFIG_HEADERS_INSTALL is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set CONFIG_SECTION_MISMATCH_WARN_ONLY=y @@ -1964,7 +2081,7 @@ # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set # end of Compile-time checks and compiler options -@@ -11996,6 +11893,8 @@ +@@ -11996,6 +11871,8 @@ # CONFIG_DEBUG_VIRTUAL is not set CONFIG_DEBUG_MEMORY_INIT=y # CONFIG_DEBUG_PER_CPU_MAPS is not set @@ -1973,7 +2090,7 @@ # CONFIG_MEM_ALLOC_PROFILING is not set CONFIG_HAVE_ARCH_KASAN=y CONFIG_HAVE_ARCH_KASAN_VMALLOC=y -@@ -12008,6 +11907,7 @@ +@@ -12008,6 +11885,7 @@ CONFIG_KFENCE_SAMPLE_INTERVAL=100 CONFIG_KFENCE_NUM_OBJECTS=255 CONFIG_KFENCE_DEFERRABLE=y @@ -1981,7 +2098,7 @@ CONFIG_KFENCE_STRESS_TEST_FAULTS=0 CONFIG_HAVE_ARCH_KMSAN=y # end of Memory Debugging -@@ -12022,7 +11922,6 @@ +@@ -12022,7 +11900,6 @@ CONFIG_PANIC_TIMEOUT=0 CONFIG_LOCKUP_DETECTOR=y CONFIG_SOFTLOCKUP_DETECTOR=y @@ -1989,7 +2106,7 @@ # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y CONFIG_HARDLOCKUP_DETECTOR=y -@@ -12097,7 +11996,6 @@ +@@ -12097,7 +11974,6 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60 CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0 # CONFIG_RCU_CPU_STALL_CPUTIME is not set @@ -1997,7 +2114,7 @@ # CONFIG_RCU_TRACE is not set # CONFIG_RCU_EQS_DEBUG is not set # end of RCU Debugging -@@ -12282,7 +12180,6 @@ +@@ -12282,7 +12158,6 @@ # CONFIG_TEST_OBJPOOL is not set CONFIG_ARCH_USE_MEMTEST=y CONFIG_MEMTEST=y diff --git a/documentation/linux_configuration.pdf b/documentation/linux_configuration.pdf index 3c5c031..dd94d7a 100644 --- a/documentation/linux_configuration.pdf +++ b/documentation/linux_configuration.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:44714bcb8161dc63a003feeab5a6edc5d156e13a4be4f503587ac370197717a6 -size 449775 +oid sha256:8057a69cd1dde30476e3312a034df73c28b8e5e7fe98b0077e0704e097d8028c +size 528564 diff --git a/documentation/linux_configuration.tex b/documentation/linux_configuration.tex index 40e7a79..d23dfee 100644 --- a/documentation/linux_configuration.tex +++ b/documentation/linux_configuration.tex @@ -15,7 +15,11 @@ %linux_configuration_03_processor_type_and_features, linux_configuration_04_mitigations_for_cpu_vulnerabilities, linux_configuration_05_power_management_and_acpi_options, - %linux_configuration_09_general_architecture-dependent_options, + linux_configuration_06_bus_options, + linux_configuration_07_binary_emulations, + linux_configuration_08_virtualization, + linux_configuration_09_general_architecture-dependent_options, + linux_configuration_10_enable_loadable_module_support, %linux_configuration_11_enable_the_block_layer, %linux_configuration_12_executable_file_formats, %linux_configuration_13_memory_management_options, diff --git a/documentation/linux_configuration_06_bus_options.tex b/documentation/linux_configuration_06_bus_options.tex index f02a981..749f90e 100644 --- a/documentation/linux_configuration_06_bus_options.tex +++ b/documentation/linux_configuration_06_bus_options.tex @@ -1,14 +1,24 @@ -%since Linux 6.14 +% linux_configuration_06_bus_options.tex +% since Linux 6.16 \section{Bus options (PCI etc.) \texorpdfstring{$\rightarrow$}{->}} \textit{Bus-Optionen (PCI usw.)} +%6.1 \subsection{Support mmconfig PCI config space access} CONFIG\_PCI\_MMCONFIG [=y] \textbf{[Y]}\\ -(Unterstützung des mmconfig PCI"=Konfigurationsraumzugriffs)\\ -\textit{Für diese Option gibt es keine Hilfe.} -\english{There is no help available for this option.} +Fügt Unterstützung für den Zugriff auf den PCI-Konfigurationsbereich als Speicherzuordnungsbereich hinzu. +Dies ist die empfohlene Methode, wenn das System dies unterstützt (es muss über PCI Express und ACPI verfügen, damit diese Option verfügbar ist). +In dem unwahrscheinlichen Fall, dass die Aktivierung dieser Konfigurationsoption Probleme verursacht, kann der Mechanismus mit dem Befehlszeilenparameter \texttt{pci=nommconf} deaktiviert werden. +Geben Sie nur dann N ein, wenn Sie sicher sind, dass Ihre Plattform diese Zugriffsmethode nicht unterstützt oder wenn dadurch Probleme verursacht werden. +Andernfalls geben Sie Y ein. +\english{Add support for accessing the PCI configuration space as a memory mapped area. +It is the recommended method if the system supports this (it must have PCI Express and ACPI for it to be available). +In the unlikely case that enabling this configuration option causes problems, the mechanism can be switched off with the 'pci=nommconf' command line parameter. +Say N only if you are sure that your platform does not support this access method or you have problems caused by it. +Say Y otherwise.} +%6.2 \subsection{Read CNB20LE Host Bridge Windows} CONFIG\_PCI\_CNB20LE\_QUIRK [=n] \textbf{[N]}\\ Auslesen der PCI-Fenster aus der CNB20LE-Host-Bridge. @@ -24,21 +34,22 @@ This allows PCI hotplug to work on systems with the CNB20LE chipset which do not There's no public spec for this chipset, and this functionality is known to be incomplete. You should say N unless you know you need this.} +%6.3 \subsection{ISA bus support on modern systems} CONFIG\_ISA\_BUS [=n] \textbf{[N]}\\ Zeigt ISA-Bus-Gerätetreiber und Optionen zur Auswahl und Konfiguration an. Aktivieren Sie diese Option, wenn Ihr Zielrechner über einen ISA-Bus verfügt. -ISA ist ein älteres System, das von PCI und neueren Busarchitekturen verdrängt wurde - wenn Ihr Zielrechner modern ist, hat er wahrscheinlich keinen ISA-Bus. +ISA ist ein älteres System, das von PCI und neueren Busarchitekturen verdrängt wurde -- wenn Ihr Zielrechner modern ist, hat er wahrscheinlich keinen ISA-Bus. Wenn Sie unsicher sind, sagen Sie N. \english{Expose ISA bus device drivers and options available for selection and configuration. Enable this option if your target machine has an ISA bus. -ISA is an older system, displaced by PCI and newer bus architectures -- -if your target machine is modern, it probably does not have an ISA bus.\\ +ISA is an older system, displaced by PCI and newer bus architectures -- if your target machine is modern, it probably does not have an ISA bus.\\ If unsure, say N.} +%6.4 \subsection{ISA-style DMA support} CONFIG\_ISA\_DMA\_API [=y] \textbf{[Y]}\\ Aktiviert DMA-Unterstützung im ISA-Format für Geräte, die solche Controller benötigen. Wenn Sie unsicher sind, sagen Sie Y. \english{Enables ISA-style DMA support for devices requiring such controllers. -If unsure, say Y.} \ No newline at end of file +If unsure, say Y.} diff --git a/documentation/linux_configuration_07_binary_emulations.tex b/documentation/linux_configuration_07_binary_emulations.tex index 9d6d2e5..0485df4 100644 --- a/documentation/linux_configuration_07_binary_emulations.tex +++ b/documentation/linux_configuration_07_binary_emulations.tex @@ -1,16 +1,18 @@ -%since Linux 6.14 +% linux_configuration_07_binary_emulations.tex +% since Linux 6.16 \section{Binary Emulations \texorpdfstring{$\rightarrow$}{->}} \textit{Binäre Emulationen} +%7.1 \subsection{IA32 Emulation} -CONFIG\_IA32\_EMULATION [=y] \textbf{[N]}\\ +CONFIG\_IA32\_EMULATION \colorbox{yellow!80}{[=y] \textbf{[N]}}\\ Code einbinden, um ältere 32-Bit-Programme unter einem 64-Bit-Kernel auszuführen. -Sie sollten dies wahrscheinlich aktivieren, es sei denn, Sie sind sich zu 100~\% sicher, -dass Sie keine 32-Bit-Programme mehr haben. +Sie sollten dies wahrscheinlich aktivieren, es sei denn, Sie sind sich zu \qty{100}{\percent} sicher, dass Sie keine 32-Bit-Programme mehr haben. \english{Include code to run legacy 32-bit programs under a 64-bit kernel. You should likely turn this on, unless you're 100\% sure that you don't have any 32-bit programs left.} +%7.2 \subsubsection{IA32 emulation disabled by default} CONFIG\_IA32\_EMULATION\_DEFAULT\_DISABLED [=n] \textbf{[N]}\\ Deaktivieren Sie die IA32-Emulation standardmäßig. @@ -20,11 +22,10 @@ Wenn Sie unsicher sind, belassen Sie den Standardwert. This prevents loading 32-bit processes and access to 32-bit syscalls. If unsure, leave it to its default value.} +%7.3 \subsection{x32 ABI for 64-bit mode} -CONFIG\_X86\_X32\_ABI [=n] \textbf{[N]}\\ +CONFIG\_X86\_X32\_ABI \colorbox{yellow!80}{[=y] \textbf{[N]}}\\ Fügen Sie Code ein, um Binärdateien für die native 32-Bit-ABI x32 für 64-Bit-Prozessoren auszuführen. -Ein x32-Prozess erhält Zugriff auf die vollständige 64-Bit-Registerdatei und den breiten Datenpfad, -während Zeiger auf 32~Bit belassen werden, um den Speicherbedarf zu verringern. +Ein x32-Prozess erhält Zugriff auf die vollständige 64-Bit-Registerdatei und den breiten Datenpfad, während Zeiger auf 32~Bit belassen werden, um den Speicherbedarf zu verringern. \english{Include code to run binaries for the x32 native 32-bit ABI for 64-bit processors. -An x32 process gets access to the full 64-bit register file and wide data path while leaving -pointers at 32 bits for smaller memory footprint.} \ No newline at end of file +An x32 process gets access to the full 64-bit register file and wide data path while leaving pointers at 32 bits for smaller memory footprint.} diff --git a/documentation/linux_configuration_08_virtualization.tex b/documentation/linux_configuration_08_virtualization.tex index 8489d73..61158e3 100644 --- a/documentation/linux_configuration_08_virtualization.tex +++ b/documentation/linux_configuration_08_virtualization.tex @@ -1,25 +1,23 @@ -%since Linux 6.14 +% linux_configuration_08_virtualization.tex +% since Linux 6.16 + % 8.Virtualization \section{Virtualization \texorpdfstring{$\rightarrow$}{->}} CONFIG\_VIRTUALIZATION [=y] \textbf{[Y]}\\ -Sagen Sie hier Y, um Optionen für die Verwendung Ihres Linux-Hosts zur Ausführung anderer -Betriebssysteme in virtuellen Maschinen (Gäste) zu erhalten. Diese Option allein fügt keinen -Kernel-Code hinzu. Wenn Sie N sagen, werden alle Optionen in diesem Untermenü übersprungen -und deaktiviert. -\english{Say Y here to get to see options for using your Linux host to run other -operating systems inside virtual machines (guests). +Sagen Sie hier Y, um Optionen für die Verwendung Ihres Linux-Hosts zur Ausführung anderer Betriebssysteme in virtuellen Maschinen (Gäste) zu erhalten. Diese Option allein fügt keinen Kernel-Code hinzu. +Wenn Sie N sagen, werden alle Optionen in diesem Untermenü übersprungen und deaktiviert. +\english{Say Y here to get to see options for using your Linux host to run other operating systems inside virtual machines (guests). This option alone does not add any kernel code.\\ If you say N, all options in this submenu will be skipped and disabled.} %8.1 \subsection{Kernel-based Virtual Machine (KVM) support} CONFIG\_KVM [=m] \textbf{[M]}\\ -Unterstützung für das Hosten vollständig virtualisierter Gastmaschinen mit -Hardware"=Virtualisierungserweiterungen. Sie benötigen einen relativ aktuellen Prozessor mit -Virtualisierungserweiterungen. Außerdem müssen Sie eines oder mehrere der unten aufgeführten -Prozessormodule auswählen. Dieses Modul ermöglicht den Zugriff auf die Hardware-Funktionen -über einen Geräteknoten namens /dev/kvm. Um dies als Modul zu kompilieren, wählen Sie hier M: -Das Modul wird \texttt{kvm} heißen.\\ +Unterstützung für das Hosten vollständig virtualisierter Gastmaschinen mit Hardware"=Virtualisierungserweiterungen. +Sie benötigen einen relativ aktuellen Prozessor mit Virtualisierungserweiterungen. +Außerdem müssen Sie eines oder mehrere der unten aufgeführten Prozessormodule auswählen. +Dieses Modul ermöglicht den Zugriff auf die Hardware-Funktionen über einen Geräteknoten namens \texttt{/dev/kvm}. +Um dies als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{kvm} heißen.\\ Wenn Sie unsicher sind, sagen Sie N. \english{Support hosting fully virtualized guest machines using hardware virtualization extensions. You will need a fairly recent processor equipped with virtualization extensions. @@ -48,96 +46,77 @@ If unsure, say ``N''.} \subsubsection{KVM for Intel (and compatible) processors support} CONFIG\_KVM\_INTEL [=m] \textbf{[M]}\\ -Bietet Unterstützung für KVM auf Prozessoren, die mit Intels VT-Erweiterungen, auch bekannt -als Virtual Machine Extensions (VMX), ausgestattet sind. -Um dies als Modul zu kompilieren, wählen Sie hier M: -Das Modul wird \texttt{kvm-intel} genannt. -\english{Provides support for KVM on processors equipped with Intel's VT extensions, -a.k.a. Virtual Machine Extensions (VMX).\\ +Bietet Unterstützung für KVM auf Prozessoren, die mit Intels VT-Erweiterungen, auch bekannt als Virtual Machine Extensions (VMX), ausgestattet sind. +Um dies als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{kvm-intel} genannt. +\english{Provides support for KVM on processors equipped with Intel's VT extensions, a.k.a. Virtual Machine Extensions (VMX).\\ To compile this as a module, choose M here: the module will be called kvm-intel.} \paragraph{Check that guests do not receive \#VE exceptions}\mbox{}\\ CONFIG\_KVM\_INTEL\_PROVE\_VE [=n] \textbf{[N]}\\ -Überprüft, dass der KVM-Seitentabellen-Verwaltungscode Gäste nicht fälschlicherweise eine -Virtualisierungsausnahme erhalten lässt. +Überprüft, dass der KVM-Seitentabellen-Verwaltungscode Gäste nicht fälschlicherweise eine Virtualisierungsausnahme erhalten lässt. Virtualisierungsausnahmen werden vom Hypervisor abgefangen und nicht in den Gast injiziert.\\ -Hinweis: einige CPUs scheinen falsche EPT Violations \#VEs zu erzeugen, die KVMs WARN auslösen, insbesondere mit -\texttt{eptad=0} und/oder verschachtelter Virtualisierung.\\ +Hinweis: einige CPUs scheinen falsche EPT Violations \#VEs zu erzeugen, die KVMs WARN auslösen, insbesondere mit \texttt{eptad=0} und/oder verschachtelter Virtualisierung.\\ Wenn Sie unsicher sind, sagen Sie N. \english{Checks that KVM's page table management code will not incorrectly let guests receive a virtualization exception. Virtualization exceptions will be trapped by the hypervisor rather than injected in the guest.\\ -Note: some CPUs appear to generate spurious EPT Violations \#VEs that trigger KVM's WARN, -in particular with eptad=0 and/or nested virtualization.\\ +Note: some CPUs appear to generate spurious EPT Violations \#VEs that trigger KVM's WARN, in particular with eptad=0 and/or nested virtualization.\\ If unsure, say N.} \paragraph{Software Guard eXtension (SGX) Virtualization}$~$\\ CONFIG\_X86\_SGX\_KVM [=y] \textbf{[Y]}\\ -Ermöglicht KVM-Gästen, SGX-Enklaven zu erstellen. Dies schließt die Unterstützung ein, -\glqq rohen\grqq{}, nicht wiederverwendbaren Enklavenspeicher für Gäste über einen Geräteknoten, -z.\,B. /dev/sgx\_vepc, freizugeben. Wenn Sie unsicher sind, sagen Sie N. +Ermöglicht KVM-Gästen, SGX-Enklaven zu erstellen. +Dies schließt die Unterstützung ein, \glqq rohen\grqq{}, nicht wiederverwendbaren Enklavenspeicher für Gäste über einen Geräteknoten, z.\,B. \texttt{/dev/sgx\_vepc}, freizugeben. +Wenn Sie unsicher sind, sagen Sie N. \english{Enables KVM guests to create SGX enclaves.\\ This includes support to expose ``raw'' unreclaimable enclave memory to guests via a device node, e.g. /dev/sgx\_vepc. If unsure, say N.} -\subsubsection{KVM for AMD processors support} +\subsection{KVM for AMD processors support} CONFIG\_KVM\_AMD [=m] \textbf{[M]}\\ -Bietet Unterstützung für KVM auf Prozessoren, die mit Intels VT-Erweiterungen, auch bekannt -Bietet Unterstützung für KVM auf AMD-Prozessoren, die mit den AMD-V (SVM)-Erweiterungen -ausgestattet sind. Um dies als Modul zu kompilieren, wählen Sie hier M: -Das Modul wird \texttt{kvm-amd} genannt. +Bietet Unterstützung für KVM auf AND-Prozessoren, die mit den AMD-V (SVM)-Erweiterungen ausgestattet sind. +Um dies als Modul zu kompilieren, wählen Sie hier M: Das Modul wird \texttt{kvm-amd} genannt. \english{Provides support for KVM on AMD processors equipped with the AMD-V (SVM) extensions.\\ To compile this as a module, choose M here: the module will be called \texttt{kvm-amd}.} -\paragraph{AMD Secure Encrypted Virtualization (SEV) support}$~$\\ +\subsubsection{AMD Secure Encrypted Virtualization (SEV) support} CONFIG\_KVM\_AMD\_SEV [=y] \textbf{[N]}\\ -Bietet Unterstützung für den Start von verschlüsselten VMs (SEV) und verschlüsselten VMs -mit verschlüsseltem Status (SEV-ES) auf AMD-Prozessoren. -\english{Provides support for launching encrypted VMs which use Secure Encrypted Virtualization (SEV), -Secure Encrypted Virtualization with Encrypted State (SEV-ES), and Secure Encrypted Virtualization with -Secure Nested Paging (SEV-SNP) technologies on AMD processors.} +Bietet Unterstützung für das Starten verschlüsselter VMs, die die Technologien Secure Encrypted Virtualization (SEV), Secure Encrypted Virtualization with Encrypted State (SEV-ES) und Secure Encrypted Virtualization with Secure Nested Paging (SEV-SNP) auf AMD-Prozessoren verwenden. +\english{Provides support for launching encrypted VMs which use Secure Encrypted Virtualization (SEV), Secure Encrypted Virtualization with Encrypted State (SEV-ES), and Secure Encrypted Virtualization with Secure Nested Paging (SEV-SNP) technologies on AMD processors.} -\subsubsection{System Management Mode emulation} +\subsection{System Management Mode emulation} CONFIG\_KVM\_SMM [=y] \textbf{[Y]}\\ -Bietet Unterstützung für KVM zur Emulation des Systemverwaltungsmodus (SMM) in virtuellen -Maschinen. Dies kann von der Firmware der virtuellen Maschine verwendet werden, um UEFI Secure -Boot zu implementieren.\\ -Wenn Sie unsicher sind, sagen Sie N. +Bietet Unterstützung für KVM zur Emulation des Systemverwaltungsmodus (SMM) in virtuellen Maschinen. +Dies kann von der Firmware der virtuellen Maschine zur Implementierung des UEFI Secure Boot verwendet werden.\\ +Wenn Sie unsicher sind, geben Sie Y ein. \english{Provides support for KVM to emulate System Management Mode (SMM) in virtual machines. This can be used by the virtual machine firmware to implement UEFI secure boot.\\ If unsure, say Y.} -\subsubsection{Support for Microsoft Hypter-V emulation} +\subsection{Support for Microsoft Hyper-V emulation} CONFIG\_KVM\_HYPERV [=y] \textbf{[Y]}\\ Bietet KVM-Unterstützung für die Emulation von Microsoft Hyper-V. -Dadurch kann KVM eine Teilmenge der paravirtualisierten Schnittstellen bereitstellen, -die in der Hyper-V Hypervisor Top-Level Functional Specification (TLFS) definiert sind:\\ +Dadurch kann KVM eine Teilmenge der paravirtualisierten Schnittstellen bereitstellen, die in der Hyper-V Hypervisor Top-Level Functional Specification (TLFS) definiert sind:\\ \url{https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/tlfs}\\ -Diese Schnittstellen sind für das korrekte und leistungsfähige Funktionieren von Windows- und Hyper-V-Gästen -auf KVM erforderlich.\\ +Diese Schnittstellen sind für das korrekte und leistungsfähige Funktionieren von Windows- und Hyper-V-Gästen auf KVM erforderlich.\\ Wenn Sie unsicher sind, sagen Sie Y. \english{Provides KVM support for emulating Microsoft Hyper-V. -This allows KVM to expose a subset of the paravirtualized interfaces defined in the -Hyper-V Hypervisor Top-Level Functional Specification (TLFS):\\ +This allows KVM to expose a subset of the paravirtualized interfaces defined in the Hyper-V Hypervisor Top-Level Functional Specification (TLFS):\\ \url{https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/tlfs}\\ These interfaces are required for the correct and performant functioning of Windows and Hyper-V guests on KVM.\\ If unsure, say ``Y''.} -\subsubsection{Support for Xen hypercall interface} +\subsection{Support for Xen hypercall interface} CONFIG\_KVM\_XEN [=y] \textbf{[Y]}\\ -Bietet KVM-Unterstützung für das Hosten von Xen HVM-Gästen und die Weitergabe von -Xen-Hyper\-auf\-rufen an den Userspace. Im Zweifelsfall sagen Sie N. +Bietet KVM-Unterstützung für das Hosten von Xen HVM-Gästen und die Weitergabe von Xen-Hyperaufrufen an den Userspace. +Im Zweifelsfall sagen Sie N. \english{Provides KVM support for the hosting Xen HVM guests and passing Xen hypercalls to userspace.\\ If in doubt, say ``N''.} -\subsubsection{Prove KVM MMU correctness} +\subsection{Prove KVM MMU correctness} CONFIG\_KVM\_PROVE\_MMU [=n] \textbf{[N]}\\ -Ermöglicht Laufzeit-Behauptungen in KVMs MMU, die zu kostspielig sind, um sie in irgendetwas zu aktivieren, -das einer Produktionsumgebung auch nur im Entferntesten ähnelt, z.\,B. dieser Gates-Code, der verifiziert, -dass eine freizugebende Seitentabelle keine vorhandenen SPTEs hat.\\ +Ermöglicht Laufzeit-Behauptungen in KVMs MMU, die zu kostspielig sind, um sie in irgendetwas zu aktivieren, das einer Produktionsumgebung auch nur im Entferntesten ähnelt, z.\,B. dieser Gates-Code, der verifiziert, dass eine freizugebende Seitentabelle keine vorhandenen SPTEs hat.\\ Im Zweifelsfall sagen Sie einfach N. -\english{Enables runtime assertions in KVM's MMU that are too costly to enable in anything remotely -resembling a production environment, e.g. this gates code that verifies a to-be-freed page table doesn't have any -present SPTEs.\\ +\english{Enables runtime assertions in KVM's MMU that are too costly to enable in anything remotely resembling a production environment, e.g. this gates code that verifies a to-be-freed page table doesn't have any present SPTEs.\\ If in doubt, say ``N''.} \subsection{Maximum number of vCPUs per KVM guest} diff --git a/documentation/linux_configuration_09_general_architecture-dependent_options.tex b/documentation/linux_configuration_09_general_architecture-dependent_options.tex index e945890..83c075a 100644 --- a/documentation/linux_configuration_09_general_architecture-dependent_options.tex +++ b/documentation/linux_configuration_09_general_architecture-dependent_options.tex @@ -1,13 +1,15 @@ -%since Linux 6.14 % linux_configuration_09_general_architecture-dependent_options.tex +% since Linux 6.16 + \section{General architecture-dependent options \texorpdfstring{$\rightarrow$}{->}} (Allgemeine architekturabhängige Optionen) +%9.1 Kprobes \subsection{Kprobes} CONFIG\_KPROBES [=y] \textbf{[Y]}\\ Mit Kprobes können Sie an fast jeder Kerneladresse trappen und eine Callback-Funktion ausführen. -register\_kprobe() legt einen Probepoint fest und spezifiziert den Callback. +\texttt{register\_kprobe()} legt einen Probepoint fest und spezifiziert den Callback. Kprobes ist nützlich für Kernel-Debugging, nicht-intrusive Instrumentierung und Tests.\\ Im Zweifelsfall sagen Sie N. \english{Kprobes allows you to trap at almost any kernel address and execute a callback function. @@ -15,23 +17,18 @@ register\_kprobe() establishes a probepoint and specifies the callback. Kprobes is useful for kernel debugging, non-intrusive instrumentation and testing. If in doubt, say ``N''.} +%9.2 \subsection{Optimize very unlikely/likely branches} CONFIG\_JUMP\_LABEL [=y] \textbf{[Y]}\\ -Diese Option ermöglicht eine transparente Verzweigungsoptimierung, die die Ausführung bestimmter -fast-immer-wahrer oder fast-immer-falscher Verzweigungsbedingungen im Kernel noch billiger macht. -Bestimmte leistungsempfindliche Kernel-Codes wie Trace-Points, Scheduler-Funktionen, Netzwerk-Code -und KVM haben solche Verzweigungen und bieten Unterstützung für diese Optimierungstechnik. -Wenn festgestellt wird, dass der Compiler \glqq asm goto\grqq{} unterstützt, kompiliert der Kernel -solche Verzweigungen mit einer einfachen nop-Anweisung. Wenn das Bedingungsflag auf true gesetzt wird, -wird der nop-Befehl in einen Sprungbefehl umgewandelt, um den bedingten Befehlsblock auszuführen. -Diese Technik senkt den Overhead und die Belastung der Verzweigungsvorhersage des Prozessors und macht -den Kernel im Allgemeinen schneller. Die Aktualisierung der Bedingung ist zwar langsamer, aber das -kommt immer sehr selten vor. (Bei 32-Bit-x86 können die erforderlichen Optionen, die zu den -Compiler-Flags hinzugefügt werden, die Größe des Kernels leicht erhöhen). -\english{This option enables a transparent branch optimization that makes certain almost-always-true or almost-always-false branch -conditions even cheaper to execute within the kernel.\\ -Certain performance-sensitive kernel code, such as trace points, scheduler functionality, -networking code and KVM have such branches and include support for this optimization technique.\\ +Diese Option ermöglicht eine transparente Verzweigungsoptimierung, die die Ausführung bestimmter fast-immer-wahrer oder fast-immer-falscher Verzweigungsbedingungen im Kernel noch billiger macht. +Bestimmte leistungsempfindliche Kernel-Codes wie Trace-Points, Scheduler-Funktionen, Netzwerk-Code und KVM haben solche Verzweigungen und bieten Unterstützung für diese Optimierungstechnik. +Wenn festgestellt wird, dass der Compiler \glqq asm goto\grqq{} unterstützt, kompiliert der Kernel solche Verzweigungen mit einer einfachen nop-Anweisung. +Wenn das Bedingungsflag auf true gesetzt wird, wird der nop-Befehl in einen Sprungbefehl umgewandelt, um den bedingten Befehlsblock auszuführen. +Diese Technik senkt den Overhead und die Belastung der Verzweigungsvorhersage des Prozessors und macht den Kernel im Allgemeinen schneller. +Die Aktualisierung der Bedingung ist zwar langsamer, aber das kommt immer sehr selten vor. +(Bei 32-Bit-x86 können die erforderlichen Optionen, die zu den Compiler-Flags hinzugefügt werden, die Größe des Kernels leicht erhöhen). +\english{This option enables a transparent branch optimization that makes certain almost-always-true or almost-always-false branch conditions even cheaper to execute within the kernel.\\ +Certain performance-sensitive kernel code, such as trace points, scheduler functionality, networking code and KVM have such branches and include support for this optimization technique.\\ If it is detected that the compiler has support for ``asm goto'', the kernel will compile such branches with just a nop instruction. When the condition flag is toggled to true, the nop will be converted to a jump instruction to execute the conditional block of instructions.\\ This technique lowers overhead and stress on the branch prediction of the processor and generally makes the kernel faster. @@ -43,32 +40,30 @@ CONFIG\_STATIC\_KEYS\_SELFTEST [=n] \textbf{[N]}\\ Bootzeit-Selbsttest des Branch-Patching-Codes. \english{Boot time self-test of the branch patching code.} +%9.3 \subsection{Static call selftest} CONFIG\_STATIC\_CALL\_SELFTEST [=n] \textbf{[N]}\\ Bootzeit-Selbsttest des Call-Patching-Codes. \english{Boot time self-test of the call patching code.} +%9.4 \subsection{Enable seccomp to safely execute untrusted bytecode} -CONFIG\_SECCOMP [=n] \textbf{[N]}\\ -Diese Kernel-Funktion ist nützlich für numerische Anwendungen, die während ihrer Ausführung -mit nicht vertrauenswürdigem Bytecode umgehen müssen. Durch die Verwendung von Pipes oder anderen -Transporten, die dem Prozess als Dateideskriptoren zur Verfügung gestellt werden und die -Lese-/Schreib-Syscalls unterstützen, ist es möglich, diese Anwendungen mit seccomp in ihrem eigenen -Adressraum zu isolieren. Sobald seccomp über prctl(PR\_SET\_SECCOMP) oder den seccomp()-Syscall -aktiviert ist, kann es nicht mehr deaktiviert werden, und die Task darf nur einige wenige sichere -Syscalls ausführen, die für jeden seccomp-Modus definiert sind. Wenn Sie unsicher sind, sagen Sie Y. +CONFIG\_SECCOMP [=y] \textbf{[Y]}\\ +Diese Kernel-Funktion ist nützlich für numerische Anwendungen, die während ihrer Ausführung mit nicht vertrauenswürdigem Bytecode umgehen müssen. +Durch die Verwendung von Pipes oder anderen Transporten, die dem Prozess als Dateideskriptoren zur Verfügung stehen und die Lese-/Schreib-Syscalls unterstützen, ist es möglich, diese Anwendungen mit seccomp in ihrem eigenen Adressraum zu isolieren. +Sobald seccomp über prctl(PR\_SET\_SECCOMP) oder den seccomp()-Syscall aktiviert ist, kann es nicht mehr deaktiviert werden, und die Aufgabe darf nur einige wenige sichere Syscalls ausführen, die für jeden seccomp-Modus definiert sind. +Wenn Sie unsicher sind, sagen Sie Y. \english{This kernel feature is useful for number crunching applications that may need to handle untrusted bytecode during their execution. -By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, -it's possible to isolate those applications in their own address space using seccomp. -Once seccomp is enabled via prctl(PR\_SET\_SECCOMP) or the seccomp() syscall, it cannot be disabled and the task is only allowed to execute -a few safe syscalls defined by each seccomp mode.\\ +By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. +Once seccomp is enabled via prctl(PR\_SET\_SECCOMP) or the seccomp() syscall, it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode.\\ If unsure, say Y.} \subsubsection{Show seccomp filter cache status in /proc/pid/seccomp\_cache} CONFIG\_SECCOMP\_CACHE\_DEBUG [=n] \textbf{[N]}\\ -Dies ermöglicht der Schnittstelle /proc/pid/seccomp\_cache die Überwachung der -seccomp-Cache-Daten. Das Dateiformat kann sich ändern. Zum Lesen der Datei ist -CAP\_SYS\_ADMIN erforderlich. Diese Option ist nur zur Fehlersuche gedacht. +Dies ermöglicht der Schnittstelle \texttt{/proc/pid/seccomp\_cache} die Überwachung der seccomp-Cache-Daten. +Das Dateiformat kann sich ändern. +Zum Lesen der Datei ist \texttt{CAP\_SYS\_ADMIN} erforderlich. +Diese Option ist nur zur Fehlersuche gedacht. Die Aktivierung birgt das Risiko, dass ein Angreifer die seccomp-Filterlogik ableiten kann.\\ Wenn Sie unsicher sind, sagen Sie N. \english{This enables the /proc/pid/seccomp\_cache interface to monitor seccomp cache data. @@ -78,50 +73,40 @@ This option is for debugging only. Enabling presents the risk that an adversary may be able to infer the seccomp filter logic.\\ If unsure, say N.} +%9.5 \subsection{Stack Protector buffer overflow detection} -CONFIG\_STACKPROTECTOR [=y] \textbf{[Y]}\\ +CONFIG\_STACKPROTECTOR \colorbox{yellow!80}{[=y] \textbf{[N]}}\\ Diese Option schaltet die GCC-Funktion \glqq stack-protector\grqq{} ein. -Diese Funktion legt am Anfang von Funktionen einen Canary-Wert (Kanarienvogelwert) auf den -Stack kurz vor der -Rücksprungadresse und überprüft den Wert kurz vor der eigentlichen Rückkehr. Stack-basierte -Pufferüberläufe (die diese Rücksprungadresse überschreiben müssen) überschreiben nun auch den -Canary-Wert, was erkannt wird und der Angriff wird dann durch eine Kernel-Panik neutralisiert. -Bei Funktionen, die ein 8-Byte- oder größeres Zeichenarray auf dem Stack haben, wird die Logik -des Stack-Protector-Canarys hinzugefügt. Diese Funktion erfordert gcc Version 4.2 oder höher, -oder eine gcc-Distribution, die die Funktion zurückportiert hat (\texttt{-fstack-protector}). -Auf einem x86-\glqq defconfig\grqq{}-Build fügt diese Funktion Canary-Prüfungen zu etwa \qty{3}{\percent} -aller Kernel-Funktionen hinzu, was die Kernel-Codegröße um etwa \qty{0,3}{\percent} erhöht. +Diese Funktion legt am Anfang von Funktionen einen Canary-Wert (Kanarienvogelwert) auf den Stack kurz vor der Rücksprungadresse und überprüft den Wert kurz vor der eigentlichen Rückkehr. +Stack-basierte Pufferüberläufe (die diese Rücksprungadresse überschreiben müssen) überschreiben nun auch den Canary-Wert, was erkannt wird und der Angriff wird dann durch eine Kernel-Panik neutralisiert. +Bei Funktionen, die ein 8-Byte- oder größeres Zeichenarray auf dem Stack haben, wird die Logik des Stack-Protector-Canarys hinzugefügt. +Diese Funktion erfordert gcc Version 4.2 oder höher, oder eine gcc-Distribution, die die Funktion zurückportiert hat (\texttt{-fstack-protector}). +Auf einem x86-\glqq defconfig\grqq{}-Build fügt diese Funktion Canary-Prüfungen zu etwa \qty{3}{\percent} aller Kernel-Funktionen hinzu, was die Kernel-Codegröße um etwa \qty{0,3}{\percent} erhöht. \english{This option turns on the ``stack-protector'' GCC feature. -This feature puts, at the beginning of functions, a canary value on the stack just before the return address, -and validates the value just before actually returning. -Stack based buffer overflows (that need to overwrite this return address) now also overwrite the canary, which gets detected -and the attack is then neutralized via a kernel panic.\\ +This feature puts, at the beginning of functions, a canary value on the stack just before the return address, and validates the value just before actually returning. +Stack based buffer overflows (that need to overwrite this return address) now also overwrite the canary, which gets detected and the attack is then neutralized via a kernel panic.\\ Functions will have the stack-protector canary logic added if they have an 8-byte or larger character array on the stack.\\ This feature requires gcc version 4.2 or above, or a distribution gcc with the feature backported (``-fstack-protector''). -On an x86 ``defconfig'' build, this feature adds canary checks to about 3\% of all kernel functions, -which increases kernel code size by about 0.3\%.} +On an x86 ``defconfig'' build, this feature adds canary checks to about 3\% of all kernel functions, which increases kernel code size by about 0.3\%.} \subsubsection{Strong Stack Protector} CONFIG\_STACKPROTECTOR\_STRONG [=y] \textbf{[Y]}\\ Bei Funktionen wird die Stack-Protector-Canary-Logik unter einer der folgenden Bedingungen hinzugefügt: \begin{itemize} -\item[-] die Adresse einer lokalen Variablen wird als Teil der rechten Seite einer Zuweisung oder eines -Funktionsarguments verwendet +\item[-] die Adresse einer lokalen Variablen wird als Teil der rechten Seite einer Zuweisung oder eines Funktionsarguments verwendet \item[-] die lokale Variable ist ein Array (oder eine Union, die ein Array enthält), unabhängig von Typ oder Länge des Arrays \item[-] Lokale Variablen werden als Register verwendet \end{itemize} -Diese Funktion erfordert gcc Version 4.9 oder höher, oder eine gcc-Distribution, die die Funktion -zurück\-por\-tiert hat (\texttt{-fstack-protector-strong}). -Auf einem x86-\glqq defconfig\grqq{}-Build fügt diese Funktion Canary-Prüfungen zu etwa \qty{20}{\percent} aller -Kernel-Funktionen hinzu, was die Größe des Kernel-Codes um etwa \qty{2}{\percent} erhöht. +Diese Funktion erfordert gcc Version 4.9 oder höher, oder eine gcc-Distribution, die die Funktion zurückportiert hat (\texttt{-fstack-protector-strong}). +Auf einem x86-\glqq defconfig\grqq{}-Build fügt diese Funktion Canary-Prüfungen zu etwa \qty{20}{\percent} aller Kernel-Funktionen hinzu, was die Größe des Kernel-Codes um etwa \qty{2}{\percent} erhöht. \english{Functions will have the stack-protector canary logic added in any of the following conditions:\\ -- local variable's address used as part of the right hand side of an assignment or function argument\\ -- local variable is an array (or union containing an array), regardless of array type or length\\ -- uses register local variables\\ This feature requires gcc version 4.9 or above, or a distribution gcc with the feature backported (``-fstack-protector-strong'').\\ -On an x86 ``defconfig'' build, this feature adds canary checks to about 20\% of all kernel functions, -which increases the kernel code size by about 2\%.} +On an x86 ``defconfig'' build, this feature adds canary checks to about 20\% of all kernel functions, which increases the kernel code size by about 2\%.} +%9.6 \subsection{Link Time Optimization (LTO) () \texorpdfstring{$\rightarrow$}{->}} \textit{Optimierung der Verbindungszeit} Diese Option aktiviert die Verbindungszeitoptimierung (Link Time Optimization, LTO), die es dem Compiler ermöglicht, Binärdateien global zu optimieren. @@ -134,27 +119,25 @@ CONFIG\_LTO\_NONE [=y] \textbf{[Y]}\\ Erstellen Sie den Kernel normal, ohne Link Time Optimization (LTO). \english{Build the kernel normally, without Link Time Optimization (LTO).} +%9.7 \subsection{Number of bits to use for ASLR of mmap base address} CONFIG\_ARCH\_MMAP\_RND\_BITS [=28] \textbf{[28]}\\* -Dieser Wert kann verwendet werden, um die Anzahl der Bits auszuwählen, die zur Bestimmung des zufälligen Offsets zur Basisadresse -von vma-Regionen verwendet werden, die aus mmap-Zuweisungen resultieren. +Dieser Wert kann verwendet werden, um die Anzahl der Bits auszuwählen, die zur Bestimmung des zufälligen Offsets zur Basisadresse von vma-Regionen verwendet werden, die aus mmap-Zuweisungen resultieren. Dieser Wert wird durch die von der Architektur unterstützten Mindest- und Höchstwerte begrenzt. -Dieser Wert kann nach dem Booten mit dem Tunable /proc/sys/vm/mmap\_rnd\_bits geändert werden. -\english{This value can be used to select the number of bits to use to determine the random offset -to the base address of vma regions resulting from mmap allocations. +Dieser Wert kann nach dem Booten mit dem Tunable \texttt{/proc/sys/vm/mmap\_rnd\_bits} geändert werden. +\english{This value can be used to select the number of bits to use to determine the random offset to the base address of vma regions resulting from mmap allocations. This value will be bounded by the architecture's minimum and maximum supported values.\\ This value can be changed after boot using the /proc/sys/vm/mmap\_rnd\_bits tunable} +%9.8 \subsection{Number of bits to use for ASLR of mmap base address for compatible applications} CONFIG\_ARCH\_MMAP\_RND\_CAMPAT\_BITS [=8] \textbf{[8]}\\* -Dieser Wert kann verwendet werden, um die Anzahl der Bits auszuwählen, die zur Bestimmung des zufälligen Offsets zur Basisadresse -von vma-Regionen verwendet werden, die aus mmap-Zuweisungen resultieren. +Dieser Wert kann verwendet werden, um die Anzahl der Bits auszuwählen, die zur Bestimmung des zufälligen Offsets zur Basisadresse von vma-Regionen verwendet werden, die aus mmap-Zuweisungen resultieren. Dieser Wert wird durch die von der Architektur unterstützten Mindest- und Höchstwerte begrenzt. -Dieser Wert kann nach dem Booten mit dem Tunable /proc/sys/vm/mmap\_rnd\_bits geändert werden. -\english{This value can be used to select the number of bits to use to determine the random offset to the base -address of vma regions resulting from mmap allocations for compatible applications +Dieser Wert kann nach dem Booten mit dem Tunable \texttt{/proc/sys/vm/mmap\_rnd\_bits} geändert werden. +\english{This value can be used to select the number of bits to use to determine the random offset to the base address of vma regions resulting from mmap allocations. This value will be bounded by the architecture's minimum and maximum supported values.\\ -This value can be changed after boot using the /proc/sys/vm/mmap\_rnd\_compat\_bits tunable} +This value can be changed after boot using the /proc/sys/vm/mmap\_rnd\_bits tunable} \subsection{MMU page size () \texorpdfstring{$\rightarrow$}{->}} Für diese Option ist keine Hilfe verfügbar. @@ -163,7 +146,7 @@ Für diese Option ist keine Hilfe verfügbar. \subsubsection{4KiB pages} CONFIG\_PAGE\_SIZE\_4KB [=y] \textbf{[Y]}\\* Diese Option wählt die Standard-Linux-Seitengröße von \qty{4}{\kibi\byte} und ist auf vielen Architekturen die einzige verfügbare Option. -Die Verwendung von 4KiB Seitengröße minimiert den Speicherverbrauch und wird daher für Systeme mit wenig Speicher empfohlen. +Die Verwendung von \qty{4}{\kibi\byte} Seitengröße minimiert den Speicherverbrauch und wird daher für Systeme mit wenig Speicher empfohlen. Einige Software, die für x86-Systeme geschrieben wurde, geht von falschen Annahmen bezüglich der Seitengröße aus und läuft nur auf \qty{4}{\kibi\byte}-Seiten. \english{This option select the standard 4KiB Linux page size and the only available option on many architectures. Using 4KiB page size will minimize memory consumption and is therefore recommended for low memory systems. @@ -171,56 +154,47 @@ Some software that is written for x86 systems makes incorrect assumptions about \subsection{Provide system calls for 32-bit time\_t} CONFIG\_COMPAT\_32BIT\_TIME [=y] \textbf{[Y]}\\ -Dies ermöglicht die Unterstützung von 32 Bit time\_t zusätzlich zur Unterstützung von -64~Bit time\_t. Dies ist auf allen 32-Bit-Architekturen und 64-Bit-Architekturen als Teil -der Kompatibilitäts-Syscall-Behandlung relevant. +Dies ermöglicht die Unterstützung von 32 Bit time\_t zusätzlich zur Unterstützung von 64~Bit time\_t. +Dies ist auf allen 32-Bit-Architekturen und 64-Bit-Architekturen als Teil der Kompatibilitäts-Syscall"=Behandlung relevant. \english{This enables 32 bit time\_t support in addition to 64 bit time\_t support. This is relevant on all 32-bit architectures, and 64-bit architectures as part of compat syscall handling.} +%9.11 \subsection{Use a virtually-mapped stack} CONFIG\_VMAP\_STACK [=y] \textbf{[Y]}\\ Aktivieren Sie dies, wenn Sie virtuell gemappte Kernel-Stacks mit Guard Pages verwenden wollen. -Dies führt dazu, dass Kernel-Stack-Überläufe sofort abgefangen werden und keine schwer zu -diagnostizierende Korruption verursachen. Um dies mit Software-KASAN-Modi zu verwenden, muss die -Architektur die Unterstützung von virtuellen Mappings mit echtem Schattenspeicher unterstützen -und KASAN\_VMALLOC muss aktiviert sein. +Dies führt dazu, dass Kernel-Stack-Überläufe sofort abgefangen werden und keine schwer zu diagnostizierende Korruption verursachen. +Um dies mit Software-KASAN-Modi zu verwenden, muss die Architektur die Unterstützung von virtuellen Mappings mit echtem Schattenspeicher unterstützen und \texttt{KASAN\_VMALLOC} muss aktiviert sein. \english{Enable this if you want the use virtually-mapped kernel stacks with guard pages. This causes kernel stack overflows to be caught immediately rather than causing difficult-to-diagnose corruption.\\ To use this with software KASAN modes, the architecture must support backing virtual mappings with real shadow memory, and KASAN\_VMALLOC must be enabled.} +%9.12 \subsection{Support for randomizing kernel stack offset on syscall entry} CONFIG\_RANDOMIZE\_KSTACK\_OFFSET [=y] \textbf{[Y]}\\ -Der Kernel-Stack-Offset kann (nach pt\_regs) mit etwa 5~Bits Entropie randomisiert werden, -wodurch Angriffe auf Speicherbeschädigung vereitelt werden, die auf Stack-Adress-Determinismus -oder auf die Offenlegung der Adressen von Cross-Syscalls angewiesen sind. -Die Funktion wird über den Kernel-Boot-Parameter \texttt{randomize\_kstack\_offset=on/off} gesteuert -und hat, wenn sie ausgeschaltet ist, aufgrund der Verwendung von statischen Verzweigungen -(siehe JUMP\_LABEL) keinen Overhead.\\ +Der Kernel-Stack-Offset kann (nach pt\_regs) mit etwa 5~Bits Entropie randomisiert werden, wodurch Angriffe auf Speicherbeschädigung vereitelt werden, die auf Stack-Adress-Determinismus oder auf die Offenlegung der Adressen von Cross-Syscalls angewiesen sind. +Die Funktion wird über den Kernel-Boot-Parameter \texttt{randomize\_kstack\_offset=on/off} gesteuert und hat, wenn sie ausgeschaltet ist, aufgrund der Verwendung von statischen Verzweigungen (siehe \texttt{JUMP\_LABEL}) keinen Overhead.\\ Wenn Sie unsicher sind, sagen Sie Y. -\english{The kernel stack offset can be randomized (after pt\_regs) by roughly 5 bits of entropy, -frustrating memory corruption attacks that depend on stack address determinism or cross-syscall address exposures.\\ -The feature is controlled via the ``randomize\_kstack\_offset=on/off'' kernel boot param, -and if turned off has zero overhead due to its use of static branches (see JUMP\_LABEL).\\ +\english{The kernel stack offset can be randomized (after pt\_regs) by roughly 5 bits of entropy, frustrating memory corruption attacks that depend on stack address determinism or cross-syscall address exposures.\\ +The feature is controlled via the ``randomize\_kstack\_offset=on/off'' kernel boot param, and if turned off has zero overhead due to its use of static branches (see JUMP\_LABEL).\\ If unsure, say Y.} \subsubsection{Default state of kernel stack offset randomization} CONFIG\_RANDOMIZE\_KSTACK\_OFFSET\_DEFAULT [=y] \textbf{[Y]}\\ -Die Randomisierung des Kernel-Stack-Offsets wird durch den Kernel-Boot-Parameter\\ -\texttt{randomize\_kstack\_offset=on/off} gesteuert, und diese Konfiguration wählt den -Standard-Boot-Status. -\english{Kernel stack offset randomization is controlled by kernel boot param ``randomize\_kstack\_offset=on/off'', -and this config chooses the default boot state.} +Die Randomisierung des Kernel-Stack-Offsets wird durch den Kernel-Boot-Parameter\\\texttt{randomize\_kstack\_offset=on/off} gesteuert, und diese Konfiguration wählt den Standard-Boot-Status. +\english{Kernel stack offset randomization is controlled by kernel boot param ``randomize\_kstack\_offset=on/off'', and this config chooses the default boot state.} +%9.13 \subsection{Locking event counts collection} CONFIG\_LOCK\_EVENT\_COUNTS [=y] \textbf{[Y]}\\ -Ermöglicht eine leichtgewichtige Zählung verschiedener sperrungsbezogener Ereignisse im System -mit minimalen Auswirkungen auf die Leistung. Dies verringert die Wahrscheinlichkeit, dass sich -das Anwendungsverhalten aufgrund von Zeitunterschieden ändert. Die Zählungen werden über -debugfs gemeldet. +Ermöglicht eine leichtgewichtige Zählung verschiedener sperrungsbezogener Ereignisse im System mit minimalen Auswirkungen auf die Leistung. +Dies verringert die Wahrscheinlichkeit, dass sich das Anwendungsverhalten aufgrund von Zeitunterschieden ändert. +Die Zählungen werden über \texttt{debugfs} gemeldet. \english{Enable light-weight counting of various locking related events in the system with minimal performance impact. This reduces the chance of application behavior change because of timing differences. The counts are reported via debugfs.} +%9.14 \subsection{GCOV-based kernel profiling \texorpdfstring{$\rightarrow$}{->}} (GCOV-basierte Kernel-Profilierung) @@ -228,20 +202,17 @@ The counts are reported via debugfs.} CONFIG\_GCOV\_KERNEL [=n] \textbf{[N]}\\ Diese Option aktiviert die gcov-basierte Code-Profilierung (z.\,B. für Code-Abdeckungsmessungen). Wenn Sie unsicher sind, sagen Sie N.\\[.5em] -Geben Sie zusätzlich CONFIG\_GCOV\_PROFILE\_ALL=y an, um Profilerstellungsdaten für den gesamten -Kernel zu erhalten. Um die Profilerstellung für bestimmte Dateien oder Verzeichnisse zu aktivieren, -fügen Sie eine Zeile ähnlich der folgenden in das jeweilige Makefile ein:\\[.5em] +Geben Sie zusätzlich CONFIG\_GCOV\_PROFILE\_ALL=y an, um Profilerstellungsdaten für den gesamten Kernel zu erhalten. +Um die Profilerstellung für bestimmte Dateien oder Verzeichnisse zu aktivieren, fügen Sie eine Zeile ähnlich der folgenden in das jeweilige Makefile ein:\\[.5em] Für eine einzelne Datei (z.\,B. main.o):\\ \indent \texttt{GCOV\_PROFILE\_main.o := y}\\[.5em] Für alle Dateien in einem Verzeichnis:\\ \indent \texttt{GCOV\_PROFILE := y}\\[.5em] -Um Dateien von der Profilerstellung auszuschließen, auch wenn CONFIG\_GCOV\_PROFILE\_ALL -angegeben ist, verwenden Sie:\\ +Um Dateien von der Profilerstellung auszuschließen, auch wenn CONFIG\_GCOV\_PROFILE\_ALL angegeben ist, verwenden Sie:\\ \indent \texttt{GCOV\_PROFILE\_main.o := n}\\[.5em] und:\\ \indent \texttt{GCOV\_PROFILE := n}\\[.5em] -Beachten Sie, dass das debugfs-Dateisystem gemountet sein muss, um auf die Profilerstellungsdaten -zugreifen zu können. +Beachten Sie, dass das debugfs-Dateisystem gemountet sein muss, um auf die Profilerstellungsdaten zugreifen zu können. \english{This option enables gcov-based code profiling (e.g. for code coverage measurements).\\ If unsure, say N.\\ Additionally specify CONFIG\_GCOV\_PROFILE\_ALL=y to get profiling data for the entire kernel. @@ -254,7 +225,7 @@ and: GCOV\_PROFILE := n\\ Note that the debugfs filesystem has to be mounted to access profiling data.} \subsection{GCC plugins \texorpdfstring{$\rightarrow$}{->}} -CONFIG\_GCC\_PLUGINS [=y] \textbf{[Y]}\\ +CONFIG\_GCC\_PLUGINS [=n] \textbf{[N]}\\ GCC-Plugins sind ladbare Module, die zusätzliche Funktionen für den Compiler bereitstellen. Sie sind nützlich für die Laufzeitinstrumentierung und die statische Analyse.\\ Siehe Documentation/kbuild/gcc-plugins.rst für Details. @@ -264,15 +235,12 @@ See Documentation/kbuild/gcc-plugins.rst for details.} \subsubsection{Generate some entropy during boot and runtime} CONFIG\_GCC\_PLUGIN\_LATENT\_ENTROPY [=n] \textbf{[N]}\\ -Mit der Eingabe von Y wird der Kernel einen Teil des Kernel-Codes instrumentieren, -um sowohl aus dem ursprünglichen als auch aus dem künstlich erzeugten Programmzustand -etwas Entropie zu gewinnen. -Dies ist insbesondere bei eingebetteten Systemen hilfreich, bei denen es normalerweise wenig -\glqq natürliche\grqq{} Entropiequellen gibt. -Der Preis ist eine gewisse Verlangsamung des Boot-Prozesses (etwa 0,5~\%) und der fork- und -irq-Verarbeitung. Beachten Sie, dass die auf diese Weise extrahierte Entropie nicht -kryptografisch sicher ist!\\ -Dieses Plugin wurde von grsecurity/PaX portiert. Mehr Informationen unter: +Mit der Eingabe von Y wird der Kernel einen Teil des Kernel-Codes instrumentieren, um sowohl aus dem ursprünglichen als auch aus dem künstlich erzeugten Programmzustand etwas Entropie zu gewinnen. +Dies ist insbesondere bei eingebetteten Systemen hilfreich, bei denen es normalerweise wenig \glqq natürliche\grqq{} Entropiequellen gibt. +Der Preis ist eine gewisse Verlangsamung des Boot-Prozesses (etwa \qty{0,5}{\percent}) und der fork- und irq-Verarbeitung. +Beachten Sie, dass die auf diese Weise extrahierte Entropie nicht kryptografisch sicher ist!\\ +Dieses Plugin wurde von grsecurity/PaX portiert. +Mehr Informationen unter: \begin{itemize} \item[] \url{https://grsecurity.net/} \item[] \url{https://pax.grsecurity.net/} diff --git a/documentation/linux_configuration_10_enable_loadable_module_support.tex b/documentation/linux_configuration_10_enable_loadable_module_support.tex index f943ad4..468cb23 100644 --- a/documentation/linux_configuration_10_enable_loadable_module_support.tex +++ b/documentation/linux_configuration_10_enable_loadable_module_support.tex @@ -1,29 +1,23 @@ -% since Linux 6.14 % linux_configuration_10_enable_loadable_module_support.tex +% since Linux 6.16 \section{Enable loadable module support \texorpdfstring{$\rightarrow$}{->}} CONFIG\_MODULES [=y] \textbf{[Y]}\\ -Kernel-Module sind kleine Stücke kompilierten Codes, die in den laufenden Kernel eingefügt werden können, -anstatt dauerhaft in den Kernel eingebaut zu werden. Sie verwenden das Werkzeug -\texttt{modprobe}, um sie hinzuzufügen (und manchmal zu entfernen).\\ -Wenn Sie hier Y angeben, können viele Teile des Kernels als Module gebaut werden (indem Sie M anstelle -von Y antworten, wo dies angegeben ist):\\ +Kernel-Module sind kleine Stücke kompilierten Codes, die in den laufenden Kernel eingefügt werden können, anstatt dauerhaft in den Kernel eingebaut zu werden. +Sie verwenden das Werkzeug \texttt{modprobe}, um sie hinzuzufügen (und manchmal zu entfernen).\\ +Wenn Sie hier Y angeben, können viele Teile des Kernels als Module gebaut werden (indem Sie M anstelle von Y antworten, wo dies angegeben ist):\\ Dies ist besonders nützlich für selten verwendete Optionen, die zum Booten nicht benötigt werden. -Weitere Informationen finden Sie in den Man Pages für \texttt{modprobe}, -\texttt{lsmod}, \texttt{modinfo}, \texttt{insmod} und \texttt{rmmod}.\\ -Wenn Sie hier Y angeben, müssen Sie \texttt{make modules\_install} ausführen, um die Module unter\\ -/lib/modules/ abzulegen, wo sie von modprobe gefunden werden können (möglicherweise müssen Sie dazu -root sein). +Weitere Informationen finden Sie in den Man Pages für \texttt{modprobe}, \texttt{lsmod}, \texttt{modinfo}, \texttt{insmod} und \texttt{rmmod}.\\ +Wenn Sie hier Y angeben, müssen Sie \texttt{make modules\_install} ausführen, um die Module unter\\\texttt{/lib/modules/} abzulegen, wo sie von modprobe gefunden werden können (möglicherweise müssen Sie dazu root sein). Wenn Sie unsicher sind, sagen Sie Y. \english{Kernel modules are small pieces of compiled code which can be inserted in the running kernel, rather than being permanently built into the kernel. You use the ``modprobe'' tool to add (and sometimes remove) them. -If you say Y here, many parts of the kernel can be built as modules (by answering M instead of Y where indicated): -this is most useful for infrequently used options which are not required for booting. +If you say Y here, many parts of the kernel can be built as modules (by answering M instead of Y where indicated): this is most useful for infrequently used options which are not required for booting. For more information, see the man pages for modprobe, lsmod, modinfo, insmod and rmmod.\\ -If you say Y here, you will need to run ``make modules\_install'' to put the modules under /lib/modules/ where modprobe can find them -(you may need to be root to do this). +If you say Y here, you will need to run ``make modules\_install'' to put the modules under /lib/modules/ where modprobe can find them (you may need to be root to do this). If unsure, say Y.} +%10.1 \subsection{Module debugging} CONFIG\_MODULE\_DEBUG [=n] \textbf{[N]}\\ Ermöglicht das Aktivieren/Deaktivieren von Funktionen, die Ihnen beim Debuggen von Modulen helfen können. @@ -31,88 +25,77 @@ Auf Produktionssystemen benötigen Sie diese Optionen nicht. \english{Allows you to enable / disable features which can help you debug modules. You don't need these options on production systems.} +%10.2 \subsection{Forced module loading} CONFIG\_MODULE\_FORCE\_LOAD [=y] \textbf{[Y]}\\ Erlaubt das Laden von Modulen ohne Versionsinformationen (z.\,B. \texttt{modprobe --force}). -Erzwungenes Laden von Modulen setzt das \glq F\grq{} (forced) taint Flag und ist normalerweise eine wirklich -schlechte Idee. +Erzwungenes Laden von Modulen setzt das \glq F\grq{} (forced) taint Flag und ist normalerweise eine wirklich schlechte Idee. \english{Allow loading of modules without version information (ie. \texttt{modprobe --force}. Forced module loading sets the `F' (forced) taint flag and is usually a really bad idea.} - +%10.3 \subsection{Module unloading} CONFIG\_MODULE\_UNLOAD [=y] \textbf{[Y]}\\ -Ohne diese Option können Sie keine Module entladen (beachten Sie, dass einige Module möglicherweise -ohnehin nicht entladbar sind), was Ihren Kernel kleiner, schneller und einfacher macht. +Ohne diese Option können Sie keine Module entladen (beachten Sie, dass einige Module möglicherweise ohnehin nicht entladbar sind), was Ihren Kernel kleiner, schneller und einfacher macht. Wenn Sie unsicher sind, sagen Sie Y. -\english{Without this option you will not be able to unload any modules (note that some modules may not be unloadable anyway), -which makes your kernel smaller, faster and simpler. +\english{Without this option you will not be able to unload any modules (note that some modules may not be unloadable anyway), which makes your kernel smaller, faster and simpler. If unsure, say Y.} \subsubsection{Forced module unloading} CONFIG\_MODULE\_FORCE\_UNLOAD \colorbox{yellow!80}{[=y] \textbf{[N]}}\\ -Mit dieser Option können Sie das Entladen eines Moduls erzwingen, auch wenn der Kernel es für unsicher -hält: Der Kernel wird das Modul entfernen, ohne darauf zu warten, dass jemand die Verwendung des Moduls -beendet (mit der Option \texttt{-f} von \texttt{rmmod}). -Dies ist hauptsächlich für Kernel-Entwickler und verzweifelte Benutzer gedacht. Wenn Sie unsicher sind, -sagen Sie N. -\english{This option allows you to force a module to unload, even if the kernel believes it is unsafe: -the kernel will remove the module without waiting for anyone to stop using it (using the -f option to rmmod). -This is mainly for kernel developers and desperate users. If unsure, say N.} +Mit dieser Option können Sie das Entladen eines Moduls erzwingen, auch wenn der Kernel es für unsicher hält: +Der Kernel wird das Modul entfernen, ohne darauf zu warten, dass jemand die Verwendung des Moduls beendet (mit der Option \texttt{-f} von \texttt{rmmod}). +Dies ist hauptsächlich für Kernel-Entwickler und verzweifelte Benutzer gedacht. +Wenn Sie unsicher sind, sagen Sie N. +\english{This option allows you to force a module to unload, even if the kernel believes it is unsafe: the kernel will remove the module without waiting for anyone to stop using it (using the -f option to rmmod). +This is mainly for kernel developers and desperate users. +If unsure, say N.} \note{Wir haben nicht vor, an Modulen zu entwickeln, deshalb N.} \subsubsection{Tainted module unload tracking} CONFIG\_MODULE\_UNLOAD\_TAINT\_TRACKING [=y] \textbf{[Y]}\\ -Mit dieser Option können Sie eine Aufzeichnung über jedes entladene Modul führen, das den Kernel -beschädigt hat. Zusätzlich zur Anzeige einer Liste der verknüpften (oder geladenen) Module, z.\,B. -bei der Erkennung einer schlechten Seite (siehe bad\_page()), werden auch die oben genannten -Details angezeigt. Wenn Sie unsicher sind, sagen Sie N. -\english{This option allows you to maintain a record of each unloaded module that tainted the kernel. -In addition to displaying a list of linked (or loaded) modules e.g. on detection of a bad page (see bad\_page()), -the aforementioned details are also shown. If unsure, say N.} - -\subsection{Module versioning support} -CONFIG\_MODVERSIONS [=n] \textbf{[N]}\\ -Normalerweise müssen Sie Module verwenden, die mit Ihrem Kernel kompiliert wurden. Wenn Sie -hier Y angeben, ist es manchmal möglich, Module zu verwenden, die für andere Kernel kompiliert wurden, -indem Sie genügend Informationen zu den Modulen hinzufügen, um (hoffentlich) alle Änderungen zu erkennen, -die sie mit dem von Ihnen verwendeten Kernel inkompatibel machen würden.\\ +Mit dieser Option können Sie eine Aufzeichnung über jedes entladene Modul führen, das den Kernel beschädigt hat. +Zusätzlich zur Anzeige einer Liste der verknüpften (oder geladenen) Module, z.\,B. bei der Erkennung einer schlechten Seite (siehe \texttt{bad\_page()}), werden auch die oben genannten Details angezeigt. Wenn Sie unsicher sind, sagen Sie N. -\english{Usually, you have to use modules compiled with your kernel. -Saying Y here makes it sometimes possible to use modules compiled for different kernels, by adding enough information -to the modules to (hopefully) spot any changes which would make them incompatible with the kernel you are running. +\english{This option allows you to maintain a record of each unloaded module that tainted the kernel. +In addition to displaying a list of linked (or loaded) modules e.g. on detection of a bad page (see bad\_page()), the aforementioned details are also shown. If unsure, say N.} +%10.4 +\subsection{Module versioning support} +CONFIG\_MODVERSIONS [=n] \textbf{[N]}\\ +Normalerweise müssen Sie Module verwenden, die mit Ihrem Kernel kompiliert wurden. +Wenn Sie hier Y angeben, ist es manchmal möglich, Module zu verwenden, die für andere Kernel kompiliert wurden, indem Sie genügend Informationen zu den Modulen hinzufügen, um (hoffentlich) alle Änderungen zu erkennen, die sie mit dem von Ihnen verwendeten Kernel inkompatibel machen würden.\\ +Wenn Sie unsicher sind, sagen Sie N. +\english{Usually, you have to use modules compiled with your kernel. +Saying Y here makes it sometimes possible to use modules compiled for different kernels, by adding enough information to the modules to (hopefully) spot any changes which would make them incompatible with the kernel you are running. +If unsure, say N.} + +%10.5 \subsection{Source checksum for all modules} CONFIG\_MODULE\_SRCVERSION\_ALL [=y] \textbf{[Y]}\\ -Module, die eine MODULE\_VERSION enthalten, bekommen ein zusätzliches \glqq srcversion\grqq{}-Feld in -ihre modinfo-Sektion eingefügt, das eine Summe der Quelldateien enthält, aus denen sie entstanden sind. -Dies hilft den Betreuern, genau zu sehen, welche Quelle verwendet wurde, um ein Modul zu bauen -(da andere manchmal die Modulquelle ändern, ohne die Version zu aktualisieren). Mit dieser Option wird -ein solches \glqq srcversion\grqq{}-Feld für alle Module erstellt. Wenn Sie unsicher sind, sagen Sie N. -\english{Modules which contain a MODULE\_VERSION get an extra ``srcversion'' field inserted into their modinfo section, -which contains a sum of the source files which made it. +Module, die eine MODULE\_VERSION enthalten, bekommen ein zusätzliches \glqq srcversion\grqq{}-Feld in ihre modinfo-Sektion eingefügt, das eine Summe der Quelldateien enthält, aus denen sie entstanden sind. +Dies hilft den Betreuern, genau zu sehen, welche Quelle verwendet wurde, um ein Modul zu bauen (da andere manchmal die Modulquelle ändern, ohne die Version zu aktualisieren). +Mit dieser Option wird ein solches \glqq srcversion\grqq{}-Feld für alle Module erstellt. +Wenn Sie unsicher sind, sagen Sie N. +\english{Modules which contain a MODULE\_VERSION get an extra ``srcversion'' field inserted into their modinfo section, which contains a sum of the source files which made it. This helps maintainers see exactly which source was used to build a module (since others sometimes change the module source without updating the version). -With this option, such a ``srcversion'' field will be created for all modules. If unsure, say N.} +With this option, such a ``srcversion'' field will be created for all modules. +If unsure, say N.} +%10.6 \subsection{Module signature verification} CONFIG\_MODULE\_SIG [=y] \textbf{[Y]}\\ -Überprüfung von Modulen auf gültige Signaturen beim Laden: Die Signatur wird einfach an das Modul -angehängt. Für weitere Informationen siehe $<$file:Documentation/admin-guide/module-signing.rst$>$. -Beachten Sie, dass diese Option die OpenSSL-Entwicklungspakete als Kernel-Build-Abhängigkeit hinzufügt, -so dass das Signierwerkzeug seine Krypto-Bibliothek verwenden kann. Sie sollten diese Option aktivieren, -wenn Sie entweder CONFIG\_SECURITY\_LOCKDOWN\_LSM oder eine durch eine andere LSM auferlegte -Lockdown-Funktionalität verwenden wollen -- andernfalls werden unsignierte Module unabhängig von der -Lockdown-Policy ladbar sein. -!!!WARNUNG!!! Wenn Sie diese Option aktivieren, MÜSSEN Sie sicherstellen, dass das Modul nach dem -Signieren NICHT gestrippt wird. Dies schließt den Debuginfo-Strip ein, der von einigen Paketierern -(wie z.\,B. rpmbuild) durchgeführt wird, sowie die Einbindung in ein initramfs, das die Modulgröße -reduzieren möchte. +Überprüfung von Modulen auf gültige Signaturen beim Laden: Die Signatur wird einfach an das Modul angehängt. +Für weitere Informationen siehe $<$file:Documentation/admin-guide/module-signing.rst$>$. +Beachten Sie, dass diese Option die OpenSSL-Entwicklungspakete als Kernel-Build-Abhängigkeit hinzufügt, so dass das Signierwerkzeug seine Krypto-Bibliothek verwenden kann. +Sie sollten diese Option aktivieren, wenn Sie entweder \texttt{CONFIG\_SECURITY\_LOCKDOWN\_LSM} oder eine durch eine andere LSM auferlegte Lockdown"=Funktionalität verwenden wollen -- andernfalls werden unsignierte Module unabhängig von der Lockdown-Policy ladbar sein. +!!!WARNUNG!!! Wenn Sie diese Option aktivieren, MÜSSEN Sie sicherstellen, dass das Modul nach dem Signieren NICHT gestrippt wird. +Dies schließt den Debuginfo-Strip ein, der von einigen Paketierern (wie z.\,B. \texttt{rpmbuild}) durchgeführt wird, sowie die Einbindung in ein initramfs, das die Modulgröße reduzieren möchte. \english{Check modules for valid signatures upon load: the signature is simply appended to the module. For more information see $<$file:Documentation/admin-guide/module-signing.rst$>$.\\ Note that this option adds the OpenSSL development packages as a kernel build dependency so that the signing tool can use its crypto library.\\ -You should enable this option if you wish to use either CONFIG\_SECURITY\_LOCKDOWN\_LSM or lockdown functionality imposed via another LSM -- -otherwise unsigned modules will be loadable regardless of the lockdown policy.\\ +You should enable this option if you wish to use either CONFIG\_SECURITY\_LOCKDOWN\_LSM or lockdown functionality imposed via another LSM -- otherwise unsigned modules will be loadable regardless of the lockdown policy.\\ !!!WARNING!!! If you enable this option, you MUST make sure that the module DOES NOT get stripped after being signed. This includes the debuginfo strip done by some packagers (such as rpmbuild) and inclusion into an initramfs that wants the module size reduced.} @@ -125,45 +108,64 @@ Without this, such modules will simply taint the kernel.} \subsubsection{Automatically sign all modules} CONFIG\_MODULE\_SIG\_ALL [=y] \textbf{[Y]}\\ -Signiere alle Module während make modules\_install. Ohne diese Option müssen die Module manuell -signiert werden, und zwar mit dem Werkzeug scripts/sign-file. -\english{Sign all modules during make modules\_install. Without this option, modules must be signed manually, using the scripts/sign-file tool.} +Signiere alle Module während make modules\_install. +Ohne diese Option müssen die Module manuell signiert werden, und zwar mit dem Werkzeug scripts/sign-file. +\english{Sign all modules during make modules\_install. +Without this option, modules must be signed manually, using the scripts/sign-file tool.} +%10.7 %\subsection{Which hash algorithm should modules be signed with? () \texorpdfstring{$\rightarrow$}{->}} \subsection{Hash algorithm to sign modules \texorpdfstring{$\rightarrow$}{->}} Damit wird festgelegt, welche Art von Hashing-Algorithmus bei der Signaturerstellung verwendet wird. -Dieser Algorithmus \textbf{muss} direkt in den Kernel eingebaut werden, damit eine Signaturprüfung -stattfinden kann. Es ist nicht möglich, ein signiertes Modul zu laden, das den Algorithmus enthält, -um die Signatur dieses Moduls zu überprüfen. +Dieser Algorithmus \textbf{muss} direkt in den Kernel eingebaut werden, damit eine Signaturprüfung stattfinden kann. +Es ist nicht möglich, ein signiertes Modul zu laden, das den Algorithmus enthält, um die Signatur dieses Moduls zu überprüfen. \english{This determines which sort of hashing algorithm will be used during signature generation. This algorithm \_must\_ be built into the kernel directly so that signature verification can take place. It is not possible to load a signed module containing the algorithm to check the signature on that module.} -\subsubsection{Sign modules with SHA-1} +\subsubsection{SHA-1} CONFIG\_MODULE\_SIG\_SHA1 [=n] \textbf{[N]}\\ \textit{Für diese Option gibt es keine Hilfe.} \english{There is no help available for this option.} -\subsubsection{Sign modules with SHA-224} +{\color{gray} +\subsubsection*{Sign modules with SHA-224 \tiny{bis 6.6}} CONFIG\_MODULE\_SIG\_SHA224 [=n] \textbf{[N]}\\ \textit{Für diese Option gibt es keine Hilfe.} \english{There is no help available for this option.} +} -\subsubsection{Sign modules with SHA-256} +\subsubsection{SHA-256} CONFIG\_MODULE\_SIG\_SHA256 [=n] \textbf{[N]}\\ \textit{Für diese Option gibt es keine Hilfe.} \english{There is no help available for this option.} -\subsubsection{Sign modules with SHA-384} +\subsubsection{SHA-384} CONFIG\_MODULE\_SIG\_SHA384 [=n] \textbf{[N]}\\ \textit{Für diese Option gibt es keine Hilfe.} \english{There is no help available for this option.} -\subsubsection{Sign modules with SHA-512} +\subsubsection{SHA-512} CONFIG\_MODULE\_SIG\_SHA512 [=y] \textbf{[Y]}\\ \textit{Für diese Option gibt es keine Hilfe.} \english{There is no help available for this option.} +\subsubsection{SHA3-256 \tiny{seit 6.7}} +CONFIG\_MODULE\_SIG\_SHA3\_256 [=n] \textbf{[N]}\\ +\textit{Für diese Option gibt es keine Hilfe.} +\english{There is no help available for this option.} + +\subsubsection{SHA3-384 \tiny{seit 6.7}} +CONFIG\_MODULE\_SIG\_SHA3\_384 [=n] \textbf{[N]}\\ +\textit{Für diese Option gibt es keine Hilfe.} +\english{There is no help available for this option.} + +\subsubsection{SHA3-512 \tiny{seit 6.7}} +CONFIG\_MODULE\_SIG\_SHA3\_512 [=n] \textbf{[N]}\\ +\textit{Für diese Option gibt es keine Hilfe.} +\english{There is no help available for this option.} + +%10.8 \subsection{Module compression} Modulkomprimierung aktivieren, um die Größe der Modul-Binärdateien auf der Festplatte zu reduzieren. Dies ist vollständig kompatibel mit signierten Modulen. @@ -172,16 +174,6 @@ Das Werkzeug, das für die Arbeit mit Modulen verwendet wird, muss den ausgewäh Andere Werkzeuge haben möglicherweise eine eingeschränkte Auswahl der unterstützten Typen. \\ Beachten Sie, dass es für Module innerhalb einer initrd oder initramfs effizienter ist, stattdessen die gesamte ramdisk zu komprimieren. \\ Wenn Sie unsicher sind, wählen Sie N. -%Mit dieser Option können Sie den Algorithmus auswählen, der zur Komprimierung von Modulen verwendet -%wird, wenn \texttt{make modules\_install} ausgeführt wird. (oder Sie können wählen, dass Module -%überhaupt nicht komprimiert werden.) Externe Module werden während der Installation ebenfalls auf -%die gleiche Weise komprimiert. Für Module innerhalb einer initrd oder initramfs ist es effizienter, -%stattdessen die gesamte initrd oder initramfs zu komprimieren. Dies ist vollständig kompatibel mit -%signierten Modulen. Bitte beachten Sie, dass das zum Laden von Modulen verwendete Werkzeug den -%entsprechenden Algorithmus unterstützen muss. module-init-tools KANN gzip unterstützen, und kmod KANN -%gzip, xz und zstd unterstützen. -%Ihr Build-System muss das entsprechende Komprimierungswerkzeug bereitstellen, um die Module zu -%komprimieren. Im Zweifelsfall wählen Sie `None'. \english{Enable module compression to reduce on-disk size of module binaries. This is fully compatible with signed modules.\\ The tool used to work with modules needs to support the selected compression type. @@ -221,46 +213,48 @@ External modules will also be compressed in the same way during the installation \subsubsection{Support in-kernel module decompression} CONFIG\_MODULE\_DECOMPRESS [=y] \textbf{[Y]}\\* -Unterstützung für die Dekomprimierung von Kernelmodulen durch den Kernel selbst, anstatt sich auf -den Userspace zu verlassen, um diese Aufgabe zu erledigen. Nützlich, wenn die Sicherheitsrichtlinie -für das Load Pinning aktiviert ist. Wenn Sie unsicher sind, sagen Sie N. +Unterstützung für die Dekomprimierung von Kernelmodulen durch den Kernel selbst, anstatt sich auf den Userspace zu verlassen, um diese Aufgabe zu erledigen. +Nützlich, wenn die Sicherheitsrichtlinie für das Load Pinning aktiviert ist. +Wenn Sie unsicher sind, sagen Sie N. \english{Support for decompressing kernel modules by the kernel itself instead of relying on userspace to perform this task. Useful when load pinning security policy is enabled.\\ If unsure, say N.} +%10.9 \subsection{Allow loading of modules with missing namespace imports} CONFIG\_MODULE\_ALLOW\_MISSING\_NAMESPACE\_IMPORTS [=y] \textbf{[Y]}\\* Symbole, die mit EXPORT\_SYMBOL\_NS*() exportiert werden, gelten als in einem Namespace exportiert. -Ein Modul, das ein Symbol verwendet, das mit einem solchen Namespace exportiert wurde, muss den -Namespace über MODULE\_IMPORT\_NS() importieren. Es gibt keinen technischen Grund, korrekte -Namespace-Importe zu erzwingen, aber es schafft Konsistenz zwischen Symbolen, die Namespaces -definieren und Benutzern, die Namespaces importieren, die sie verwenden. Diese Option lockert diese -Anforderung und hebt die Durchsetzung beim Laden eines Moduls auf. Wenn Sie unsicher sind, sagen Sie N. +Ein Modul, das ein Symbol verwendet, das mit einem solchen Namespace exportiert wurde, muss den Namespace über MODULE\_IMPORT\_NS() importieren. +Es gibt keinen technischen Grund, korrekte Namespace-Importe zu erzwingen, aber es schafft Konsistenz zwischen Symbolen, die Namespaces definieren und Benutzern, die Namespaces importieren, die sie verwenden. +Diese Option lockert diese Anforderung und hebt die Durchsetzung beim Laden eines Moduls auf. +Wenn Sie unsicher sind, sagen Sie N. \english{Symbols exported with EXPORT\_SYMBOL\_NS*() are considered exported in a namespace.\\ A module that makes use of a symbol exported with such a namespace is required to import the namespace via MODULE\_IMPORT\_NS("").\\ -There is no technical reason to enforce correct namespace imports, but it creates consistency between -symbols defining namespaces and users importing namespaces they make use of. +There is no technical reason to enforce correct namespace imports, but it creates consistency between symbols defining namespaces and users importing namespaces they make use of. This option relaxes this requirement and lifts the enforcement when loading a module.\\ If unsure, say N.} +%10.10 \subsection{Path to modprobe binary} CONFIG\_MODPROBE\_PATH [=/sbin/modprobe] \textbf{[/sbin/modprobe]}\\ -Wenn der Kernel-Code ein Modul anfordert, geschieht dies durch den Aufruf des -User\-space-Dienst\-pro\-gramms \texttt{modprobe}. +Wenn der Kernel-Code ein Modul anfordert, geschieht dies durch den Aufruf des Userspace"=Dienstprogramms \texttt{modprobe}. Mit dieser Option können Sie den Pfad festlegen, in dem diese Binärdatei zu finden ist. Dies kann zur Laufzeit über die sysctl-Datei /proc/sys/kernel/modprobe geändert werden. -Wenn Sie diese Option auf eine leere Zeichenkette setzen, wird die Fähigkeit des Kernels, -Module anzufordern, ausgeschaltet (der Userspace kann jedoch weiterhin explizit Module laden). +Wenn Sie diese Option auf eine leere Zeichenkette setzen, wird die Fähigkeit des Kernels, Module anzufordern, ausgeschaltet (der Userspace kann jedoch weiterhin explizit Module laden). \english{When kernel code requests a module, it does so by calling the ``modprobe'' userspace utility. This option allows you to set the path where that binary is found. This can be changed at runtime via the sysctl file /proc/sys/kernel/modprobe. Setting this to the empty string removes the kernel's ability to request modules (but userspace can still load modules explicitly).} +%10.11 \subsection{Trim unused exported kernel symbols} CONFIG\_TRIM\_UNUSED\_KSYMS [=n] \textbf{[N]}\\* Der Kernel und einige Module stellen viele Symbole für andere Module über EXPORT\_SYMBOL() und Varianten zur Verfügung. -Je nach den in Ihrer Kernelkonfiguration ausgewählten Modulen werden viele dieser exportierten Symbole möglicherweise nie verwendet. Mit dieser Option können unbenutzte exportierte Symbole aus dem Build entfernt werden. Im Gegenzug bietet dies dem Compiler mehr Möglichkeiten (insbesondere bei der Verwendung von LTO), den Code zu optimieren und die Binärgröße zu reduzieren. -Dies könnte auch einige Sicherheitsvorteile mit sich bringen. Wenn Sie unsicher sind oder wenn Sie Out-of-Tree-Module bauen müssen, sagen Sie N. +Je nach den in Ihrer Kernelkonfiguration ausgewählten Modulen werden viele dieser exportierten Symbole möglicherweise nie verwendet. +Mit dieser Option können unbenutzte exportierte Symbole aus dem Build entfernt werden. +Im Gegenzug bietet dies dem Compiler mehr Möglichkeiten (insbesondere bei der Verwendung von LTO), den Code zu optimieren und die Binärgröße zu reduzieren. +Dies könnte auch einige Sicherheitsvorteile mit sich bringen. +Wenn Sie unsicher sind oder wenn Sie Out-of-Tree-Module bauen müssen, sagen Sie N. \english{The kernel and some modules make many symbols available for other modules to use via EXPORT\_SYMBOL() and variants. Depending on the set of modules being selected in your kernel configuration, many of those exported symbols might never be used.\\ This option allows for unused exported symbols to be dropped from the build. diff --git a/documentation/linux_configuration_17_security_options.tex b/documentation/linux_configuration_17_security_options.tex index aa0bc3a..12ea868 100644 --- a/documentation/linux_configuration_17_security_options.tex +++ b/documentation/linux_configuration_17_security_options.tex @@ -1,7 +1,7 @@ % Device Drivers (15) % since 6.13 \section{Security options \texorpdfstring{$\longrightarrow$}{->}} -\textit{(Sicherheits\-optionen)} +\textit{(Sicherheitsoptionen)} %17.1 \subsection{Enable access key retention support}