ci starts bisection 2025-01-20 16:21:33.526191933 +0000 UTC m=+110.109677747 bisecting cause commit starting from 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb building syzkaller on df3dc63b8ba0b52ca67025f5b55cd4356b3eda75 fetch other tags and check if the commit is present ensuring issue is reproducible on original commit 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb testing commit 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 4c8e38714dd7521f5324fb76fa33ae8b48b05c4929fa72437d6d447f1984bf04 all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] check whether we can drop unnecessary instrumentation disabling configs for [UBSAN BUG KASAN ATOMIC_SLEEP HANG LEAK], they are not needed testing commit 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 4948852b99f363240bb1de981337a2f8ba6632680d2d55bdddfed44b825c489b all runs: OK false negative chance: 0.000 kconfig minimization: base=4045 full=8229 leaves diff=2119 split chunks (needed=false): <2119> split chunk #0 of len 2119 into 5 parts testing without sub-chunk 1/5 testing commit 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 5640eee00d51e144559995adcd5cc26bc8a04917e1d686a081a384c4767c68ff all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] the chunk can be dropped testing without sub-chunk 2/5 testing commit 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 failed building 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb: drivers/gpu/drm/bridge/aux-bridge.c:116: undefined reference to `devm_drm_of_get_bridge' testing without sub-chunk 3/5 testing commit 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 7aa0491bbf27a94dcb3402b8e27c15d8ee084cba5b6a8a75225483b47dfeb8ab all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] the chunk can be dropped testing without sub-chunk 4/5 testing commit 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: c5d4c50f00dcde7fac6f2bbb3eea7f36be9dbb6cec643786938bdf69941fc189 all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] the chunk can be dropped testing without sub-chunk 5/5 testing commit 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 7de6e586cb30b04174093d3a2dfc3c8add41454842725c2ac704894843cc40d5 all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] the chunk can be dropped minimized to 424 configs; suspects: [6LOWPAN ARCH_ENABLE_MEMORY_HOTREMOVE ASUS_WMI CHARGER_BQ24190 CMA COMMON_CLK DAX DLM DRM DRM_BRIDGE DRM_MIPI_DSI DRM_PANEL DRM_PANEL_BRIDGE DRM_PANEL_EDP DRM_PANEL_ORIENTATION_QUIRKS DRM_SIMPLEDRM DRM_TTM DRM_TTM_HELPER DRM_UDL DRM_VGEM DRM_VIRTIO_GPU DRM_VIRTIO_GPU_KMS DRM_VKMS DRM_VMWGFX DUMMY DVB_AF9013 DVB_AF9033 DVB_AS102 DVB_AS102_FE DVB_B2C2_FLEXCOP DVB_B2C2_FLEXCOP_USB DVB_CORE DVB_DIB3000MB DVB_DIB3000MC DVB_EC100 DVB_GP8PSK_FE DVB_RTL2830 DVB_RTL2832 DVB_RTL2832_SDR DVB_TEST_DRIVERS DVB_TTUSB_BUDGET DVB_TTUSB_DEC DVB_USB DVB_USB_A800 DVB_USB_AF9005 DVB_USB_AF9005_REMOTE DVB_USB_AF9015 DVB_USB_AF9035 DVB_USB_ANYSEE DVB_USB_AU6610 DVB_USB_AZ6007 DVB_USB_AZ6027 DVB_USB_CE6230 DVB_USB_CINERGY_T2 DVB_USB_CXUSB DVB_USB_CXUSB_ANALOG DVB_USB_DIB0700 DVB_USB_DIB3000MC DVB_USB_DIBUSB_MB DVB_USB_DIBUSB_MC DVB_USB_DIGITV DVB_USB_DTT200U DVB_USB_DTV5100 DVB_USB_DVBSKY DVB_USB_DW2102 DVB_USB_EC168 DVB_USB_GL861 DVB_USB_GP8PSK DVB_USB_LME2510 DVB_USB_M920X DVB_USB_MXL111SF DVB_USB_NOVA_T_USB2 DVB_USB_OPERA1 DVB_USB_PCTV452E DVB_USB_RTL28XXU DVB_USB_TECHNISAT_USB2 DVB_USB_TTUSB2 DVB_USB_UMT_010 DVB_USB_V2 DVB_USB_VP702X DVB_USB_VP7045 DVB_USB_ZD1301 DVB_VIDTV DVB_ZL10353 ECRYPT_FS ECRYPT_FS_MESSAGING EDAC EEPROM_93CX6 EFS_FS ENCRYPTED_KEYS EQUALIZER EROFS_FS EROFS_FS_BACKED_BY_FILE EROFS_FS_POSIX_ACL EROFS_FS_SECURITY EROFS_FS_XATTR EROFS_FS_ZIP EVM EVM_ADD_XATTRS EVM_ATTR_FSUUID EXFAT_FS EXPORTFS_BLOCK_OPS EXT3_FS EXT3_FS_POSIX_ACL EXT3_FS_SECURITY EXTCON EXTCON_INTEL_CHT_WC EXTCON_PTN5150 EXTCON_USBC_TUSB320 F2FS_CHECK_FS F2FS_FAULT_INJECTION F2FS_FS F2FS_FS_COMPRESSION F2FS_FS_LZ4 F2FS_FS_LZ4HC F2FS_FS_LZO F2FS_FS_LZORLE F2FS_FS_POSIX_ACL F2FS_FS_SECURITY F2FS_FS_XATTR F2FS_FS_ZSTD F2FS_STAT_FS FANOTIFY FANOTIFY_ACCESS_PERMISSIONS FB FB_CFB_COPYAREA FB_CFB_FILLRECT FB_CFB_IMAGEBLIT FB_CORE FB_DEFERRED_IO FB_DEVICE FB_IOMEM_FOPS FB_IOMEM_HELPERS FB_NOTIFY FB_SYSMEM_FOPS FB_SYSMEM_HELPERS FB_SYSMEM_HELPERS_DEFERRED FB_SYS_COPYAREA FB_SYS_FILLRECT FB_SYS_IMAGEBLIT FB_TILEBLITTING FB_VESA FB_VGA16 FB_VIRTUAL FDDI FIREWIRE FIREWIRE_NET FIREWIRE_OHCI FIREWIRE_SBP2 FONT_8x16 FONT_8x8 FONT_SUPPORT FRAMEBUFFER_CONSOLE FRAMEBUFFER_CONSOLE_DETECT_PRIMARY FRAMEBUFFER_CONSOLE_ROTATION FS_DAX FS_DAX_PMD FS_ENCRYPTION FS_ENCRYPTION_ALGS FS_STACK FS_VERITY FS_VERITY_BUILTIN_SIGNATURES FTL FUSE_DAX FUSE_FS FW_LOADER_COMPRESS FW_LOADER_PAGED_BUF FW_LOADER_SYSFS FW_LOADER_USER_HELPER FW_LOADER_USER_HELPER_FALLBACK GACT_PROB GARP GENERIC_PHY GET_FREE_REGION GFS2_FS GFS2_FS_LOCKING_DLM GNSS GNSS_USB GOOGLE_COREBOOT_TABLE GOOGLE_FIRMWARE GOOGLE_MEMCONSOLE GOOGLE_MEMCONSOLE_COREBOOT GOOGLE_VPD GPIOLIB GPIOLIB_IRQCHIP GPIO_ACPI GPIO_DLN2 GPIO_LJCA GPIO_VIPERBOARD GREENASIA_FF GREYBUS GREYBUS_BRIDGED_PHY GREYBUS_ES2 GREYBUS_HID GREYBUS_USB GROUP_SCHED_WEIGHT GTP GUEST_PERF_EVENTS GVE HAVE_ARCH_NODE_DEV_GROUP HAVE_ARCH_USERFAULTFD_MINOR HAVE_ARCH_USERFAULTFD_WP HAVE_BOOTMEM_INFO_NODE HAVE_CLK_PREPARE HAVE_KVM_CPU_RELAX_INTERCEPT HAVE_KVM_DIRTY_RING HAVE_KVM_DIRTY_RING_ACQ_REL HAVE_KVM_DIRTY_RING_TSO HAVE_KVM_IRQCHIP HAVE_KVM_IRQ_BYPASS HAVE_KVM_IRQ_ROUTING HAVE_KVM_MSI HAVE_KVM_NO_POLL HAVE_KVM_PFNCACHE HAVE_KVM_PM_NOTIFIER HAVE_KVM_READONLY_MEM HAVE_SCHED_AVG_IRQ HDLC HDLC_CISCO HDLC_FR HDLC_PPP HDLC_RAW HDLC_RAW_ETH HDLC_X25 HDMI HFSPLUS_FS HFS_FS HID_ACCUTOUCH HID_ACRUX HID_ACRUX_FF HID_ALPS HID_APPLEIR HID_ASUS HID_AUREAL HID_BATTERY_STRENGTH HID_BETOP_FF HID_BIGBEN_FF HID_CMEDIA HID_CORSAIR HID_COUGAR HID_CP2112 HID_CREATIVE_SB0540 HID_ELAN HID_ELECOM HID_ELO HID_EMS_FF HID_EVISION HID_FT260 HID_GEMBIRD HID_GFRM HID_GLORIOUS HID_GOOGLE_STADIA_FF HID_GREENASIA HID_GT683R HID_HOLTEK HID_ICADE HID_JABRA HID_KEYTOUCH HID_KYE HID_LCPOWER HID_LED HID_LENOVO HID_LETSKETCH HID_LOGITECH_DJ HID_LOGITECH_HIDPP HID_MACALLY HID_MAGICMOUSE HID_MALTRON HID_MAYFLASH HID_MCP2200 HID_MCP2221 HID_MEGAWORLD_FF HID_MULTITOUCH HID_NTI HID_ORTEK HID_PENMOUNT HID_PICOLCD HID_PICOLCD_BACKLIGHT HID_PICOLCD_CIR HID_PICOLCD_FB HID_PICOLCD_LCD HID_PICOLCD_LEDS HID_PLANTRONICS HID_PRIMAX HID_PRODIKEYS HID_PXRC HID_RAZER HID_RETRODE HID_RMI HID_ROCCAT HID_SAITEK HID_SEMITEK HID_SENSOR_ACCEL_3D HID_SENSOR_ALS HID_SENSOR_CUSTOM_INTEL_HINGE HID_SENSOR_CUSTOM_SENSOR HID_SENSOR_DEVICE_ROTATION HID_SENSOR_GYRO_3D HID_SENSOR_HUB HID_SENSOR_HUMIDITY HID_SENSOR_IIO_COMMON HID_SENSOR_IIO_TRIGGER HID_SENSOR_INCLINOMETER_3D HID_SENSOR_MAGNETOMETER_3D HID_SENSOR_PRESS HID_SENSOR_PROX HID_SENSOR_TEMP HID_SIGMAMICRO HID_SPEEDLINK HID_STEELSERIES HID_THINGM HID_TIVO HID_TOPRE HID_TWINHAN HID_U2FZERO HID_UCLOGIC HID_UDRAW_PS3 HID_VIEWSONIC HID_VIVALDI HID_VIVALDI_COMMON HID_VRC2 HID_WACOM HID_WALTOP HID_WIIMOTE HID_XIAOMI HID_XINMO HID_ZYDACRON HMM_MIRROR HOLTEK_FF HOTPLUG_PCI_PCIE HPET_MMAP HPET_MMAP_DEFAULT HPFS_FS I2C_ALGOBIT I2C_CHARDEV I2C_CP2615 I2C_DESIGNWARE_CORE I2C_DESIGNWARE_PLATFORM I2C_DIOLAN_U2C I2C_DLN2 I2C_HID_ACPI I2C_HID_CORE I2C_HID_OF I2C_LJCA I2C_MUX I2C_MUX_REG I2C_ROBOTFUZZ_OSIF I2C_SI4713 I2C_SLAVE I2C_SLAVE_EEPROM I2C_TINY_USB I2C_VIPERBOARD IEEE802154 IEEE802154_6LOWPAN IEEE802154_ATUSB IEEE802154_DRIVERS IEEE802154_HWSIM IEEE802154_NL802154_EXPERIMENTAL IEEE802154_SOCKET IFB IIO IIO_BUFFER IIO_KFIFO_BUF IIO_TRIGGER IIO_TRIGGERED_BUFFER IKCONFIG IKCONFIG_PROC IMA IMA_APPRAISE IMA_APPRAISE_MODSIG IMA_DEFAULT_HASH_SHA256 IMA_LSM_RULES IMA_MEASURE_ASYMMETRIC_KEYS IMA_NG_TEMPLATE IMA_QUEUE_EARLY_BOOT_KEYS IMA_READ_POLICY IMA_WRITE_POLICY INET6_ESPINTCP INET6_ESP_OFFLOAD INET6_IPCOMP INET6_TUNNEL INET6_XFRM_TUNNEL INET_AH INET_DCCP_DIAG INET_DIAG INET_DIAG_DESTROY INET_ESP INET_ESPINTCP INET_ESP_OFFLOAD INET_IPCOMP INET_MPTCP_DIAG INET_RAW_DIAG INET_SCTP_DIAG INET_TCP_DIAG INET_UDP_DIAG INET_XFRM_TUNNEL INFINIBAND INFINIBAND_ADDR_TRANS INFINIBAND_ADDR_TRANS_CONFIGFS INFINIBAND_IPOIB INFINIBAND_IPOIB_CM INFINIBAND_IPOIB_DEBUG INFINIBAND_ISER INFINIBAND_ON_DEMAND_PAGING INFINIBAND_RTRS INFINIBAND_SRP INFINIBAND_USER_ACCESS INFINIBAND_USER_MAD INFINIBAND_USER_MEM INPUT_ATI_REMOTE2 INPUT_CM109 INPUT_IMS_PCU INPUT_JOYDEV INPUT_KEYSPAN_REMOTE INPUT_LEDS INPUT_MOUSEDEV INPUT_MOUSEDEV_PSAUX INPUT_POWERMATE INPUT_UINPUT INPUT_YEALINK INTEGRITY INTEGRITY_ASYMMETRIC_KEYS INTEGRITY_AUDIT INTEGRITY_SIGNATURE INTEGRITY_TRUSTED_KEYRING INTEL_CHTWC_INT33FE INTEL_IDMA64 INTEL_IOATDMA INTEL_IOMMU_DEFAULT_ON INTEL_IOMMU_SVM INTEL_ISHTP_ECLITE INTEL_ISH_FIRMWARE_DOWNLOADER INTEL_ISH_HID INTEL_SOC_PMIC_CHTWC INTERVAL_TREE_SPAN_ITER IOMMUFD IOMMUFD_DRIVER IOMMUFD_TEST IP6_NF_MATCH_AH IP6_NF_MATCH_EUI64 IP6_NF_MATCH_FRAG IP6_NF_MATCH_HL IP6_NF_MATCH_MH IP6_NF_MATCH_OPTS IP6_NF_MATCH_RPFILTER IP6_NF_MATCH_RT IP6_NF_MATCH_SRH IP6_NF_NAT IP6_NF_RAW IP6_NF_SECURITY IP6_NF_TARGET_HL IP6_NF_TARGET_MASQUERADE IP6_NF_TARGET_NPT IP6_NF_TARGET_SYNPROXY IPV6_FOU IPV6_FOU_TUNNEL IPV6_GRE IPV6_ILA IPV6_MIP6 IPV6_MROUTE IPV6_MROUTE_MULTIPLE_TABLES IPV6_MULTIPLE_TABLES IPV6_OPTIMISTIC_DAD IPV6_PIMSM_V2 IPV6_ROUTER_PREF IPV6_ROUTE_INFO IPV6_RPL_LWTUNNEL IPV6_SEG6_BPF IPV6_SEG6_HMAC IPV6_SEG6_LWTUNNEL IPV6_SIT_6RD IPV6_SUBTREES IPV6_TUNNEL IPV6_VTI IPVLAN IPVLAN_L3S IPVTAP IP_DCCP IP_DCCP_CCID3 IP_DCCP_TFRC_LIB IP_FIB_TRIE_STATS IP_MROUTE_MULTIPLE_TABLES IP_NF_ARPFILTER IP_NF_ARPTABLES IP_NF_ARP_MANGLE IP_NF_MATCH_AH IP_NF_MATCH_ECN IP_NF_MATCH_RPFILTER IP_NF_MATCH_TTL IP_NF_RAW IP_NF_SECURITY IP_NF_TARGET_ECN IP_NF_TARGET_NETMAP IP_NF_TARGET_REDIRECT IP_NF_TARGET_SYNPROXY IP_NF_TARGET_TTL IP_ROUTE_CLASSID IP_SCTP IP_SET IP_SET_BITMAP_IP IP_SET_BITMAP_IPMAC IP_SET_BITMAP_PORT IP_SET_HASH_IP IP_SET_HASH_IPMAC IP_SET_HASH_IPMARK IP_SET_HASH_IPPORT IP_SET_HASH_IPPORTIP IP_SET_HASH_IPPORTNET IP_SET_HASH_MAC IP_SET_HASH_NET IP_SET_HASH_NETIFACE IP_SET_HASH_NETNET IP_SET_HASH_NETPORT IP_SET_HASH_NETPORTNET IP_SET_LIST_SET IP_VS IP_VS_DH IP_VS_FO IP_VS_FTP IP_VS_IPV6 IP_VS_LBLC IP_VS_PROTO_TCP IRQ_TIME_ACCOUNTING LAPB LCD_CLASS_DEVICE MAC802154 MEDIA_DIGITAL_TV_SUPPORT MEDIA_RADIO_SUPPORT MEDIA_SDR_SUPPORT MEDIA_SUPPORT MEDIA_TEST_SUPPORT MEDIA_USB_SUPPORT MEMORY_HOTPLUG MEMORY_HOTREMOVE MFD_DLN2 MFD_VIPERBOARD MPTCP MTD NETFILTER_ADVANCED NET_ACT_GACT NET_ACT_MIRRED NET_IPGRE_DEMUX NFT_COMPAT NFT_COMPAT_ARP NFT_FWD_NETDEV NF_TABLES NF_TABLES_ARP NF_TABLES_NETDEV RADIO_ADAPTERS RADIO_SI4713 RAS RC_CORE REGULATOR RFKILL SND SOUND STAGING TRANSPARENT_HUGEPAGE TYPEC TYPEC_MUX_PI3USB30532 USB_LJCA USB_ROLES_INTEL_XHCI USB_ROLE_SWITCH VIDEO_DEV VIRTIO_FS WAN ZONE_DEVICE] picked [v6.11 v6.10 v6.9 v6.7 v6.5 v6.3 v6.1 v5.19 v5.16 v5.13 v5.10 v5.7 v5.4 v5.1 v4.19] out of 34 release tags testing release v6.11 testing commit 98f7e32f20d28ec452afb208f9cffc08448a2652 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: d4ff0a00048fd9455faf3b025de621d7be20242a28283956761f17b5aa7a745c all runs: OK false negative chance: 0.000 # git bisect start 5b913f5d7d7fe0f567dea8605f21da6eaa1735fb 98f7e32f20d28ec452afb208f9cffc08448a2652 Bisecting: 11890 revisions left to test after this (roughly 14 steps) [e08d227840bb9366c6321ae1e480b37ba5eec29b] Merge tag 's390-6.12-2' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux testing commit e08d227840bb9366c6321ae1e480b37ba5eec29b gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ee4fc429d816f9a5c010bf84ab97411761eaadf84789167cedb7afe7d98e83b3 all runs: OK false negative chance: 0.000 # git bisect good e08d227840bb9366c6321ae1e480b37ba5eec29b Bisecting: 6234 revisions left to test after this (roughly 13 steps) [38b6724d9ccf03b1cb78a75f5ef3d3f2334b4e5f] Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git testing commit 38b6724d9ccf03b1cb78a75f5ef3d3f2334b4e5f gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 1c32c5c0f7420cb4cc6163e29207d99e2efa984f9147310f0d50927db6a0f809 all runs: OK false negative chance: 0.000 # git bisect good 38b6724d9ccf03b1cb78a75f5ef3d3f2334b4e5f Bisecting: 3018 revisions left to test after this (roughly 12 steps) [c3d817516ba49c6dd0c597e7d69315ff873b1e2a] Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git testing commit c3d817516ba49c6dd0c597e7d69315ff873b1e2a gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 8bd12ddca562f2e8d341f00a4cb54feac3842b064e2c2187b4b1e2925d0d6c9f all runs: OK false negative chance: 0.000 # git bisect good c3d817516ba49c6dd0c597e7d69315ff873b1e2a Bisecting: 1508 revisions left to test after this (roughly 11 steps) [7b0911a94fb9ee51f66d7dc8d0512dbffe2f6e47] Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git testing commit 7b0911a94fb9ee51f66d7dc8d0512dbffe2f6e47 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 2d5d9f5cd2c482e8b0fdcf6d3874e2ad104096c23ed59f2a048666ddbfc946da all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] # git bisect bad 7b0911a94fb9ee51f66d7dc8d0512dbffe2f6e47 Bisecting: 774 revisions left to test after this (roughly 10 steps) [e685d7ae3a368c77d0be1318ec825061f5e0d209] Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi.git testing commit e685d7ae3a368c77d0be1318ec825061f5e0d209 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ac756420c1c4aad6719d4cfdc569a593344d497b77771867e8c334cba5f42a07 all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] # git bisect bad e685d7ae3a368c77d0be1318ec825061f5e0d209 Bisecting: 383 revisions left to test after this (roughly 9 steps) [37fa5d6190ecfc2e0df7e262926e63eadccf25c9] Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc.git testing commit 37fa5d6190ecfc2e0df7e262926e63eadccf25c9 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 6543c46c8ffd02e90ee01ce3d0490661dd9f3a26da3d2bfd0dcd4a166359eb8c all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] # git bisect bad 37fa5d6190ecfc2e0df7e262926e63eadccf25c9 Bisecting: 222 revisions left to test after this (roughly 8 steps) [476c7f4cef6ea4a1d359ab282e8144d344597277] Merge branch 'for-6.13/io_uring' into for-next testing commit 476c7f4cef6ea4a1d359ab282e8144d344597277 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 11758c8867e4e1804ddb0f85778f46e89ed7f43eb985636ca7422c8c47fe7ddf all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] # git bisect bad 476c7f4cef6ea4a1d359ab282e8144d344597277 Bisecting: 63 revisions left to test after this (roughly 6 steps) [16a6e0430fcfb38e80477a72079c84c612457e91] io_uring: prevent speculating sq_array indexing testing commit 16a6e0430fcfb38e80477a72079c84c612457e91 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 0b8614733bcc184397b1079d630559f86987710da768a6833170f1a2e5c60d37 all runs: OK false negative chance: 0.000 # git bisect good 16a6e0430fcfb38e80477a72079c84c612457e91 Bisecting: 31 revisions left to test after this (roughly 5 steps) [904ebd2527c507752f5ddb358f887d2e0dab96a0] block: remove redundant explicit memory barrier from rq_qos waiter and waker testing commit 904ebd2527c507752f5ddb358f887d2e0dab96a0 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ece4a0b44fd0fc0e5719c025a2cdcee8f5af68dccef36a0599d99d6404584f2d all runs: OK false negative chance: 0.000 # git bisect good 904ebd2527c507752f5ddb358f887d2e0dab96a0 Bisecting: 15 revisions left to test after this (roughly 4 steps) [cec12397d9a4699ac18467a9c14c43f47f161b31] Merge branch 'for-6.13/block' into for-next testing commit cec12397d9a4699ac18467a9c14c43f47f161b31 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: aa77411ed5682b7bb81e602e7f1a1a159f30f63de1eb3ca8cd779a0183382d72 all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] # git bisect bad cec12397d9a4699ac18467a9c14c43f47f161b31 Bisecting: 7 revisions left to test after this (roughly 3 steps) [8d3fd059dd289e6c322e5741ad56794bcce699a2] loop: Use bdev limit helpers for configuring discard testing commit 8d3fd059dd289e6c322e5741ad56794bcce699a2 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 7e9521656a027e811915c60e6f48530349da2197eea02848157b92df80808bdd all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] # git bisect bad 8d3fd059dd289e6c322e5741ad56794bcce699a2 Bisecting: 3 revisions left to test after this (roughly 2 steps) [6b6f6c41c8ac9b5ef758f16b793e1fd998cd25b4] nvme: core: switch to non_owner variant of start_freeze/unfreeze queue testing commit 6b6f6c41c8ac9b5ef758f16b793e1fd998cd25b4 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 4d5b4885ca67218a2b251228513a494621e3cccdc260fd3db2b9a17d9b77c163 all runs: OK false negative chance: 0.000 # git bisect good 6b6f6c41c8ac9b5ef758f16b793e1fd998cd25b4 Bisecting: 1 revision left to test after this (roughly 1 step) [e4e535bff2bc82bb49a633775f9834beeaa527db] iov_iter: don't require contiguous pages in iov_iter_extract_bvec_pages testing commit e4e535bff2bc82bb49a633775f9834beeaa527db gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 690e7997b75274ba53be6a3594dde441f8b005731c529584c8d1abca694d0603 all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] # git bisect bad e4e535bff2bc82bb49a633775f9834beeaa527db Bisecting: 0 revisions left to test after this (roughly 0 steps) [f1be1788a32e8fa63416ad4518bbd1a85a825c9d] block: model freeze & enter queue as lock for supporting lockdep testing commit f1be1788a32e8fa63416ad4518bbd1a85a825c9d gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 19c8d01f6efa7c81cdaa840330145014500580d1127ce1f50667f8825397f293 all runs: crashed: possible deadlock in blk_trace_setup representative crash: possible deadlock in blk_trace_setup, types: [LOCKDEP] # git bisect bad f1be1788a32e8fa63416ad4518bbd1a85a825c9d f1be1788a32e8fa63416ad4518bbd1a85a825c9d is the first bad commit commit f1be1788a32e8fa63416ad4518bbd1a85a825c9d Author: Ming Lei Date: Fri Oct 25 08:37:20 2024 +0800 block: model freeze & enter queue as lock for supporting lockdep Recently we got several deadlock report[1][2][3] caused by blk_mq_freeze_queue and blk_enter_queue(). Turns out the two are just like acquiring read/write lock, so model them as read/write lock for supporting lockdep: 1) model q->q_usage_counter as two locks(io and queue lock) - queue lock covers sync with blk_enter_queue() - io lock covers sync with bio_enter_queue() 2) make the lockdep class/key as per-queue: - different subsystem has very different lock use pattern, shared lock class causes false positive easily - freeze_queue degrades to no lock in case that disk state becomes DEAD because bio_enter_queue() won't be blocked any more - freeze_queue degrades to no lock in case that request queue becomes dying because blk_enter_queue() won't be blocked any more 3) model blk_mq_freeze_queue() as acquire_exclusive & try_lock - it is exclusive lock, so dependency with blk_enter_queue() is covered - it is trylock because blk_mq_freeze_queue() are allowed to run concurrently 4) model blk_enter_queue() & bio_enter_queue() as acquire_read() - nested blk_enter_queue() are allowed - dependency with blk_mq_freeze_queue() is covered - blk_queue_exit() is often called from other contexts(such as irq), and it can't be annotated as lock_release(), so simply do it in blk_enter_queue(), this way still covered cases as many as possible With lockdep support, such kind of reports may be reported asap and needn't wait until the real deadlock is triggered. For example, lockdep report can be triggered in the report[3] with this patch applied. [1] occasional block layer hang when setting 'echo noop > /sys/block/sda/queue/scheduler' https://bugzilla.kernel.org/show_bug.cgi?id=219166 [2] del_gendisk() vs blk_queue_enter() race condition https://lore.kernel.org/linux-block/20241003085610.GK11458@google.com/ [3] queue_freeze & queue_enter deadlock in scsi https://lore.kernel.org/linux-block/ZxG38G9BuFdBpBHZ@fedora/T/#u Reviewed-by: Christoph Hellwig Signed-off-by: Ming Lei Link: https://lore.kernel.org/r/20241025003722.3630252-4-ming.lei@redhat.com Signed-off-by: Jens Axboe block/blk-core.c | 18 ++++++++++++++++-- block/blk-mq.c | 26 ++++++++++++++++++++++---- block/blk.h | 29 ++++++++++++++++++++++++++--- block/genhd.c | 15 +++++++++++---- include/linux/blkdev.h | 6 ++++++ 5 files changed, 81 insertions(+), 13 deletions(-) accumulated error probability: 0.00 culprit signature: 19c8d01f6efa7c81cdaa840330145014500580d1127ce1f50667f8825397f293 parent signature: 4d5b4885ca67218a2b251228513a494621e3cccdc260fd3db2b9a17d9b77c163 revisions tested: 21, total time: 7h59m37.81609749s (build: 5h2m20.621772064s, test: 2h10m11.468819821s) first bad commit: f1be1788a32e8fa63416ad4518bbd1a85a825c9d block: model freeze & enter queue as lock for supporting lockdep recipients (to): ["axboe@kernel.dk" "hch@lst.de" "ming.lei@redhat.com"] recipients (cc): [] crash: possible deadlock in blk_trace_setup ====================================================== WARNING: possible circular locking dependency detected 6.12.0-rc4-syzkaller #0 Not tainted ------------------------------------------------------ syz.3.15/3476 is trying to acquire lock: ffff88817a092698 (&mm->mmap_lock){++++}-{3:3}, at: __might_fault+0x92/0x100 mm/memory.c:6705 but task is already holding lock: ffff888103f0af48 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_setup+0xa8/0x190 kernel/trace/blktrace.c:647 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #3 (&q->debugfs_mutex){+.+.}-{3:3}: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825 __mutex_lock_common kernel/locking/mutex.c:608 [inline] __mutex_lock+0x136/0xd70 kernel/locking/mutex.c:752 blk_mq_init_sched+0x39f/0x730 block/blk-mq-sched.c:473 elevator_init_mq+0x15f/0x240 block/elevator.c:605 add_disk_fwnode+0xfe/0xd20 block/genhd.c:413 sd_probe+0xa77/0x10c0 drivers/scsi/sd.c:4024 really_probe+0x2eb/0x960 drivers/base/dd.c:658 __driver_probe_device+0x138/0x310 drivers/base/dd.c:800 driver_probe_device+0x4b/0x3a0 drivers/base/dd.c:830 __driver_attach_async_helper+0x133/0x250 drivers/base/dd.c:1148 async_run_entry_fn+0x9e/0x3f0 kernel/async.c:129 process_one_work kernel/workqueue.c:3229 [inline] process_scheduled_works+0x96c/0x1540 kernel/workqueue.c:3310 worker_thread+0x727/0xb10 kernel/workqueue.c:3391 kthread+0x2e0/0x380 kernel/kthread.c:389 ret_from_fork+0x32/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 -> #2 (&q->q_usage_counter(io)){++++}-{0:0}: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825 bio_queue_enter block/blk.h:75 [inline] blk_mq_submit_bio+0x3d0/0x1a00 block/blk-mq.c:3069 __submit_bio+0x1cc/0x410 block/blk-core.c:629 __submit_bio_noacct_mq block/blk-core.c:710 [inline] submit_bio_noacct_nocheck+0x422/0xdf0 block/blk-core.c:739 ext4_io_submit fs/ext4/page-io.c:377 [inline] io_submit_add_bh fs/ext4/page-io.c:418 [inline] ext4_bio_write_folio+0xd33/0x1540 fs/ext4/page-io.c:560 mpage_submit_folio+0x142/0x1a0 fs/ext4/inode.c:1921 mpage_map_and_submit_buffers fs/ext4/inode.c:2167 [inline] mpage_map_and_submit_extent fs/ext4/inode.c:2299 [inline] ext4_do_writepages+0x19ab/0x3090 fs/ext4/inode.c:2724 ext4_writepages+0x201/0x380 fs/ext4/inode.c:2813 do_writepages+0x357/0x880 mm/page-writeback.c:2683 __writeback_single_inode+0xf9/0xbe0 fs/fs-writeback.c:1658 writeback_sb_inodes+0x678/0x1020 fs/fs-writeback.c:1954 __writeback_inodes_wb+0x11c/0x1e0 fs/fs-writeback.c:2025 wb_writeback+0x366/0x800 fs/fs-writeback.c:2136 wb_check_old_data_flush fs/fs-writeback.c:2240 [inline] wb_do_writeback fs/fs-writeback.c:2293 [inline] wb_workfn+0xa31/0xec0 fs/fs-writeback.c:2321 process_one_work kernel/workqueue.c:3229 [inline] process_scheduled_works+0x96c/0x1540 kernel/workqueue.c:3310 worker_thread+0x727/0xb10 kernel/workqueue.c:3391 kthread+0x2e0/0x380 kernel/kthread.c:389 ret_from_fork+0x32/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 -> #1 (jbd2_handle){++++}-{0:0}: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825 start_this_handle+0x1b1b/0x1d80 fs/jbd2/transaction.c:448 jbd2__journal_start+0x2a5/0x580 fs/jbd2/transaction.c:505 __ext4_journal_start_sb+0x182/0x410 fs/ext4/ext4_jbd2.c:112 __ext4_journal_start fs/ext4/ext4_jbd2.h:326 [inline] ext4_dirty_inode+0x8d/0x100 fs/ext4/inode.c:5981 __mark_inode_dirty+0x227/0xa30 fs/fs-writeback.c:2493 generic_update_time fs/inode.c:2043 [inline] inode_update_time fs/inode.c:2056 [inline] touch_atime+0x2e3/0x4e0 fs/inode.c:2128 file_accessed include/linux/fs.h:2528 [inline] ext4_file_mmap+0x13f/0x460 fs/ext4/file.c:797 call_mmap include/linux/fs.h:2172 [inline] mmap_region+0x1136/0x2250 mm/mmap.c:1447 do_mmap+0x708/0xc80 mm/mmap.c:496 vm_mmap_pgoff+0x202/0x350 mm/util.c:588 ksys_mmap_pgoff+0x41e/0x610 mm/mmap.c:542 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x210 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f -> #0 (&mm->mmap_lock){++++}-{3:3}: check_prev_add kernel/locking/lockdep.c:3161 [inline] check_prevs_add kernel/locking/lockdep.c:3280 [inline] validate_chain+0x18ef/0x5920 kernel/locking/lockdep.c:3904 __lock_acquire+0x1384/0x2050 kernel/locking/lockdep.c:5202 lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825 __might_fault+0xab/0x100 mm/memory.c:6705 _inline_copy_from_user include/linux/uaccess.h:161 [inline] _copy_from_user+0x25/0xa0 lib/usercopy.c:18 copy_from_user include/linux/uaccess.h:203 [inline] __blk_trace_setup kernel/trace/blktrace.c:626 [inline] blk_trace_setup+0xc7/0x190 kernel/trace/blktrace.c:648 sg_ioctl_common drivers/scsi/sg.c:1121 [inline] sg_ioctl+0xafd/0x2b40 drivers/scsi/sg.c:1163 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:907 [inline] __se_sys_ioctl+0xa8/0xf0 fs/ioctl.c:893 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x210 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f other info that might help us debug this: Chain exists of: &mm->mmap_lock --> &q->q_usage_counter(io) --> &q->debugfs_mutex Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&q->debugfs_mutex); lock(&q->q_usage_counter(io)); lock(&q->debugfs_mutex); rlock(&mm->mmap_lock); *** DEADLOCK *** 1 lock held by syz.3.15/3476: #0: ffff888103f0af48 (&q->debugfs_mutex){+.+.}-{3:3}, at: blk_trace_setup+0xa8/0x190 kernel/trace/blktrace.c:647 stack backtrace: CPU: 0 UID: 0 PID: 3476 Comm: syz.3.15 Not tainted 6.12.0-rc4-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x198/0x250 lib/dump_stack.c:120 print_circular_bug+0x13a/0x1b0 kernel/locking/lockdep.c:2074 check_noncircular+0x36a/0x4a0 kernel/locking/lockdep.c:2206 check_prev_add kernel/locking/lockdep.c:3161 [inline] check_prevs_add kernel/locking/lockdep.c:3280 [inline] validate_chain+0x18ef/0x5920 kernel/locking/lockdep.c:3904 __lock_acquire+0x1384/0x2050 kernel/locking/lockdep.c:5202 lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825 __might_fault+0xab/0x100 mm/memory.c:6705 _inline_copy_from_user include/linux/uaccess.h:161 [inline] _copy_from_user+0x25/0xa0 lib/usercopy.c:18 copy_from_user include/linux/uaccess.h:203 [inline] __blk_trace_setup kernel/trace/blktrace.c:626 [inline] blk_trace_setup+0xc7/0x190 kernel/trace/blktrace.c:648 sg_ioctl_common drivers/scsi/sg.c:1121 [inline] sg_ioctl+0xafd/0x2b40 drivers/scsi/sg.c:1163 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:907 [inline] __se_sys_ioctl+0xa8/0xf0 fs/ioctl.c:893 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x210 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fc9c677e719 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007fc9c74ce038 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007fc9c6935f80 RCX: 00007fc9c677e719 RDX: 0000000000000000 RSI: 00000000c0481273 RDI: 0000000000000003 RBP: 00007fc9c67f139e R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007fc9c6935f80 R15: 00007ffef98ae7d8