ci2 starts bisection 2023-08-29 18:09:57.418552481 +0000 UTC m=+2486.479811257 bisecting cause commit starting from 1c59d383390f970b891b503b7f79b63a02db2ec5 building syzkaller on 7ba13a158b1ad89a23920bb64208ba34fed27b08 ensuring issue is reproducible on original commit 1c59d383390f970b891b503b7f79b63a02db2ec5 testing commit 1c59d383390f970b891b503b7f79b63a02db2ec5 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: b9fed5d54585c9fe1e7d13a3b091fb266de54c5400a144e58e0dfeee5e480012 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] check whether we can drop unnecessary instrumentation disabling configs for [BUG LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN], they are not needed testing commit 1c59d383390f970b891b503b7f79b63a02db2ec5 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: d8fd294fc5b43f34d3b56369dffa89bd27f6ef2ba4c8308b96deab449a1aba87 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] the bug reproduces without the instrumentation disabling configs for [LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN BUG], they are not needed kconfig minimization: base=3876 full=7633 leaves diff=1999 split chunks (needed=false): <1999> split chunk #0 of len 1999 into 5 parts testing without sub-chunk 1/5 disabling configs for [HANG LEAK UBSAN BUG LOCKDEP ATOMIC_SLEEP], they are not needed testing commit 1c59d383390f970b891b503b7f79b63a02db2ec5 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 9983430d7e70af466abf4f74b3706ef385d93284793a8b600d159ada98dd7b4f all runs: OK false negative chance: 0.000 testing without sub-chunk 2/5 disabling configs for [ATOMIC_SLEEP HANG LEAK UBSAN BUG LOCKDEP], they are not needed testing commit 1c59d383390f970b891b503b7f79b63a02db2ec5 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 47936685ab56e115b474710889f91aadc2fd17a870f3b02ce5e5c20cfbf865c5 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] the chunk can be dropped testing without sub-chunk 3/5 disabling configs for [BUG LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN], they are not needed testing commit 1c59d383390f970b891b503b7f79b63a02db2ec5 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 9585c86411f343038e488bf740680e52b7c1ae9721783098df7751e9b7aa019d all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] the chunk can be dropped testing without sub-chunk 4/5 disabling configs for [HANG LEAK UBSAN BUG LOCKDEP ATOMIC_SLEEP], they are not needed testing commit 1c59d383390f970b891b503b7f79b63a02db2ec5 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 4c956dc72618e65a3f13052369d6d1746a1cf7ad997754a904559d4eaac94e50 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] the chunk can be dropped testing without sub-chunk 5/5 disabling configs for [LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN BUG], they are not needed testing commit 1c59d383390f970b891b503b7f79b63a02db2ec5 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ad2bdf5b65e72fd9a3e62ce7c4c146253d98513157d3a71e5025dad989984a22 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] the chunk can be dropped minimized to 400 configs; suspects: [6LOWPAN 6LOWPAN_GHC_EXT_HDR_DEST 6LOWPAN_GHC_EXT_HDR_FRAG 6LOWPAN_GHC_EXT_HDR_HOP 6LOWPAN_GHC_EXT_HDR_ROUTE 6LOWPAN_GHC_ICMPV6 6LOWPAN_GHC_UDP 6LOWPAN_NHC 6LOWPAN_NHC_DEST 6LOWPAN_NHC_FRAGMENT 6LOWPAN_NHC_HOP 6LOWPAN_NHC_IPV6 6LOWPAN_NHC_MOBILITY 6LOWPAN_NHC_ROUTING 6LOWPAN_NHC_UDP 6PACK 842_COMPRESS 842_DECOMPRESS 9P_FSCACHE 9P_FS_POSIX_ACL 9P_FS_SECURITY ACORN_PARTITION ACORN_PARTITION_ADFS ACORN_PARTITION_CUMANA ACORN_PARTITION_EESOX ACORN_PARTITION_ICS ACORN_PARTITION_POWERTEC ACORN_PARTITION_RISCIX ACPI_NFIT ACPI_PLATFORM_PROFILE ADDRESS_MASKING ADFS_FS AFFS_FS AFS_FS AFS_FSCACHE AF_KCM AF_RXRPC AF_RXRPC_IPV6 AIX_PARTITION AMIGA_PARTITION ANDROID_BINDERFS ANDROID_BINDER_IPC ANON_VMA_NAME APERTURE_HELPERS AR5523 ARCH_ENABLE_MEMORY_HOTREMOVE ARCH_ENABLE_THP_MIGRATION ASM_MODVERSIONS ASYNC_CORE ASYNC_MEMCPY ASYNC_PQ ASYNC_RAID6_RECOV ASYNC_TX_DMA ASYNC_XOR ATARI_PARTITION ATA_GENERIC ATA_OVER_ETH ATH10K ATH10K_CE ATH10K_PCI ATH10K_USB ATH11K ATH6KL ATH6KL_USB ATH9K ATH9K_AHB ATH9K_BTCOEX_SUPPORT ATH9K_CHANNEL_CONTEXT ATH9K_COMMON ATH9K_COMMON_DEBUG ATH9K_DEBUGFS ATH9K_DYNACK ATH9K_HTC ATH9K_HTC_DEBUGFS ATH9K_HW ATH9K_PCI ATH9K_PCOEM ATH9K_RFKILL ATH_COMMON ATM ATM_BR2684 ATM_CLIP ATM_DRIVERS ATM_LANE ATM_MPOA ATM_TCP AUXILIARY_BUS AX25 AX25_DAMA_SLAVE AX88796B_PHY BAREUDP BATMAN_ADV BATMAN_ADV_BATMAN_V BATMAN_ADV_BLA BATMAN_ADV_DAT BATMAN_ADV_MCAST BATMAN_ADV_NC BCACHE BCMA BCMA_HOST_PCI_POSSIBLE BEFS_FS BFQ_CGROUP_DEBUG BFQ_GROUP_IOSCHED BFS_FS BIG_KEYS BLK_CGROUP_PUNT_BIO BLK_CGROUP_RWSTAT BLK_DEBUG_FS_ZONED BLK_DEV_BSGLIB BLK_DEV_FD BLK_DEV_INTEGRITY BLK_DEV_INTEGRITY_T10 BLK_DEV_NBD BLK_DEV_NULL_BLK BLK_DEV_NULL_BLK_FAULT_INJECTION BLK_DEV_NVME BLK_DEV_PMEM BLK_DEV_RAM BLK_DEV_RNBD BLK_DEV_RNBD_CLIENT BLK_DEV_THROTTLING BLK_DEV_ZONED BLK_ICQ BLK_INLINE_ENCRYPTION BLK_INLINE_ENCRYPTION_FALLBACK BLK_WBT BLK_WBT_MQ BONDING BOOT_VESA_SUPPORT BPF_EVENTS BPF_JIT BPF_JIT_ALWAYS_ON BPF_JIT_DEFAULT_ON BPF_LSM BPF_PRELOAD BPF_PRELOAD_UMD BPF_STREAM_PARSER BPF_SYSCALL BPQETHER BRIDGE BRIDGE_CFM BRIDGE_EBT_802_3 BRIDGE_EBT_AMONG BRIDGE_EBT_ARP BRIDGE_EBT_ARPREPLY BRIDGE_EBT_BROUTE BRIDGE_EBT_DNAT BRIDGE_EBT_IP BRIDGE_EBT_IP6 BRIDGE_EBT_LIMIT BRIDGE_EBT_LOG BRIDGE_EBT_MARK BRIDGE_EBT_MARK_T BRIDGE_EBT_NFLOG BRIDGE_EBT_PKTTYPE BRIDGE_EBT_REDIRECT BRIDGE_EBT_SNAT BRIDGE_EBT_STP BRIDGE_EBT_T_FILTER BRIDGE_EBT_T_NAT BRIDGE_EBT_VLAN BRIDGE_IGMP_SNOOPING BRIDGE_MRP BRIDGE_NF_EBTABLES BRIDGE_VLAN_FILTERING BSD_DISKLABEL BSD_PROCESS_ACCT_V3 BT BTRFS_ASSERT BTRFS_FS BTRFS_FS_POSIX_ACL BTRFS_FS_REF_VERIFY BTT BT_6LOWPAN BT_ATH3K BT_BCM BT_BNEP BT_BNEP_MC_FILTER BT_BNEP_PROTO_FILTER BT_BREDR BT_CMTP BT_HCIBCM203X BT_HCIBFUSB BT_HCIBPA10X BT_HCIBTUSB BT_HCIBTUSB_BCM BT_HCIBTUSB_MTK BT_HCIBTUSB_POLL_SYNC BT_HCIBTUSB_RTL BT_HCIUART BT_HCIUART_3WIRE BT_HCIUART_AG6XX BT_HCIUART_BCSP BT_HCIUART_H4 BT_HCIUART_LL BT_HCIUART_MRVL BT_HCIUART_QCA BT_HCIUART_SERDEV BT_HCIVHCI BT_HIDP BT_HS BT_INTEL BT_LE BT_LEDS BT_LE_L2CAP_ECRED BT_MSFTEXT BT_MTK BT_QCA BT_RFCOMM BT_RFCOMM_TTY BT_RTL CACHEFILES CAIF CAIF_DEBUG CAIF_DRIVERS CAIF_NETDEV CAIF_TTY CAIF_USB CAIF_VIRTIO CAN CAN_8DEV_USB CAN_BCM CAN_CALC_BITTIMING CAN_DEV CAN_EMS_USB CAN_GS_USB CAN_GW CAN_IFI_CANFD CAN_ISOTP CAN_J1939 CAN_KVASER_USB CAN_MCBA_USB CAN_NETLINK CAN_PEAK_USB CAN_RAW CAN_SLCAN CAN_VCAN CAN_VXCAN CAPI_TRACE CARL9170 CARL9170_HWRNG CARL9170_LEDS CARL9170_WPC CEC_CORE CEPH_FS CEPH_FSCACHE CEPH_FS_POSIX_ACL CEPH_LIB CEPH_LIB_USE_DNS_RESOLVER CFG80211 CFG80211_CRDA_SUPPORT CFG80211_DEBUGFS CFG80211_DEFAULT_PS CFG80211_REQUIRE_SIGNED_REGDB CFG80211_USE_KERNEL_REGDB_KEYS CFG80211_WEXT CFS_BANDWIDTH CGROUP_BPF CHARGER_BQ24190 CHARGER_ISP1704 CHR_DEV_ST CIFS CIFS_ALLOW_INSECURE_LEGACY CIFS_DEBUG CIFS_DFS_UPCALL CIFS_FSCACHE CIFS_POSIX CIFS_SMB_DIRECT CIFS_SWN_UPCALL CIFS_UPCALL CIFS_XATTR CLS_U32_MARK CLS_U32_PERF CMA CMA_SIZE_SEL_MBYTES CMDLINE_PARTITION COMEDI COMEDI_DT9812 COMEDI_NI_USB6501 COMEDI_USBDUX COMEDI_USBDUXFAST COMEDI_USBDUXSIGMA COMEDI_USB_DRIVERS COMEDI_VMK80XX COMPAT_NETLINK_MESSAGES COUNTER CRAMFS CRAMFS_BLOCKDEV CRAMFS_MTD CRC4 CRC64 CRC64_ROCKSOFT CRC7 CRC8 CRC_ITU_T CRC_T10DIF CRYPTO_ADIANTUM CRYPTO_AEGIS128 CRYPTO_AEGIS128_AESNI_SSE2 CRYPTO_AES_NI_INTEL CRYPTO_AES_TI CRYPTO_ANSI_CPRNG CRYPTO_ANUBIS CRYPTO_ARC4 CRYPTO_ARCH_HAVE_LIB_BLAKE2S CRYPTO_ARCH_HAVE_LIB_CHACHA CRYPTO_ARCH_HAVE_LIB_CURVE25519 CRYPTO_ARCH_HAVE_LIB_POLY1305 CRYPTO_ARIA CRYPTO_ARIA_AESNI_AVX_X86_64 CRYPTO_BLAKE2B CRYPTO_BLAKE2S_X86 CRYPTO_BLOWFISH CRYPTO_BLOWFISH_COMMON CRYPTO_BLOWFISH_X86_64 CRYPTO_CAMELLIA CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 CRYPTO_CAMELLIA_AESNI_AVX_X86_64 CRYPTO_CAMELLIA_X86_64 CRYPTO_CAST5 CRYPTO_CAST5_AVX_X86_64 CRYPTO_CAST6 CRYPTO_CAST6_AVX_X86_64 CRYPTO_CAST_COMMON CRYPTO_CFB CRYPTO_CHACHA20 CRYPTO_CHACHA20POLY1305 CRYPTO_CHACHA20_X86_64 CRYPTO_CRC32 CRYPTO_CRC32C_INTEL CRYPTO_CRC32_PCLMUL CRYPTO_CRC64_ROCKSOFT CRYPTO_CRCT10DIF CRYPTO_CRCT10DIF_PCLMUL CRYPTO_CRYPTD CRYPTO_CTS CRYPTO_CURVE25519 CRYPTO_CURVE25519_X86 CRYPTO_DEFLATE CRYPTO_DES CRYPTO_DES3_EDE_X86_64 CRYPTO_DEV_CCP CRYPTO_DEV_CCP_DD CRYPTO_DEV_PADLOCK CRYPTO_DEV_PADLOCK_AES CRYPTO_DEV_PADLOCK_SHA CRYPTO_DEV_QAT CRYPTO_DEV_QAT_C3XXX CRYPTO_DEV_QAT_C3XXXVF CRYPTO_DEV_QAT_C62X CRYPTO_DEV_QAT_C62XVF CRYPTO_DEV_QAT_DH895xCC CRYPTO_DEV_QAT_DH895xCCVF CRYPTO_DEV_VIRTIO CRYPTO_DH CRYPTO_DRBG_CTR CRYPTO_DRBG_HASH CRYPTO_ECB CRYPTO_ECC CRYPTO_ECDH CRYPTO_ECRDSA CRYPTO_ENGINE CRYPTO_ESSIV CRYPTO_FCRYPT CRYPTO_GHASH_CLMUL_NI_INTEL CRYPTO_HCTR2 CRYPTO_KDF800108_CTR CRYPTO_KEYWRAP CRYPTO_KHAZAD CRYPTO_KPP CRYPTO_LIB_ARC4 CRYPTO_LIB_CHACHA CRYPTO_LIB_CHACHA20POLY1305 CRYPTO_LIB_CHACHA_GENERIC CRYPTO_LIB_CURVE25519 CRYPTO_LIB_CURVE25519_GENERIC CRYPTO_LIB_DES CRYPTO_LIB_POLY1305 CRYPTO_LIB_POLY1305_GENERIC CRYPTO_LRW CRYPTO_MICHAEL_MIC CRYPTO_NHPOLY1305 CRYPTO_NHPOLY1305_AVX2 CRYPTO_NHPOLY1305_SSE2 CRYPTO_OFB CRYPTO_PCBC CRYPTO_PCRYPT CRYPTO_POLY1305 CRYPTO_POLY1305_X86_64 CRYPTO_POLYVAL CRYPTO_POLYVAL_CLMUL_NI CRYPTO_RMD160 CRYPTO_SEED CRYPTO_SERPENT CRYPTO_SERPENT_AVX2_X86_64 CRYPTO_SERPENT_AVX_X86_64 CRYPTO_SERPENT_SSE2_X86_64 CRYPTO_SHA1_SSSE3 CRYPTO_SHA256_SSSE3 CRYPTO_SHA512_SSSE3 CRYPTO_SIMD CRYPTO_SM2 CRYPTO_SM3 CRYPTO_SM3_AVX_X86_64 CRYPTO_SM4 CRYPTO_SM4_AESNI_AVX2_X86_64 CRYPTO_SM4_AESNI_AVX_X86_64 CRYPTO_SM4_GENERIC CRYPTO_STREEBOG CRYPTO_TEA CRYPTO_TWOFISH CRYPTO_TWOFISH_AVX_X86_64 CRYPTO_TWOFISH_COMMON CRYPTO_TWOFISH_X86_64 CRYPTO_TWOFISH_X86_64_3WAY CRYPTO_USER CRYPTO_USER_API CRYPTO_USER_API_AEAD CRYPTO_USER_API_ENABLE_OBSOLETE CRYPTO_USER_API_HASH CRYPTO_USER_API_RNG CRYPTO_USER_API_SKCIPHER CRYPTO_VMAC CRYPTO_WP512 CRYPTO_XCBC CRYPTO_XCTR CRYPTO_XTS CRYPTO_XXHASH CUSE CYPRESS_FIRMWARE DAMON DAMON_DBGFS DAMON_PADDR DAMON_RECLAIM DAMON_VADDR DAX DCA DCB DEFAULT_PFIFO_FAST DEVICE_MIGRATION DEVICE_PRIVATE DEV_COREDUMP DEV_DAX DIMLIB DLN2_ADC DMABUF_HEAPS DMABUF_HEAPS_CMA DMABUF_HEAPS_SYSTEM DMABUF_MOVE_NOTIFY DMA_CMA DMA_ENGINE_RAID DM_AUDIT DM_BIO_PRISON DM_BUFIO DM_CACHE DM_CACHE_SMQ DM_CLONE DM_CRYPT DM_FLAKEY DM_INTEGRITY DM_MULTIPATH DM_MULTIPATH_QL DM_MULTIPATH_ST DM_PERSISTENT_DATA DM_RAID DM_SNAPSHOT DM_THIN_PROVISIONING DM_UEVENT DM_VERITY DM_VERITY_FEC DM_WRITECACHE DM_ZONED DRAGONRISE_FF DRM DRM_BOCHS DRM_BUDDY DRM_CIRRUS_QEMU DRM_DEBUG_MM ENCRYPTED_KEYS EXTCON FSCACHE FUSE_FS GPIOLIB HAMRADIO HID_DRAGONRISE IIO INFINIBAND INFINIBAND_ADDR_TRANS INFINIBAND_RTRS_CLIENT IOSCHED_BFQ ISDN ISDN_CAPI LIBNVDIMM MAC80211 MAC80211_LEDS MEDIA_SUPPORT MEMORY_HOTPLUG MEMORY_HOTREMOVE MFD_DLN2 MTD NET_CLS_U32 NET_SCH_DEFAULT PARTITION_ADVANCED RFKILL SERIAL_DEV_BUS TLS TLS_DEVICE TRANSPARENT_HUGEPAGE TRUSTED_KEYS USB_GADGET USB_PHY VLAN_8021Q WANT_COMPAT_NETLINK_MESSAGES WEXT_CORE WIRELESS WIRELESS_EXT WLAN WLAN_VENDOR_ATH X86_X32_ABI ZONE_DEVICE] disabling configs for [UBSAN BUG LOCKDEP ATOMIC_SLEEP HANG LEAK], they are not needed picked [%!d(string=v6.5) %!d(string=v6.4) %!d(string=v6.3) %!d(string=v6.1) %!d(string=v5.19) %!d(string=v5.17) %!d(string=v5.15) %!d(string=v5.13) %!d(string=v5.10) %!d(string=v5.7) %!d(string=v5.4) %!d(string=v5.1) %!d(string=v4.19)] out of %!d(MISSING) release tags testing release v6.5 testing commit 2dde18cd1d8fac735875f2e4987f11817cc0bc2c gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 2cab651e22d6e36a3a089766f13946cd9d221a851047393a57cf1bb1f47ef058 all runs: OK false negative chance: 0.000 # git bisect start 1c59d383390f970b891b503b7f79b63a02db2ec5 2dde18cd1d8fac735875f2e4987f11817cc0bc2c Bisecting: 599 revisions left to test after this (roughly 9 steps) [42a7f6e3ffe06308c1ec43a7dac39a27de101574] Merge tag 'x86_microcode_for_v6.6_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip testing commit 42a7f6e3ffe06308c1ec43a7dac39a27de101574 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: d9784eeb434cfeb87174ffbb396c23bab503c3fc95d4065600959373ce2af962 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] # git bisect bad 42a7f6e3ffe06308c1ec43a7dac39a27de101574 Bisecting: 305 revisions left to test after this (roughly 8 steps) [f678c890c684373a387b0d73cd4d51edbf329c27] Merge tag 'affs-for-6.6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux testing commit f678c890c684373a387b0d73cd4d51edbf329c27 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 9de02941ea1ebac5d9c8322b29f636da50c6deb0650c4c374dc5511c1f161534 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] # git bisect bad f678c890c684373a387b0d73cd4d51edbf329c27 Bisecting: 166 revisions left to test after this (roughly 7 steps) [ecd7db20474c3859d4d01f34aaabf41bd28c7d84] Merge tag 'v6.6-vfs.tmpfs' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs testing commit ecd7db20474c3859d4d01f34aaabf41bd28c7d84 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 1d5873c0270c2c4216cf27a74ca3748110b4c05def84f14230fd10ca51c201aa all runs: OK false negative chance: 0.000 # git bisect good ecd7db20474c3859d4d01f34aaabf41bd28c7d84 Bisecting: 76 revisions left to test after this (roughly 6 steps) [511fb5bafed197ff76d9adf5448de67f1d0558ae] Merge tag 'v6.6-vfs.super' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs testing commit 511fb5bafed197ff76d9adf5448de67f1d0558ae gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 6b9cd2448cc2004665cceb24956a3f2eb6b27832d6f428bd9f81e7853a12d90b all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] # git bisect bad 511fb5bafed197ff76d9adf5448de67f1d0558ae Bisecting: 45 revisions left to test after this (roughly 6 steps) [051178c366bbc1bf8b4aba5ca5519d7da453c95f] super: use higher-level helper for {freeze,thaw} testing commit 051178c366bbc1bf8b4aba5ca5519d7da453c95f gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: d78f05587cbc5106a9741aa633cb07116369be8a6f16c3a35e9ece0235de72b1 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] # git bisect bad 051178c366bbc1bf8b4aba5ca5519d7da453c95f Bisecting: 21 revisions left to test after this (roughly 5 steps) [2ea6f68932f73a6a9d82160d3ad0a49a5a6bb183] fs: use the super_block as holder when mounting file systems testing commit 2ea6f68932f73a6a9d82160d3ad0a49a5a6bb183 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ede30e0db6a3088b298eadb26123276b2171d91a40f3ac67ce533159025da035 all runs: OK false negative chance: 0.000 # git bisect good 2ea6f68932f73a6a9d82160d3ad0a49a5a6bb183 Bisecting: 10 revisions left to test after this (roughly 4 steps) [2527fd38772fea30c1d1cbf94839a0bbf4122133] dasd: also call __invalidate_device when setting the device offline testing commit 2527fd38772fea30c1d1cbf94839a0bbf4122133 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: de78a57a1d9a572d7c02b142ec66d54f38e76ba2a568cbfadf4393121b01e128 all runs: OK false negative chance: 0.000 # git bisect good 2527fd38772fea30c1d1cbf94839a0bbf4122133 Bisecting: 5 revisions left to test after this (roughly 3 steps) [38bcdd38935350abceace901313e007e84d84456] fs: remove get_super testing commit 38bcdd38935350abceace901313e007e84d84456 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 920ea546b9d01dd7fa7250b5f96a4da020745047203c47bc5c8a879a1c5733da all runs: OK false negative chance: 0.000 # git bisect good 38bcdd38935350abceace901313e007e84d84456 Bisecting: 2 revisions left to test after this (roughly 2 steps) [d8ce82efdece373b570f35acc8a29487b2087b84] super: make locking naming consistent testing commit d8ce82efdece373b570f35acc8a29487b2087b84 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: e1ddff3144ab0bc0fde5ccc01e7687ce9bd568040cb98557861b136a0b7593cb all runs: OK false negative chance: 0.000 # git bisect good d8ce82efdece373b570f35acc8a29487b2087b84 Bisecting: 0 revisions left to test after this (roughly 1 step) [2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e] super: wait until we passed kill super testing commit 2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: c2c0000511a33fec72b38fb312e09121ec50210e55e6b957e3ba28bbede526a4 all runs: crashed: KASAN: slab-use-after-free Read in afs_dynroot_test_super representative crash: KASAN: slab-use-after-free Read in afs_dynroot_test_super, types: [KASAN] # git bisect bad 2c18a63b760a0f68f14cb8bb4c3840bb0b63b73e Bisecting: 0 revisions left to test after this (roughly 0 steps) [5e87491415217d6bec0bcae08a3156622be2b177] super: wait for nascent superblocks testing commit 5e87491415217d6bec0bcae08a3156622be2b177 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: da8fb8a18a99295a196bdbbeba70712e23859828e6398267cfcce38e54534322 all runs: OK false negative chance: 0.000 # git bisect good 5e87491415217d6bec0bcae08a3156622be2b177 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: c2c0000511a33fec72b38fb312e09121ec50210e55e6b957e3ba28bbede526a4 parent signature: da8fb8a18a99295a196bdbbeba70712e23859828e6398267cfcce38e54534322 revisions tested: 19, total time: 5h0m54.897986848s (build: 2h2m25.522748909s, test: 2h24m2.923639457s) 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 afs_dynroot_test_super ================================================================== BUG: KASAN: slab-use-after-free in afs_dynroot_test_super+0x51/0xb0 fs/afs/super.c:434 Read of size 8 at addr ffff88810ab1cdc0 by task syz-executor.5/4579 CPU: 0 PID: 4579 Comm: syz-executor.5 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+0xf8/0x260 lib/dump_stack.c:106 print_address_description mm/kasan/report.c:364 [inline] print_report+0x163/0x540 mm/kasan/report.c:475 kasan_report+0x175/0x1b0 mm/kasan/report.c:588 afs_dynroot_test_super+0x51/0xb0 fs/afs/super.c:434 sget_fc+0x10f/0x560 fs/super.c:764 afs_get_tree+0x55f/0xe30 fs/afs/super.c:577 vfs_get_tree+0x7e/0x190 fs/super.c:1711 do_new_mount+0x1e5/0x8f0 fs/namespace.c:3335 do_mount fs/namespace.c:3675 [inline] __do_sys_mount fs/namespace.c:3884 [inline] __se_sys_mount+0x242/0x2d0 fs/namespace.c:3861 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd RIP: 0033:0x7f1fe667cae9 Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 e1 20 00 00 90 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 b0 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f1fe73440c8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5 RAX: ffffffffffffffda RBX: 00007f1fe679bf80 RCX: 00007f1fe667cae9 RDX: 0000000020000440 RSI: 0000000020000400 RDI: 0000000000000000 RBP: 00007f1fe66c847a R08: 0000000020000480 R09: 0000000000000000 R10: 0000000002010800 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000006 R14: 00007f1fe679bf80 R15: 00007ffd5b875af8 Allocated by task 4573: kasan_save_stack mm/kasan/common.c:45 [inline] kasan_set_track+0x4f/0x70 mm/kasan/common.c:52 ____kasan_kmalloc mm/kasan/common.c:374 [inline] __kasan_kmalloc+0x98/0xb0 mm/kasan/common.c:383 kmalloc include/linux/slab.h:582 [inline] kzalloc include/linux/slab.h:703 [inline] afs_alloc_sbi fs/afs/super.c:509 [inline] afs_get_tree+0xac/0xe30 fs/afs/super.c:571 vfs_get_tree+0x7e/0x190 fs/super.c:1711 do_new_mount+0x1e5/0x8f0 fs/namespace.c:3335 do_mount fs/namespace.c:3675 [inline] __do_sys_mount fs/namespace.c:3884 [inline] __se_sys_mount+0x242/0x2d0 fs/namespace.c:3861 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd Freed by task 4573: kasan_save_stack mm/kasan/common.c:45 [inline] kasan_set_track+0x4f/0x70 mm/kasan/common.c:52 kasan_save_free_info+0x28/0x40 mm/kasan/generic.c:522 ____kasan_slab_free+0x122/0x1e0 mm/kasan/common.c:236 kasan_slab_free include/linux/kasan.h:162 [inline] slab_free_hook mm/slub.c:1792 [inline] slab_free_freelist_hook mm/slub.c:1818 [inline] slab_free mm/slub.c:3801 [inline] __kmem_cache_free+0x294/0x450 mm/slub.c:3814 deactivate_locked_super+0x80/0x1c0 fs/super.c:454 cleanup_mnt+0x2a6/0x320 fs/namespace.c:1254 task_work_run+0x20a/0x280 kernel/task_work.c:179 resume_user_mode_work include/linux/resume_user_mode.h:49 [inline] exit_to_user_mode_loop+0xa4/0xb0 kernel/entry/common.c:171 exit_to_user_mode_prepare+0x64/0xb0 kernel/entry/common.c:204 __syscall_exit_to_user_mode_work kernel/entry/common.c:286 [inline] syscall_exit_to_user_mode+0x2b/0x1d0 kernel/entry/common.c:297 do_syscall_64+0x4d/0xc0 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x63/0xcd The buggy address belongs to the object at ffff88810ab1cdc0 which belongs to the cache kmalloc-32 of size 32 The buggy address is located 0 bytes inside of freed 32-byte region [ffff88810ab1cdc0, ffff88810ab1cde0) The buggy address belongs to the physical page: page:ffffea00042ac700 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10ab1c anon flags: 0x100000000000200(slab|node=0|zone=2) page_type: 0xffffffff() raw: 0100000000000200 ffff888100041500 0000000000000000 dead000000000001 raw: 0000000000000000 0000000000400040 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 0x12c40(GFP_NOFS|__GFP_NOWARN|__GFP_NORETRY), pid 1288, tgid 1288 (rcS), ts 7605277977, free_ts 7120379117 set_page_owner include/linux/page_owner.h:31 [inline] post_alloc_hook+0x26e/0x290 mm/page_alloc.c:1570 prep_new_page mm/page_alloc.c:1577 [inline] get_page_from_freelist+0x3f4f/0x4160 mm/page_alloc.c:3221 __alloc_pages+0x255/0x650 mm/page_alloc.c:4477 alloc_slab_page+0x6a/0x160 mm/slub.c:1862 allocate_slab mm/slub.c:2009 [inline] new_slab+0x70/0x260 mm/slub.c:2062 ___slab_alloc+0x833/0xd60 mm/slub.c:3215 __slab_alloc mm/slub.c:3314 [inline] __slab_alloc_node mm/slub.c:3367 [inline] slab_alloc_node mm/slub.c:3460 [inline] __kmem_cache_alloc_node+0x1a6/0x260 mm/slub.c:3509 __do_kmalloc_node mm/slab_common.c:984 [inline] __kmalloc+0x99/0x1d0 mm/slab_common.c:998 kmalloc include/linux/slab.h:586 [inline] kzalloc include/linux/slab.h:703 [inline] tomoyo_encode2 security/tomoyo/realpath.c:45 [inline] tomoyo_encode+0xaa/0x480 security/tomoyo/realpath.c:80 tomoyo_realpath_from_path+0x4a6/0x4e0 security/tomoyo/realpath.c:283 tomoyo_init_log+0xff0/0x1fb0 security/tomoyo/audit.c:263 tomoyo_supervisor+0x312/0xfa0 security/tomoyo/common.c:2088 tomoyo_audit_env_log security/tomoyo/environ.c:36 [inline] tomoyo_env_perm+0x131/0x1e0 security/tomoyo/environ.c:63 tomoyo_environ security/tomoyo/domain.c:672 [inline] tomoyo_find_next_domain+0xf49/0x16f0 security/tomoyo/domain.c:879 tomoyo_bprm_check_security+0xd4/0x100 security/tomoyo/tomoyo.c:101 security_bprm_check+0x27/0x70 security/security.c:1102 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+0x800/0x920 mm/page_alloc.c:2348 free_unref_page+0x37/0x3c0 mm/page_alloc.c:2443 kasan_depopulate_vmalloc_pte+0x74/0x90 mm/kasan/shadow.c:427 apply_to_pte_range mm/memory.c:2596 [inline] apply_to_pmd_range mm/memory.c:2640 [inline] apply_to_pud_range mm/memory.c:2676 [inline] apply_to_p4d_range mm/memory.c:2712 [inline] __apply_to_page_range+0x754/0x8c0 mm/memory.c:2746 kasan_release_vmalloc+0x9a/0xb0 mm/kasan/shadow.c:544 __purge_vmap_area_lazy+0x1324/0x1550 mm/vmalloc.c:1770 _vm_unmap_aliases+0x62e/0x6b0 mm/vmalloc.c:2306 change_page_attr_set_clr+0x209/0xce0 arch/x86/mm/pat/set_memory.c:1838 change_page_attr_set arch/x86/mm/pat/set_memory.c:1879 [inline] set_memory_nx+0xcf/0x110 arch/x86/mm/pat/set_memory.c:2072 free_init_pages arch/x86/mm/init.c:937 [inline] free_kernel_image_pages arch/x86/mm/init.c:956 [inline] free_initmem+0x83/0xb0 arch/x86/mm/init.c:983 kernel_init+0x2c/0x1a0 init/main.c:1446 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:308 Memory state around the buggy address: ffff88810ab1cc80: fa fb fb fb fc fc fc fc fa fb fb fb fc fc fc fc ffff88810ab1cd00: fa fb fb fb fc fc fc fc fa fb fb fb fc fc fc fc >ffff88810ab1cd80: fa fb fb fb fc fc fc fc fa fb fb fb fc fc fc fc ^ ffff88810ab1ce00: fa fb fb fb fc fc fc fc fa fb fb fb fc fc fc fc ffff88810ab1ce80: 00 00 00 00 fc fc fc fc 00 00 00 00 fc fc fc fc ==================================================================