ci starts bisection 2023-08-23 03:22:27.49478003 +0000 UTC m=+52575.946023448 bisecting cause commit starting from 28c736b0e92e11bfe2b9997688213dc43cb22182 building syzkaller on b81ca3f66f8d2d8b397c3c1dc5f14e77c2936b1e ensuring issue is reproducible on original commit 28c736b0e92e11bfe2b9997688213dc43cb22182 testing commit 28c736b0e92e11bfe2b9997688213dc43cb22182 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 3f9abe592cbb564b345bd5e0c6830d596737f90b6c57fe13cd53e411c3c80379 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] check whether we can drop unnecessary instrumentation disabling configs for [LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN BUG], they are not needed testing commit 28c736b0e92e11bfe2b9997688213dc43cb22182 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 066cdfb50db826c2c6e80a5c43043dda19c71ffcb077580037f38542e485fc2b all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] the bug reproduces without the instrumentation disabling configs for [BUG LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN], they are not needed kconfig minimization: base=3883 full=7691 leaves diff=2019 split chunks (needed=false): <2019> split chunk #0 of len 2019 into 5 parts testing without sub-chunk 1/5 disabling configs for [ATOMIC_SLEEP HANG LEAK UBSAN BUG LOCKDEP], they are not needed testing commit 28c736b0e92e11bfe2b9997688213dc43cb22182 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: c6430f92caaa9197f77e3498f7372f595815ddc3e46243bf2d8a343968c0422a all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] the chunk can be dropped testing without sub-chunk 2/5 disabling configs for [BUG LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN], they are not needed testing commit 28c736b0e92e11bfe2b9997688213dc43cb22182 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: b27666072353afe49fc6ffe5572a8f3578e855ce9812c27f53e689b2c42a2fec all runs: OK false negative chance: 0.000 testing without sub-chunk 3/5 disabling configs for [HANG LEAK UBSAN BUG LOCKDEP ATOMIC_SLEEP], they are not needed testing commit 28c736b0e92e11bfe2b9997688213dc43cb22182 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 1f51b60341e7bb67bddce220f99225aec8e275a5cee473f8c7906257ffb31f10 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] the chunk can be dropped testing without sub-chunk 4/5 disabling configs for [LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN BUG], they are not needed testing commit 28c736b0e92e11bfe2b9997688213dc43cb22182 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ad67c03a1d7426bc127478716a2a7953099638fafe56af6ad24fd7135363cec7 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] the chunk can be dropped testing without sub-chunk 5/5 disabling configs for [LEAK UBSAN BUG LOCKDEP ATOMIC_SLEEP HANG], they are not needed testing commit 28c736b0e92e11bfe2b9997688213dc43cb22182 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: add5fe2b317a98baf86eb5f92fc01300f906b4ebc96a7b7735607135129c1cd5 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] the chunk can be dropped minimized to 404 configs; suspects: [6LOWPAN ARCH_ENABLE_MEMORY_HOTREMOVE ASUS_WMI BLK_DEV_ZONED CMA COMMON_CLK DAX DLM DM_VERITY DM_VERITY_FEC DM_WRITECACHE DM_ZONED DRAGONRISE_FF DRM DRM_BOCHS DRM_BRIDGE DRM_BUDDY DRM_CIRRUS_QEMU DRM_DEBUG_MM DRM_DISPLAY_DP_HELPER DRM_DISPLAY_HDCP_HELPER DRM_DISPLAY_HDMI_HELPER DRM_DISPLAY_HELPER DRM_DP_AUX_BUS DRM_DP_AUX_CHARDEV DRM_FBDEV_EMULATION DRM_GEM_SHMEM_HELPER DRM_I915 DRM_I915_CAPTURE_ERROR DRM_I915_COMPRESS_ERROR DRM_I915_USERPTR DRM_KMS_HELPER 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 DRM_VRAM_HELPER 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_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_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 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_HELPERS FB_NOTIFY FB_SYSMEM_HELPERS FB_SYSMEM_HELPERS_DEFERRED FB_SYS_COPYAREA FB_SYS_FILLRECT FB_SYS_FOPS 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_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 GOOGLE_COREBOOT_TABLE GOOGLE_FIRMWARE GOOGLE_MEMCONSOLE GOOGLE_MEMCONSOLE_COREBOOT GOOGLE_VPD GPIOLIB GPIOLIB_IRQCHIP GPIO_ACPI GPIO_DLN2 GPIO_VIPERBOARD GREENASIA_FF GREYBUS GREYBUS_BRIDGED_PHY GREYBUS_ES2 GREYBUS_HID GREYBUS_USB 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_EVENTFD HAVE_KVM_IRQCHIP HAVE_KVM_IRQFD HAVE_KVM_IRQ_BYPASS HAVE_KVM_IRQ_ROUTING HAVE_KVM_MSI HAVE_KVM_NO_POLL HAVE_KVM_PFNCACHE HAVE_KVM_PM_NOTIFIER 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_CMEDIA HID_CORSAIR HID_CP2112 HID_DRAGONRISE HID_ELECOM HID_ELO HID_EMS_FF HID_GEMBIRD HID_GFRM HID_GREENASIA HID_GT683R HID_HOLTEK HID_ICADE HID_KEYTOUCH HID_KYE HID_LCPOWER HID_LED HID_LENOVO HID_LOGITECH_DJ HID_LOGITECH_HIDPP HID_MAGICMOUSE HID_MAYFLASH 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_RETRODE HID_RMI HID_ROCCAT HID_SAITEK HID_SENSOR_ACCEL_3D HID_SENSOR_ALS 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_SPEEDLINK HID_STEELSERIES HID_THINGM HID_TIVO HID_TWINHAN HID_UCLOGIC HID_UDRAW_PS3 HID_WACOM HID_WALTOP HID_WIIMOTE HID_XINMO HID_ZYDACRON HMM_MIRROR HOLTEK_FF HOTPLUG_PCI_PCIE HPET_MMAP HPET_MMAP_DEFAULT HPFS_FS I2C_ALGOBIT I2C_CHARDEV I2C_DESIGNWARE_CORE I2C_DESIGNWARE_PLATFORM I2C_DIOLAN_U2C I2C_DLN2 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_IDMA64 INTEL_IOATDMA INTEL_IOMMU_DEFAULT_ON INTEL_IOMMU_SVM INTEL_ISH_HID INTEL_SOC_PMIC_CHTWC INTERVAL_TREE INTERVAL_TREE_SPAN_ITER IOMMUFD IOMMUFD_TEST IOMMU_SVA 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_LBLCR 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_FWD_NETDEV NF_TABLES NF_TABLES_NETDEV RADIO_ADAPTERS RADIO_SI4713 RAS RC_CORE RFKILL SND SOUND STAGING TRANSPARENT_HUGEPAGE VIDEO_DEV VIRTIO_FS WAN ZONE_DEVICE] disabling configs for [BUG LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN], they are not needed testing release v6.4 testing commit 6995e2de6891c724bfeb2db33d7b87775f913ad1 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: a5eecc974c3cd2e402d110efce8365204e53e5b4fc641b519cb3b8d177a7ef92 all runs: OK false negative chance: 0.000 # git bisect start 28c736b0e92e11bfe2b9997688213dc43cb22182 6995e2de6891c724bfeb2db33d7b87775f913ad1 Bisecting: 13132 revisions left to test after this (roughly 14 steps) [39b1428639ed2224832234f48bfce991786aa4df] Merge tag 'regmap-fix-v6.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap testing commit 39b1428639ed2224832234f48bfce991786aa4df gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 627a7e2684a4d11701ef1280053d40384e6fb4da395a48d4055b6350426d9ab3 all runs: OK false negative chance: 0.000 # git bisect good 39b1428639ed2224832234f48bfce991786aa4df Bisecting: 5867 revisions left to test after this (roughly 13 steps) [f4d5d94452e4dcb84e84709b536c2686d0fcae84] Merge branch 'main' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git testing commit f4d5d94452e4dcb84e84709b536c2686d0fcae84 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 2ed3579a57d7f83d12e523d65174eacd20094ab40bb8587103d5edd28cc8b39b all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] # git bisect bad f4d5d94452e4dcb84e84709b536c2686d0fcae84 Bisecting: 3640 revisions left to test after this (roughly 12 steps) [ea0e34742aa5ae1237f155aead3ad9018ba6c6d9] Merge branch 'sunxi/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux.git testing commit ea0e34742aa5ae1237f155aead3ad9018ba6c6d9 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 045014adaaf5795970fd387cec86d34a9bac6f8c01c3e07007cb199985a70fcc all runs: OK false negative chance: 0.000 # git bisect good ea0e34742aa5ae1237f155aead3ad9018ba6c6d9 Bisecting: 1768 revisions left to test after this (roughly 11 steps) [a8716f9f5a967352ebf5a9ff1cabf3ae8ad8af0d] Merge branch 'master' of git://linuxtv.org/media_tree.git testing commit a8716f9f5a967352ebf5a9ff1cabf3ae8ad8af0d gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: c4826e95fc7a7352e0d3f5b0fea82b57478cb6ea615108a3c3157e7b747da767 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] # git bisect bad a8716f9f5a967352ebf5a9ff1cabf3ae8ad8af0d Bisecting: 1020 revisions left to test after this (roughly 10 steps) [0cc933d2a8b5fa685c768c12ad4d439d3094bc38] Merge branch 'locks-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux.git testing commit 0cc933d2a8b5fa685c768c12ad4d439d3094bc38 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 578f84642dbbc1c8f00efecef5e369716b405bd6fd7d92120b0198ce7a9f58ac all runs: OK false negative chance: 0.000 # git bisect good 0cc933d2a8b5fa685c768c12ad4d439d3094bc38 Bisecting: 523 revisions left to test after this (roughly 9 steps) [0857e8ff1eb9b0dbf3acb4613f096181687d1a3b] Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git testing commit 0857e8ff1eb9b0dbf3acb4613f096181687d1a3b gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 69030608c0ab3016b3f25d9414b6ecadf103fa7f8fcca730ab974ec56dad7ff8 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] # git bisect bad 0857e8ff1eb9b0dbf3acb4613f096181687d1a3b Bisecting: 261 revisions left to test after this (roughly 8 steps) [1ff665b6c7fc49c6a1c99ca148cd77581cd69930] Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git testing commit 1ff665b6c7fc49c6a1c99ca148cd77581cd69930 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 64e45dd40ff027ad30c885b6268523660478fd1b85edc222a5729190fcf29f22 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] # git bisect bad 1ff665b6c7fc49c6a1c99ca148cd77581cd69930 Bisecting: 107 revisions left to test after this (roughly 7 steps) [ff4f7887e239b068367ae857b27c7cec98015656] Merge branch 'vfs.tmpfs' into vfs.all testing commit ff4f7887e239b068367ae857b27c7cec98015656 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 4572ad8bd8038e6a835f63e01c250ee40565b2a93f9455ebb495dc5ddea3ebb1 all runs: OK false negative chance: 0.000 # git bisect good ff4f7887e239b068367ae857b27c7cec98015656 Bisecting: 56 revisions left to test after this (roughly 6 steps) [b13917cb7655192a45781d132d320a47ab8f2365] Merge branch 'vfs.fchmodat2' into vfs.all testing commit b13917cb7655192a45781d132d320a47ab8f2365 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: cc353d917b5db2337b362d7609df7ed14c116a05cf72356678b2e5cb19144174 all runs: OK false negative chance: 0.000 # git bisect good b13917cb7655192a45781d132d320a47ab8f2365 Bisecting: 28 revisions left to test after this (roughly 5 steps) [8ffa54e3370c5a8b9538dbe4077fc9c4b5a08f45] xfs use fs_holder_ops for the log and RT devices testing commit 8ffa54e3370c5a8b9538dbe4077fc9c4b5a08f45 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 41205186eb61f2e888c9e458e532c8ab004b06f1e010e542241823f268a167ab all runs: OK false negative chance: 0.000 # git bisect good 8ffa54e3370c5a8b9538dbe4077fc9c4b5a08f45 Bisecting: 14 revisions left to test after this (roughly 4 steps) [5e87491415217d6bec0bcae08a3156622be2b177] super: wait for nascent superblocks testing commit 5e87491415217d6bec0bcae08a3156622be2b177 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 6765498fc45e47ec12f6bddd708e74a44a0b41e972aca2e108cd9966eec8314b all runs: OK false negative chance: 0.000 # git bisect good 5e87491415217d6bec0bcae08a3156622be2b177 Bisecting: 9 revisions left to test after this (roughly 3 steps) [eb329cf7344191588f4852aa7b134040dee7a41f] Merge branch 'vfs.autofs' into vfs.all testing commit eb329cf7344191588f4852aa7b134040dee7a41f gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 0efb3b0e2dc776f78ea45cee56d8b744541e04d558418d6859d6099c698809bf all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] # git bisect bad eb329cf7344191588f4852aa7b134040dee7a41f Bisecting: 2 revisions left to test after this (roughly 1 step) [17fce12e7c0a53f0bed26af231a2a98a34d34c60] autofs: use wake_up() instead of wake_up_interruptible(() testing commit 17fce12e7c0a53f0bed26af231a2a98a34d34c60 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 15dde42a00c8e077b12045e56a5e3f490b17b925a46a60413f199c665cd2a1bd all runs: OK false negative chance: 0.000 # git bisect good 17fce12e7c0a53f0bed26af231a2a98a34d34c60 Bisecting: 0 revisions left to test after this (roughly 1 step) [c59465f5d99081bdde47f46daf7873e086be58d1] Merge branch 'vfs.super' into vfs.all testing commit c59465f5d99081bdde47f46daf7873e086be58d1 gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: fe5c5709cd847ecc008ed54d4ab9cc8d2062fd59465621dbdfe1330085f828f0 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] # git bisect bad c59465f5d99081bdde47f46daf7873e086be58d1 Bisecting: 0 revisions left to test after this (roughly 0 steps) [2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e] super: wait until we passed kill super testing commit 2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e gcc compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ba4ccfdbfb867c29bf8912c798853965c0989d3012b5180f30574b63d48d9d61 all runs: crashed: KASAN: slab-use-after-free Read in fuse_test_super representative crash: KASAN: slab-use-after-free Read in fuse_test_super, types: [KASAN] # git bisect bad 2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e 2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e is the first bad commit commit 2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e Author: Christian Brauner Date: Fri Aug 18 16:00:51 2023 +0200 super: wait until we passed kill super Recent rework moved block device closing out of sb->put_super() and into sb->kill_sb() to avoid deadlocks as s_umount is held in put_super() and blkdev_put() can end up taking s_umount again. That means we need to move the removal of the superblock from @fs_supers out of generic_shutdown_super() and into deactivate_locked_super() to ensure that concurrent mounters don't fail to open block devices that are still in use because blkdev_put() in sb->kill_sb() hasn't been called yet. We can now do this as we can make iterators through @fs_super and @super_blocks wait without holding s_umount. Concurrent mounts will wait until a dying superblock is fully dead so until sb->kill_sb() has been called and SB_DEAD been set. Concurrent iterators can already discard any SB_DYING superblock. Reviewed-by: Jan Kara Message-Id: <20230818-vfs-super-fixes-v3-v3-4-9f0b1876e46b@kernel.org> Signed-off-by: Christian Brauner fs/super.c | 71 ++++++++++++++++++++++++++++++++++++++++++++++++------ include/linux/fs.h | 1 + 2 files changed, 65 insertions(+), 7 deletions(-) accumulated error probability: 0.00 culprit signature: ba4ccfdbfb867c29bf8912c798853965c0989d3012b5180f30574b63d48d9d61 parent signature: 6765498fc45e47ec12f6bddd708e74a44a0b41e972aca2e108cd9966eec8314b revisions tested: 23, total time: 10h1m48.387758917s (build: 6h16m53.160788713s, test: 3h22m52.846828131s) first bad commit: 2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e super: wait until we passed kill super recipients (to): ["brauner@kernel.org" "jack@suse.cz"] recipients (cc): [] crash: KASAN: slab-use-after-free Read in fuse_test_super ================================================================== BUG: KASAN: slab-use-after-free in get_fuse_conn_super fs/fuse/fuse_i.h:874 [inline] BUG: KASAN: slab-use-after-free in fuse_test_super+0x94/0xa0 fs/fuse/inode.c:1661 Read of size 8 at addr ffff8881072e1800 by task syz-executor.2/4745 CPU: 0 PID: 4745 Comm: syz-executor.2 Not tainted 6.5.0-rc1-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/26/2023 Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x3d/0x60 lib/dump_stack.c:106 print_address_description mm/kasan/report.c:364 [inline] print_report+0xc4/0x620 mm/kasan/report.c:475 kasan_report+0xda/0x110 mm/kasan/report.c:588 get_fuse_conn_super fs/fuse/fuse_i.h:874 [inline] fuse_test_super+0x94/0xa0 fs/fuse/inode.c:1661 sget_fc+0x4ee/0x760 fs/super.c:764 fuse_get_tree+0x3bc/0x5a0 fs/fuse/inode.c:1710 vfs_get_tree+0x82/0x220 fs/super.c:1711 do_new_mount fs/namespace.c:3335 [inline] path_mount+0x878/0x1a00 fs/namespace.c:3662 do_mount fs/namespace.c:3675 [inline] __do_sys_mount fs/namespace.c:3884 [inline] __se_sys_mount fs/namespace.c:3861 [inline] __x64_sys_mount+0x208/0x280 fs/namespace.c:3861 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x38/0x80 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd RIP: 0033:0x7f6542a7e1ea Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb a6 e8 de 09 00 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b0 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f654378eee8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5 RAX: ffffffffffffffda RBX: 00007f654378ef80 RCX: 00007f6542a7e1ea RDX: 0000000020000280 RSI: 0000000020000300 RDI: 0000000000000000 RBP: 0000000020000280 R08: 00007f654378ef80 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000020000300 R13: 00007f654378ef40 R14: 0000000000000000 R15: 00000000200028c0 Allocated by task 4751: kasan_save_stack+0x33/0x50 mm/kasan/common.c:45 kasan_set_track+0x25/0x30 mm/kasan/common.c:52 ____kasan_kmalloc mm/kasan/common.c:374 [inline] __kasan_kmalloc+0xa2/0xb0 mm/kasan/common.c:383 kmalloc include/linux/slab.h:582 [inline] kzalloc include/linux/slab.h:703 [inline] fuse_get_tree+0xb4/0x5a0 fs/fuse/inode.c:1677 vfs_get_tree+0x82/0x220 fs/super.c:1711 do_new_mount fs/namespace.c:3335 [inline] path_mount+0x878/0x1a00 fs/namespace.c:3662 do_mount fs/namespace.c:3675 [inline] __do_sys_mount fs/namespace.c:3884 [inline] __se_sys_mount fs/namespace.c:3861 [inline] __x64_sys_mount+0x208/0x280 fs/namespace.c:3861 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x38/0x80 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd Freed by task 4751: kasan_save_stack+0x33/0x50 mm/kasan/common.c:45 kasan_set_track+0x25/0x30 mm/kasan/common.c:52 kasan_save_free_info+0x2b/0x40 mm/kasan/generic.c:522 ____kasan_slab_free mm/kasan/common.c:236 [inline] ____kasan_slab_free+0x15e/0x1b0 mm/kasan/common.c:200 kasan_slab_free include/linux/kasan.h:162 [inline] slab_free_hook mm/slub.c:1792 [inline] slab_free_freelist_hook+0x10b/0x1e0 mm/slub.c:1818 slab_free mm/slub.c:3801 [inline] __kmem_cache_free+0xba/0x340 mm/slub.c:3814 deactivate_locked_super+0x83/0x270 fs/super.c:454 cleanup_mnt+0x1d8/0x360 fs/namespace.c:1254 task_work_run+0x114/0x1f0 kernel/task_work.c:179 resume_user_mode_work include/linux/resume_user_mode.h:49 [inline] exit_to_user_mode_loop kernel/entry/common.c:171 [inline] exit_to_user_mode_prepare+0x13f/0x150 kernel/entry/common.c:204 __syscall_exit_to_user_mode_work kernel/entry/common.c:286 [inline] syscall_exit_to_user_mode+0x16/0x30 kernel/entry/common.c:297 do_syscall_64+0x44/0x80 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x63/0xcd The buggy address belongs to the object at ffff8881072e1800 which belongs to the cache kmalloc-32 of size 32 The buggy address is located 0 bytes inside of freed 32-byte region [ffff8881072e1800, ffff8881072e1820) The buggy address belongs to the physical page: page:ffffea00041cb840 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1072e1 flags: 0x100000000000200(slab|node=0|zone=2) page_type: 0xffffffff() raw: 0100000000000200 ffff888100041500 dead000000000122 0000000000000000 raw: 0000000000000000 0000000080400040 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 0, migratetype Unmovable, gfp_mask 0x112c40(GFP_NOFS|__GFP_NOWARN|__GFP_NORETRY|__GFP_HARDWALL), pid 4747, tgid 4743 (syz-executor.1), ts 77126041167, free_ts 76998620858 set_page_owner include/linux/page_owner.h:31 [inline] post_alloc_hook+0x281/0x2f0 mm/page_alloc.c:1570 prep_new_page mm/page_alloc.c:1577 [inline] get_page_from_freelist+0x1131/0x3d90 mm/page_alloc.c:3221 __alloc_pages+0x1d0/0x470 mm/page_alloc.c:4477 alloc_slab_page mm/slub.c:1862 [inline] allocate_slab+0x24e/0x360 mm/slub.c:2009 new_slab mm/slub.c:2062 [inline] ___slab_alloc+0x7a7/0x1000 mm/slub.c:3215 __slab_alloc.constprop.0+0x4d/0x90 mm/slub.c:3314 __slab_alloc_node mm/slub.c:3367 [inline] slab_alloc_node mm/slub.c:3460 [inline] __kmem_cache_alloc_node+0x143/0x390 mm/slub.c:3509 __do_kmalloc_node mm/slab_common.c:984 [inline] __kmalloc+0x4c/0x160 mm/slab_common.c:998 kmalloc include/linux/slab.h:586 [inline] kzalloc include/linux/slab.h:703 [inline] tomoyo_encode2+0x9e/0x320 security/tomoyo/realpath.c:45 tomoyo_mount_acl+0x21e/0x7d0 security/tomoyo/mount.c:150 tomoyo_mount_permission+0x114/0x280 security/tomoyo/mount.c:237 security_sb_mount+0x74/0xb0 security/security.c:1360 path_mount+0xe9/0x1a00 fs/namespace.c:3604 do_mount fs/namespace.c:3675 [inline] __do_sys_mount fs/namespace.c:3884 [inline] __se_sys_mount fs/namespace.c:3861 [inline] __x64_sys_mount+0x208/0x280 fs/namespace.c:3861 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x38/0x80 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd page last free stack trace: reset_page_owner include/linux/page_owner.h:24 [inline] free_pages_prepare mm/page_alloc.c:1161 [inline] free_unref_page_prepare+0x5ac/0xcf0 mm/page_alloc.c:2348 free_unref_page_list+0xe6/0xaa0 mm/page_alloc.c:2489 release_pages+0x25c/0x10c0 mm/swap.c:1042 tlb_batch_pages_flush+0x79/0x140 mm/mmu_gather.c:97 tlb_flush_mmu_free mm/mmu_gather.c:292 [inline] tlb_flush_mmu mm/mmu_gather.c:299 [inline] tlb_finish_mmu+0x114/0x6c0 mm/mmu_gather.c:391 exit_mmap+0x26a/0x730 mm/mmap.c:3214 __mmput+0xb7/0x3e0 kernel/fork.c:1348 exit_mm kernel/exit.c:567 [inline] do_exit+0x776/0x2650 kernel/exit.c:861 do_group_exit+0xb4/0x250 kernel/exit.c:1024 get_signal+0x1ed5/0x1f00 kernel/signal.c:2877 arch_do_signal_or_restart+0x89/0x5d0 arch/x86/kernel/signal.c:308 exit_to_user_mode_loop kernel/entry/common.c:168 [inline] exit_to_user_mode_prepare+0xc3/0x150 kernel/entry/common.c:204 __syscall_exit_to_user_mode_work kernel/entry/common.c:286 [inline] syscall_exit_to_user_mode+0x16/0x30 kernel/entry/common.c:297 do_syscall_64+0x44/0x80 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x63/0xcd Memory state around the buggy address: ffff8881072e1700: fa fb fb fb fc fc fc fc fa fb fb fb fc fc fc fc ffff8881072e1780: fa fb fb fb fc fc fc fc fa fb fb fb fc fc fc fc >ffff8881072e1800: fa fb fb fb fc fc fc fc fa fb fb fb fc fc fc fc ^ ffff8881072e1880: fa fb fb fb fc fc fc fc fa fb fb fb fc fc fc fc ffff8881072e1900: fa fb fb fb fc fc fc fc 00 00 00 00 fc fc fc fc ==================================================================