Re: [PATCH] rock-dgb_defconfig: Update for Linux 6.7 with UBSAN

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2024-04-16 13:02, Chen, Xiaogang wrote:

On 4/15/2024 2:49 PM, Felix Kuehling wrote:
Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.


make rock-dbg_defconfig
make savedefconfig
cp defconfig arch/x86/config/rock-dbg_defconfig

This also enables UBSAN, which can help catch some types of bugs at
compile time.

Enabling UBSAN cause compiler insert code to perform certain kinds of check before operations that may cause undefined behaviour. I think it catches errors at run time, not compile time, and increases kernel size.

You're right. I saw it supports some range checking only on arrays where the size is known at compile time. But the range checking itself needs to happen at runtime.

Regards,
  Felix



Regards

Xiaogang


Signed-off-by: Felix Kuehling <felix.kuehling@xxxxxxx>
---
  arch/x86/configs/rock-dbg_defconfig | 46 +++++++++--------------------
  1 file changed, 14 insertions(+), 32 deletions(-)

diff --git a/arch/x86/configs/rock-dbg_defconfig b/arch/x86/configs/rock-dbg_defconfig
index 0ad80a8c8eab..80129ca354b4 100644
--- a/arch/x86/configs/rock-dbg_defconfig
+++ b/arch/x86/configs/rock-dbg_defconfig
@@ -34,11 +34,12 @@ CONFIG_CHECKPOINT_RESTORE=y
  CONFIG_SCHED_AUTOGROUP=y
  CONFIG_BLK_DEV_INITRD=y
  CONFIG_EXPERT=y
-CONFIG_USERFAULTFD=y
-# CONFIG_COMPAT_BRK is not set
  CONFIG_PROFILING=y
+CONFIG_KEXEC=y
+CONFIG_KEXEC_FILE=y
+CONFIG_KEXEC_JUMP=y
+CONFIG_CRASH_DUMP=y
  CONFIG_SMP=y
-# CONFIG_RETPOLINE is not set
  CONFIG_X86_INTEL_LPSS=y
  CONFIG_IOSF_MBI_DEBUG=y
  CONFIG_HYPERVISOR_GUEST=y
@@ -48,9 +49,6 @@ CONFIG_PROCESSOR_SELECT=y
  CONFIG_GART_IOMMU=y
  CONFIG_NR_CPUS=256
  CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
-CONFIG_I8K=m
-CONFIG_MICROCODE_AMD=y
-CONFIG_MICROCODE_OLD_INTERFACE=y
  CONFIG_X86_MSR=m
  CONFIG_X86_CPUID=m
  # CONFIG_X86_5LEVEL is not set
@@ -61,12 +59,8 @@ CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1
  CONFIG_EFI=y
  CONFIG_EFI_STUB=y
  CONFIG_EFI_MIXED=y
-CONFIG_KEXEC=y
-CONFIG_KEXEC_FILE=y
-CONFIG_CRASH_DUMP=y
-CONFIG_KEXEC_JUMP=y
  CONFIG_PHYSICAL_ALIGN=0x1000000
-CONFIG_LEGACY_VSYSCALL_EMULATE=y
+# CONFIG_RETPOLINE is not set
  CONFIG_HIBERNATION=y
  CONFIG_PM_WAKELOCKS=y
  CONFIG_PM_DEBUG=y
@@ -74,7 +68,6 @@ CONFIG_PM_ADVANCED_DEBUG=y
  CONFIG_PM_TRACE_RTC=y
  CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
  CONFIG_ACPI_EC_DEBUGFS=m
-CONFIG_ACPI_VIDEO=m
  CONFIG_ACPI_DOCK=y
  CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
  CONFIG_ACPI_PCI_SLOT=y
@@ -108,6 +101,8 @@ CONFIG_BLK_DEV_INTEGRITY=y
  CONFIG_BLK_DEV_THROTTLING=y
  CONFIG_PARTITION_ADVANCED=y
  CONFIG_BINFMT_MISC=y
+CONFIG_ZSWAP=y
+# CONFIG_COMPAT_BRK is not set
  CONFIG_MEMORY_HOTPLUG=y
  CONFIG_MEMORY_HOTREMOVE=y
  CONFIG_KSM=y
@@ -115,15 +110,12 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=65536
  CONFIG_MEMORY_FAILURE=y
  CONFIG_HWPOISON_INJECT=m
  CONFIG_TRANSPARENT_HUGEPAGE=y
-CONFIG_CLEANCACHE=y
-CONFIG_FRONTSWAP=y
  CONFIG_CMA=y
  CONFIG_CMA_AREAS=7
  CONFIG_MEM_SOFT_DIRTY=y
-CONFIG_ZSWAP=y
-CONFIG_ZSMALLOC=y
  CONFIG_ZONE_DEVICE=y
  CONFIG_DEVICE_PRIVATE=y
+CONFIG_USERFAULTFD=y
  CONFIG_NET=y
  CONFIG_PACKET=y
  CONFIG_PACKET_DIAG=y
@@ -167,7 +159,6 @@ CONFIG_BRIDGE_NETFILTER=m
  CONFIG_NF_CONNTRACK=m
  CONFIG_NF_CONNTRACK_SECMARK=y
  CONFIG_NF_CONNTRACK_ZONES=y
-# CONFIG_NF_CONNTRACK_PROCFS is not set
  CONFIG_NF_CONNTRACK_EVENTS=y
  CONFIG_NF_CONNTRACK_TIMEOUT=y
  CONFIG_NF_CONNTRACK_TIMESTAMP=y
@@ -178,7 +169,6 @@ CONFIG_NETFILTER_NETLINK_GLUE_CT=y
  CONFIG_NF_TABLES=m
  CONFIG_NF_TABLES_NETDEV=y
  CONFIG_NFT_CT=m
-CONFIG_NFT_COUNTER=m
  CONFIG_NFT_CONNLIMIT=m
  CONFIG_NFT_LOG=m
  CONFIG_NFT_LIMIT=m
@@ -270,7 +260,6 @@ CONFIG_IP_NF_TARGET_MASQUERADE=m
  CONFIG_IP_NF_TARGET_NETMAP=m
  CONFIG_IP_NF_TARGET_REDIRECT=m
  CONFIG_IP_NF_MANGLE=m
-CONFIG_IP_NF_TARGET_CLUSTERIP=m
  CONFIG_IP_NF_TARGET_ECN=m
  CONFIG_IP_NF_TARGET_TTL=m
  CONFIG_IP_NF_RAW=m
@@ -312,7 +301,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
  CONFIG_DEVTMPFS=y
  CONFIG_DEVTMPFS_MOUNT=y
  # CONFIG_PREVENT_FIRMWARE_BUILD is not set
-CONFIG_EFI_VARS=y
  CONFIG_PARPORT=y
  CONFIG_PARPORT_PC=y
  CONFIG_PARPORT_SERIAL=y
@@ -363,7 +351,6 @@ CONFIG_E1000=y
  CONFIG_E1000E=y
  CONFIG_IGB=y
  CONFIG_IGBVF=y
-CONFIG_IXGB=y
  CONFIG_IXGBE=y
  CONFIG_I40E=y
  CONFIG_SKY2=y
@@ -401,14 +388,14 @@ CONFIG_SENSORS_K10TEMP=m
  CONFIG_WATCHDOG=y
  CONFIG_RC_CORE=y
  CONFIG_RC_DECODERS=y
+CONFIG_IR_JVC_DECODER=y
+CONFIG_IR_MCE_KBD_DECODER=y
  CONFIG_IR_NEC_DECODER=y
  CONFIG_IR_RC5_DECODER=y
  CONFIG_IR_RC6_DECODER=y
-CONFIG_IR_JVC_DECODER=y
-CONFIG_IR_SONY_DECODER=y
  CONFIG_IR_SANYO_DECODER=y
  CONFIG_IR_SHARP_DECODER=y
-CONFIG_IR_MCE_KBD_DECODER=y
+CONFIG_IR_SONY_DECODER=y
  CONFIG_IR_XMP_DECODER=y
  CONFIG_AGP=y
  CONFIG_AGP_AMD64=y
@@ -422,7 +409,6 @@ CONFIG_HSA_AMD_P2P=y
  CONFIG_DRM_AST=m
  CONFIG_FB=y
  CONFIG_BACKLIGHT_CLASS_DEVICE=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
  CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
  CONFIG_HID_BATTERY_STRENGTH=y
  CONFIG_HIDRAW=y
@@ -456,7 +442,6 @@ CONFIG_RTC_CLASS=y
  # CONFIG_RTC_HCTOSYS is not set
  CONFIG_DMADEVICES=y
  CONFIG_DMABUF_MOVE_NOTIFY=y
-# CONFIG_X86_PLATFORM_DEVICES is not set
  CONFIG_AMD_IOMMU=y
  CONFIG_INTEL_IOMMU=y
  # CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set
@@ -473,9 +458,7 @@ CONFIG_XFS_WARN=y
  CONFIG_FANOTIFY=y
  CONFIG_QUOTA=y
  CONFIG_QUOTA_NETLINK_INTERFACE=y
-# CONFIG_PRINT_QUOTA_WARNING is not set
  CONFIG_QFMT_V2=y
-CONFIG_AUTOFS4_FS=y
  CONFIG_FUSE_FS=m
  CONFIG_CUSE=m
  CONFIG_OVERLAY_FS=y
@@ -509,22 +492,21 @@ CONFIG_SECURITY=y
  CONFIG_SECURITY_NETWORK=y
  CONFIG_SECURITY_SELINUX=y
  CONFIG_SECURITY_SELINUX_BOOTPARAM=y
-CONFIG_SECURITY_SELINUX_DISABLE=y
-CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
CONFIG_LSM="yama,loadpin,safesetid,integrity,selinux,smack,tomoyo,apparmor"
  CONFIG_CRYPTO_AUTHENC=y
+CONFIG_CRYPTO_DES=y
+CONFIG_CRYPTO_CBC=y
  CONFIG_CRYPTO_SEQIV=y
  CONFIG_CRYPTO_ECHAINIV=y
-CONFIG_CRYPTO_CBC=y
  CONFIG_CRYPTO_MD4=y
  CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_DES=y
  CONFIG_PRINTK_TIME=y
  CONFIG_DYNAMIC_DEBUG=y
  CONFIG_KGDB=y
  CONFIG_KGDB_LOW_LEVEL_TRAP=y
  CONFIG_KGDB_KDB=y
  CONFIG_KDB_KEYBOARD=y
+CONFIG_UBSAN=y
  CONFIG_DEBUG_RODATA_TEST=y
  CONFIG_DEBUG_KMEMLEAK=y
  CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
--
2.34.1




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux