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

Felix Kuehling felix.kuehling at amd.com
Tue Apr 16 20:30:27 UTC 2024


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 at amd.com>
>> ---
>>   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
>>


More information about the amd-gfx mailing list