ci2 starts bisection 2023-11-14 03:52:13.997176988 +0000 UTC m=+34601.105207721 bisecting fixing commit since 02e21884dcf2f1746ab686a6ea41a0a92520fe58 building syzkaller on 39990d513277ce9372a4cc89bdac23d9fc30b056 ensuring issue is reproducible on original commit 02e21884dcf2f1746ab686a6ea41a0a92520fe58 testing commit 02e21884dcf2f1746ab686a6ea41a0a92520fe58 gcc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 02e24daca651a4121c84496413ce3de3359267883599e7c03970f34f354a12a0 run #0: crashed: possible deadlock in ni_fiemap run #1: crashed: possible deadlock in ni_fiemap run #2: crashed: possible deadlock in ni_fiemap run #3: crashed: possible deadlock in ni_fiemap run #4: crashed: possible deadlock in ni_fiemap run #5: crashed: possible deadlock in ni_fiemap run #6: crashed: possible deadlock in ni_fiemap run #7: crashed: possible deadlock in ni_fiemap run #8: crashed: possible deadlock in ni_fiemap run #9: crashed: possible deadlock in ni_fiemap run #10: crashed: possible deadlock in ni_fiemap run #11: crashed: possible deadlock in ni_fiemap run #12: crashed: possible deadlock in ni_fiemap run #13: crashed: possible deadlock in ni_fiemap run #14: crashed: possible deadlock in ni_fiemap run #15: crashed: possible deadlock in ni_fiemap run #16: crashed: possible deadlock in ni_fiemap run #17: crashed: possible deadlock in ni_fiemap run #18: boot failed: WARNING in trc_inspect_reader run #19: boot failed: WARNING in trc_inspect_reader representative crash: possible deadlock in ni_fiemap, types: [LOCKDEP] check whether we can drop unnecessary instrumentation disabling configs for [ATOMIC_SLEEP HANG LEAK UBSAN BUG KASAN], they are not needed testing commit 02e21884dcf2f1746ab686a6ea41a0a92520fe58 gcc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: b55106cdbe92299e69b6126c48006f1591382796b5659a910e26146a8cd905ad all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] the bug reproduces without the instrumentation disabling configs for [UBSAN BUG KASAN ATOMIC_SLEEP HANG LEAK], they are not needed kconfig minimization: base=3703 full=7269 leaves diff=1986 split chunks (needed=false): <1986> split chunk #0 of len 1986 into 5 parts testing without sub-chunk 1/5 disabling configs for [BUG KASAN ATOMIC_SLEEP HANG LEAK UBSAN], they are not needed testing commit 02e21884dcf2f1746ab686a6ea41a0a92520fe58 gcc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: f6e407d578b7662df7c9432d33eda65a33ac9ff1bf4194e8ee60d33e8fffabd6 all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] the chunk can be dropped testing without sub-chunk 2/5 disabling configs for [ATOMIC_SLEEP HANG LEAK UBSAN BUG KASAN], they are not needed testing commit 02e21884dcf2f1746ab686a6ea41a0a92520fe58 gcc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 8a4f929db917cf8bb8faae862c1a120dc814f5bc4947de11a0c2b746d29cc71e all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] the chunk can be dropped testing without sub-chunk 3/5 disabling configs for [HANG LEAK UBSAN BUG KASAN ATOMIC_SLEEP], they are not needed testing commit 02e21884dcf2f1746ab686a6ea41a0a92520fe58 gcc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 0d7b8a50b7d7fd77050f1ad37c252e5cbccb035fc60ce8548a489130f411ba53 all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] the chunk can be dropped testing without sub-chunk 4/5 disabling configs for [BUG KASAN ATOMIC_SLEEP HANG LEAK UBSAN], they are not needed testing commit 02e21884dcf2f1746ab686a6ea41a0a92520fe58 gcc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 28d8faa5a74fee7e72a03860f1aef8a5db8dc0ab95fc2e81c153a651fd9fc9c6 all runs: OK false negative chance: 0.000 testing without sub-chunk 5/5 disabling configs for [UBSAN BUG KASAN ATOMIC_SLEEP HANG LEAK], they are not needed testing commit 02e21884dcf2f1746ab686a6ea41a0a92520fe58 gcc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: d2df8bd5775db4710534a8c053cce6a93f52fc67b42bc4892e3f9ae702daa81d all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] the chunk can be dropped minimized to 398 configs; suspects: [AF_RXRPC ARCH_ENABLE_MEMORY_HOTREMOVE ASYMMETRIC_TPM_KEY_SUBTYPE ATM AX25 CFG80211 CMA DAX DLM DVB_CORE ENCRYPTED_KEYS EXTCON GENEVE GPIOLIB HAMRADIO HID_SENSOR_HUB HID_SMARTJOYPLUS HID_THRUSTMASTER IIO INFINIBAND INFINIBAND_ADDR_TRANS INFINIBAND_IPOIB INFINIBAND_USER_ACCESS INFINIBAND_VIRT_DMA INPUT_TABLET INPUT_TOUCHSCREEN IP_SCTP L2TP LIBCRC32C LIBNVDIMM MEDIA_COMMON_OPTIONS MEDIA_DIGITAL_TV_SUPPORT MEDIA_RADIO_SUPPORT MEDIA_SDR_SUPPORT MEDIA_SUPPORT MEDIA_USB_SUPPORT MEMORY_HOTPLUG MEMORY_HOTREMOVE MFD_DLN2 MFD_RETU MMC MTD MTD_UBI NETFILTER_CONNCOUNT NET_IPGRE NET_IPGRE_DEMUX NFS_V4_1 NLS_CODEPAGE_850 NLS_CODEPAGE_852 NLS_CODEPAGE_855 NLS_CODEPAGE_857 NLS_CODEPAGE_860 NLS_CODEPAGE_861 NLS_CODEPAGE_862 NLS_CODEPAGE_863 NLS_CODEPAGE_864 NLS_CODEPAGE_865 NLS_CODEPAGE_866 NLS_CODEPAGE_869 NLS_CODEPAGE_874 NLS_CODEPAGE_932 NLS_CODEPAGE_936 NLS_CODEPAGE_949 NLS_CODEPAGE_950 NLS_ISO8859_13 NLS_ISO8859_14 NLS_ISO8859_15 NLS_ISO8859_2 NLS_ISO8859_3 NLS_ISO8859_4 NLS_ISO8859_5 NLS_ISO8859_6 NLS_ISO8859_7 NLS_ISO8859_8 NLS_ISO8859_9 NLS_KOI8_R NLS_KOI8_U NLS_MAC_CELTIC NLS_MAC_CENTEURO NLS_MAC_CROATIAN NLS_MAC_CYRILLIC NLS_MAC_GAELIC NLS_MAC_GREEK NLS_MAC_ICELAND NLS_MAC_INUIT NLS_MAC_ROMAN NLS_MAC_ROMANIAN NLS_MAC_TURKISH NOP_USB_XCEIV NOZOMI NTFS3_FS NTFS3_FS_POSIX_ACL NTFS3_LZX_XPRESS NTFS_FS NTFS_RW NULL_TTY NUMA_BALANCING NUMA_BALANCING_DEFAULT_ENABLED NUMA_EMU NUMA_KEEP_MEMINFO NVDIMM_DAX NVDIMM_KEYS NVDIMM_PFN NVME_CORE NVME_FABRICS NVME_FC NVME_MULTIPATH NVME_RDMA NVME_TARGET NVME_TARGET_FC NVME_TARGET_FCLOOP NVME_TARGET_LOOP NVME_TARGET_RDMA NVME_TARGET_TCP NVME_TCP N_GSM N_HDLC OCFS2_DEBUG_FS OCFS2_FS OCFS2_FS_O2CB OCFS2_FS_STATS OCFS2_FS_USERSPACE_CLUSTER OF_GPIO OF_PMEM OMFS_FS OPENVSWITCH OPENVSWITCH_GENEVE OPENVSWITCH_GRE OPENVSWITCH_VXLAN ORANGEFS_FS OSF_PARTITION OVERLAY_FS OVERLAY_FS_INDEX OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW OVERLAY_FS_REDIRECT_DIR PACKET_DIAG PADATA PAGE_IDLE_FLAG PAGE_REPORTING PAHOLE_HAS_SPLIT_BTF PARPORT PARPORT_NOT_PC PARTITION_ADVANCED PCCARD PCCARD_NONSTATIC PCIEAER PCI_ENDPOINT PCI_IOV PCMCIA PCMCIA_LOAD_CIS PERCPU_STATS PERSISTENT_KEYRINGS PHONET PHYLINK PHY_CPCAP_USB PHY_QCOM_USB_HS PHY_QCOM_USB_HSIC PHY_SAMSUNG_USB2 PHY_TUSB1210 PKCS7_TEST_KEY PKCS8_PRIVATE_KEY_PARSER PNFS_BLOCK PNFS_FILE_LAYOUT PNFS_FLEXFILE_LAYOUT PPP PPPOATM PPPOE PPPOL2TP PPP_ASYNC PPP_BSDCOMP PPP_DEFLATE PPP_FILTER PPP_MPPE PPP_MULTILINK PPP_SYNC_TTY PPTP PREEMPT PREEMPT_DYNAMIC PREEMPT_NOTIFIERS PREEMPT_RCU PRISM2_USB PROC_CHILDREN PSI PSTORE PSTORE_842_COMPRESS PSTORE_COMPRESS PSTORE_DEFLATE_COMPRESS PSTORE_DEFLATE_COMPRESS_DEFAULT PSTORE_LZ4HC_COMPRESS PSTORE_LZ4_COMPRESS PSTORE_LZO_COMPRESS PSTORE_ZSTD_COMPRESS QCOM_QMI_HELPERS QNX4FS_FS QNX6FS_FS QRTR QRTR_TUN R8712U RADIO_ADAPTERS RADIO_SHARK RADIO_SHARK2 RADIO_TEA575X RAID6_PQ RAID_ATTRS RC_ATI_REMOTE RC_CORE RC_DEVICES RDMA_RXE RDMA_SIW RDS RDS_RDMA RDS_TCP READ_ONLY_THP_FOR_FS REALTEK_AUTOPM REED_SOLOMON REED_SOLOMON_DEC8 REGMAP REGMAP_I2C REGMAP_IRQ REGMAP_MMIO REGULATOR REGULATOR_TWL4030 REISERFS_FS REISERFS_FS_POSIX_ACL REISERFS_FS_SECURITY REISERFS_FS_XATTR REISERFS_PROC_INFO RESET_CONTROLLER RFKILL RFKILL_INPUT RFKILL_LEDS RMI4_2D_SENSOR RMI4_CORE RMI4_F03 RMI4_F03_SERIO RMI4_F11 RMI4_F12 RMI4_F30 ROMFS_BACKED_BY_BOTH ROMFS_FS ROMFS_ON_BLOCK ROMFS_ON_MTD ROSE RTC_DRV_HID_SENSOR_TIME RXKAD SCHED_CORE SCSI_FC_ATTRS SCSI_HPSA SCSI_ISCSI_ATTRS SCSI_LOGGING SCSI_NETLINK SCSI_SAS_ATA SCSI_SAS_ATTRS SCSI_SAS_LIBSAS SCSI_SCAN_ASYNC SCSI_SRP_ATTRS SCTP_COOKIE_HMAC_MD5 SCTP_COOKIE_HMAC_SHA1 SCTP_DEFAULT_COOKIE_HMAC_MD5 SECONDARY_TRUSTED_KEYRING SECURITY_INFINIBAND SECURITY_NETWORK_XFRM SERIAL_DEV_BUS SERIAL_DEV_CTRL_TTYPORT SERIAL_MCTRL_GPIO SGI_PARTITION SIGNATURE SIGNED_PE_FILE_VERIFICATION SLHC SLIP SLIP_COMPRESSED SLIP_MODE_SLIP6 SLIP_SMART SMARTJOYPLUS_FF SMBFS_COMMON SMC SMC_DIAG SMSC_PHY SMS_SIANO_MDTV SMS_SIANO_RC SMS_USB_DRV SND SND_ALOOP SND_BCD2000 SND_CTL_LED SND_CTL_VALIDATION SND_DEBUG SND_DMA_SGBUF SND_DRIVERS SND_DUMMY SND_DYNAMIC_MINORS SND_HDA SND_HDA_CODEC_ANALOG SND_HDA_CODEC_CA0110 SND_HDA_CODEC_CA0132 SND_HDA_CODEC_CIRRUS SND_HDA_CODEC_CMEDIA SND_HDA_CODEC_CONEXANT SND_HDA_CODEC_HDMI SND_HDA_CODEC_REALTEK SND_HDA_CODEC_SI3054 SND_HDA_CODEC_SIGMATEL SND_HDA_CODEC_VIA SND_HDA_COMPONENT SND_HDA_CORE SND_HDA_GENERIC SND_HDA_GENERIC_LEDS SND_HDA_HWDEP SND_HDA_I915 SND_HDA_INPUT_BEEP SND_HDA_INTEL SND_HDA_PATCH_LOADER SND_HDA_RECONFIG SND_HRTIMER SND_HWDEP SND_INTEL_DSP_CONFIG SND_INTEL_NHLT SND_INTEL_SOUNDWIRE_ACPI SND_JACK SND_JACK_INPUT_DEV SND_MIXER_OSS SND_OSSEMUL SND_PCI SND_PCM SND_PCMCIA SND_PCM_OSS SND_PCM_OSS_PLUGINS SND_PCM_TIMER SND_PCM_XRUN_DEBUG SND_PROC_FS SND_RAWMIDI SND_SEQUENCER SND_SEQUENCER_OSS SND_SEQ_DEVICE SND_SEQ_DUMMY SND_SEQ_HRTIMER_DEFAULT SND_SEQ_MIDI SND_SEQ_MIDI_EVENT SND_SEQ_VIRMIDI SND_SUPPORT_OLD_API SND_TIMER SND_USB SND_USB_6FIRE SND_USB_AUDIO SND_USB_AUDIO_USE_MEDIA_CONTROLLER SND_USB_CAIAQ SND_USB_CAIAQ_INPUT SND_USB_HIFACE SND_USB_LINE6 SND_USB_POD SND_USB_PODHD SND_USB_TONEPORT SND_USB_UA101 SND_USB_US122L SND_USB_USX2Y SND_USB_VARIAX SND_VERBOSE_PROCFS SND_VIRMIDI SND_VIRTIO SND_VMASTER SND_X86 SOCK_CGROUP_DATA SOCK_VALIDATE_XMIT SOLARIS_X86_PARTITION SONY_FF SOUND SOUND_OSS_CORE SOUND_OSS_CORE_PRECLAIM SPI SPI_DLN2 SPI_DYNAMIC SPI_MASTER SQUASHFS SQUASHFS_4K_DEVBLK_SIZE SQUASHFS_DECOMP_SINGLE SQUASHFS_FILE_DIRECT SQUASHFS_LZ4 SQUASHFS_LZO SQUASHFS_XATTR SQUASHFS_XZ SQUASHFS_ZLIB SQUASHFS_ZSTD SSB SSB_PCIHOST_POSSIBLE SSB_PCMCIAHOST_POSSIBLE SSB_SDIOHOST_POSSIBLE STAGING STP STREAM_PARSER SUNRPC_BACKCHANNEL SUN_PARTITION SW_SYNC SYSV68_PARTITION SYSV_FS TABLET_USB_ACECAD TABLET_USB_AIPTEK TABLET_USB_HANWANG TABLET_USB_KBTAB TABLET_USB_PEGASUS TAHVO_USB TAHVO_USB_HOST_BY_DEFAULT TARGET_CORE TASKS_RCU TASKS_RCU_GENERIC TASKS_TRACE_RCU TCG_CRB TCG_TIS TCG_TIS_CORE TCG_TPM TCP_CONG_BBR TCP_CONG_BIC TCP_CONG_CDG TCP_CONG_DCTCP TCP_CONG_HSTCP TCP_CONG_HTCP TCP_CONG_HYBLA TCP_CONG_ILLINOIS TCP_CONG_LP TCP_CONG_NV TCP_CONG_SCALABLE TCP_CONG_VEGAS TCP_CONG_VENO TCP_CONG_WESTWOOD TCP_CONG_YEAH TEXTSEARCH TEXTSEARCH_BM TEXTSEARCH_FSM TEXTSEARCH_KMP THERMAL_NETLINK THP_SWAP THRUSTMASTER_FF TIPC TIPC_CRYPTO TIPC_DIAG TIPC_MEDIA_IB TIPC_MEDIA_UDP TLS TLS_TOE TOUCHSCREEN_SUR40 TOUCHSCREEN_USB_3M TOUCHSCREEN_USB_COMPOSITE TOUCHSCREEN_USB_DMC_TSC10 TOUCHSCREEN_USB_E2I TOUCHSCREEN_USB_EASYTOUCH TOUCHSCREEN_USB_EGALAX TOUCHSCREEN_USB_ELO TOUCHSCREEN_USB_ETT_TC45USB TOUCHSCREEN_USB_ETURBO TOUCHSCREEN_USB_GENERAL_TOUCH TOUCHSCREEN_USB_GOTOP TOUCHSCREEN_USB_GUNZE TOUCHSCREEN_USB_IDEALTEK TOUCHSCREEN_USB_IRTOUCH TOUCHSCREEN_USB_ITM TOUCHSCREEN_USB_JASTEC TOUCHSCREEN_USB_NEXIO TOUCHSCREEN_USB_PANJIT TOUCHSCREEN_USB_ZYTRONIC TPM_KEY_PARSER TRANSPARENT_HUGEPAGE TRANSPARENT_HUGEPAGE_MADVISE TRUSTED_KEYS TTPCI_EEPROM TTY_PRINTK TUN_VNET_CROSS_LE TWL4030_CORE TYPEC TYPEC_FUSB302 TYPEC_TCPCI TYPEC_TCPM TYPEC_TPS6598X TYPEC_UCSI UBIFS_ATIME_SUPPORT UBIFS_FS UBIFS_FS_ADVANCED_COMPR UBIFS_FS_LZO UBIFS_FS_SECURITY UBIFS_FS_XATTR UBIFS_FS_ZLIB UBIFS_FS_ZSTD UCSI_ACPI UDF_FS UDMABUF UFS_FS UFS_FS_WRITE UHID ULTRIX_PARTITION UNICODE UNIXWARE_DISKLABEL UNIX_DIAG USB4 USB4_NET USBIP_CORE USBIP_HOST USBIP_VHCI_HCD USBIP_VUDC USBPCWATCHDOG USB_ACM USB_ADUTUX USB_AIRSPY USB_ALI_M5632 USB_AN2720 USB_APPLEDISPLAY USB_ARMLINUX USB_BDC_UDC USB_BELKIN USB_C67X00_HCD USB_CATC USB_CDC_PHONET USB_CHAOSKEY USB_CHIPIDEA USB_CHIPIDEA_GENERIC USB_CHIPIDEA_HOST USB_CHIPIDEA_IMX USB_CHIPIDEA_MSM USB_CHIPIDEA_PCI USB_CHIPIDEA_TEGRA USB_CHIPIDEA_UDC USB_CONFIGFS USB_CONFIGFS_ACM USB_CONFIGFS_ECM USB_CONFIGFS_ECM_SUBSET USB_CONFIGFS_EEM USB_CONFIGFS_F_FS USB_CONFIGFS_F_HID USB_CONFIGFS_F_LB_SS USB_CONFIGFS_F_MIDI USB_CONFIGFS_F_PRINTER USB_CONFIGFS_F_TCM USB_DWC2 USB_GADGET USB_MUSB_HDRC USB_NET_CDC_SUBSET USB_ROLE_SWITCH USB_STORAGE_REALTEK USB_ULPI_BUS USB_USBNET VIDEO_DEV VIDEO_V4L2 VXLAN WIRELESS WLAN ZONE_DEVICE] disabling configs for [HANG LEAK UBSAN BUG KASAN ATOMIC_SLEEP], they are not needed determining the merge base between 02e21884dcf2f1746ab686a6ea41a0a92520fe58 and 9bacdd8996c77c42ca004440be610692275ff9d0 8bb7eca972ad531c9b149c0a51ab43a417385813/Linux 5.15 is a merge base, check if it has the bug testing commit 8bb7eca972ad531c9b149c0a51ab43a417385813 gcc compiler: gcc (GCC) 10.2.1 20210217, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 25837be355c2ab1323d264c2611b44755339bfe6807d739aba062761ee38dd94 all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] testing current HEAD 9bacdd8996c77c42ca004440be610692275ff9d0 testing commit 9bacdd8996c77c42ca004440be610692275ff9d0 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 8c15d930343ef537a9b5478c4742d15d84e20e8b22f2a06ce66bdb799f944867 all runs: OK false negative chance: 0.000 # git bisect start 9bacdd8996c77c42ca004440be610692275ff9d0 8bb7eca972ad531c9b149c0a51ab43a417385813 Bisecting: 94229 revisions left to test after this (roughly 17 steps) [d47f9580839eb6fe568e38b2084d94887fbf5ce0] Backmerge tag 'v6.1-rc6' into drm-next determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit d47f9580839eb6fe568e38b2084d94887fbf5ce0 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 failed building d47f9580839eb6fe568e38b2084d94887fbf5ce0: ./include/linux/fb.h:812: multiple definition of `fb_modesetting_disabled'; drivers/video/backlight/backlight.o:./include/linux/fb.h:812: first defined here # git bisect skip d47f9580839eb6fe568e38b2084d94887fbf5ce0 Bisecting: 94294 revisions left to test after this (roughly 17 steps) [7a945ce0c19bbdf821d5f7ce1515e7fb8e444465] udp_tunnel: Add checks for nla_nest_start() in __udp_tunnel_nic_dump_write() determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 7a945ce0c19bbdf821d5f7ce1515e7fb8e444465 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 556fa0b28bb7706f1e0a127fc9a47a179132f0ee5ae4a3a40ac765ce72cca568 all runs: OK false negative chance: 0.000 # git bisect bad 7a945ce0c19bbdf821d5f7ce1515e7fb8e444465 Bisecting: 47124 revisions left to test after this (roughly 16 steps) [0c56705d8aae9696348cc320b71d531ede001b79] drm/amd/display: Correct min comp buffer size determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 0c56705d8aae9696348cc320b71d531ede001b79 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: da01513b3a158ea51fd688ee5ddd32378c166599957418db2588126135610d70 all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] # git bisect good 0c56705d8aae9696348cc320b71d531ede001b79 Bisecting: 23639 revisions left to test after this (roughly 15 steps) [f0a892f599c46af673e47418c47c15e69a7b67f4] drm/amd/amdgpu: fix build failure due to implicit declaration determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit f0a892f599c46af673e47418c47c15e69a7b67f4 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 40c9f82a731291898e706cacf70b20345985feda898ada229a9be8cdb3daf7e4 all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] # git bisect good f0a892f599c46af673e47418c47c15e69a7b67f4 Bisecting: 12240 revisions left to test after this (roughly 14 steps) [a47e60729d9624e931f988709ab76e043e2ee8b9] Merge tag 'backlight-next-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight determine whether the revision contains the guilty commit revision f0a892f599c46af673e47418c47c15e69a7b67f4 crashed and is reachable testing commit a47e60729d9624e931f988709ab76e043e2ee8b9 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 8e203b28199afcabf4b5fe3b0e204e1c332e0e49ae7f9e9c11d2af498cfba667 all runs: OK false negative chance: 0.000 # git bisect bad a47e60729d9624e931f988709ab76e043e2ee8b9 Bisecting: 5700 revisions left to test after this (roughly 13 steps) [3d076fec5a0c3e66e1d8cb16015ea9a59b66ae1b] Merge tag 'rtc-6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 3d076fec5a0c3e66e1d8cb16015ea9a59b66ae1b gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: d106454712e2310239075cd352021399fb379adadab71ed9ffd3b92d44085cc4 run #0: boot failed: can't ssh into the instance run #1: boot failed: can't ssh into the instance run #2: boot failed: can't ssh into the instance run #3: boot failed: can't ssh into the instance run #4: boot failed: can't ssh into the instance run #5: boot failed: general protection fault in usb_hub_create_port_device run #6: boot failed: general protection fault in find_vm_area run #7: boot failed: invalid opcode in __phys_addr run #8: boot failed: general protection fault in usb_hub_create_port_device run #9: boot failed: general protection fault in vhci_init_attr_group unable to determine the verdict: 0 good runs (wanted 5), for bad wanted 5 in total, got 0 # git bisect skip 3d076fec5a0c3e66e1d8cb16015ea9a59b66ae1b Bisecting: 5700 revisions left to test after this (roughly 13 steps) [0d68e6fe12ada8fbaf35f0978aaf18dfb8d2dbb5] selftests/xsk: Query for native XDP support determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 0d68e6fe12ada8fbaf35f0978aaf18dfb8d2dbb5 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 31ef083712e9ae80f2750d133e701263b4d4f27bfbe3fe40ef69b1c9f5d4db09 all runs: OK false negative chance: 0.000 # git bisect bad 0d68e6fe12ada8fbaf35f0978aaf18dfb8d2dbb5 Bisecting: 2947 revisions left to test after this (roughly 12 steps) [f20c95b46b8fa3ad34b3ea2e134337f88591468b] Merge tag 'tpmdd-next-v5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-tpmdd determine whether the revision contains the guilty commit revision f0a892f599c46af673e47418c47c15e69a7b67f4 crashed and is reachable testing commit f20c95b46b8fa3ad34b3ea2e134337f88591468b gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: f38d58de567a702725e46f357a485879c12d5be44e36b068db3f23673b415de9 all runs: OK false negative chance: 0.000 # git bisect bad f20c95b46b8fa3ad34b3ea2e134337f88591468b Bisecting: 1340 revisions left to test after this (roughly 10 steps) [eff0cb3d91c06acbb957be1134a07afa2c4978e3] Merge tag 'pci-v5.20-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit eff0cb3d91c06acbb957be1134a07afa2c4978e3 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 2b7d86ccfa9fc9c33021ca35744555b8306361ba5e91bcd565e6edb4386da8d3 all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] # git bisect good eff0cb3d91c06acbb957be1134a07afa2c4978e3 Bisecting: 672 revisions left to test after this (roughly 9 steps) [98586bd6dce3690d8ae8d8561383d9ecc715e3c2] Merge tag 'microblaze-v5.20' of git://git.monstr.eu/linux-2.6-microblaze determine whether the revision contains the guilty commit revision f0a892f599c46af673e47418c47c15e69a7b67f4 crashed and is reachable testing commit 98586bd6dce3690d8ae8d8561383d9ecc715e3c2 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: cdbbcab74b547d14b5b3311251bc68a10f1b8457da8f2db64ce359207c8023bd all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] # git bisect good 98586bd6dce3690d8ae8d8561383d9ecc715e3c2 Bisecting: 389 revisions left to test after this (roughly 8 steps) [360614c01f81f48a89d8b13f8fa69c3ae0a1f5c7] tools/testing/selftests/vm/hmm-tests.c: fix build determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 360614c01f81f48a89d8b13f8fa69c3ae0a1f5c7 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 2d23d4944705faac0d9c8630ccec53269b75ca1eaace94ed6b0a1303d9717d3f all runs: OK false negative chance: 0.000 # git bisect bad 360614c01f81f48a89d8b13f8fa69c3ae0a1f5c7 Bisecting: 141 revisions left to test after this (roughly 7 steps) [6061b69b9a550a2ab84e805d0d2315ba6215f112] fsdax: set a CoW flag when associate reflink mappings determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 6061b69b9a550a2ab84e805d0d2315ba6215f112 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ee2f6e0247de6079190c71b7cf7d6354b835a26021b6aad12779eb849728b516 all runs: OK false negative chance: 0.000 # git bisect bad 6061b69b9a550a2ab84e805d0d2315ba6215f112 Bisecting: 69 revisions left to test after this (roughly 6 steps) [50b0f797cab6cb7dff418777e1acf82dfd3568f8] userfaultfd: selftests: infinite loop in faulting_process determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 50b0f797cab6cb7dff418777e1acf82dfd3568f8 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 2e6a16af6e97adccc2c13e51e9aef60cb47ad234c78c2903eeba5257eb61217d all runs: OK false negative chance: 0.000 # git bisect bad 50b0f797cab6cb7dff418777e1acf82dfd3568f8 Bisecting: 34 revisions left to test after this (roughly 5 steps) [160088b3b6d7946e456caa379dcdfc8702c66274] mm/migration: remove unneeded lock page and PageMovable check determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 160088b3b6d7946e456caa379dcdfc8702c66274 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: ef7065d1e7098611b6ee92e9c3c59d00d2148df4454b42db4d4e37e9e3ecfef1 all runs: OK false negative chance: 0.000 # git bisect bad 160088b3b6d7946e456caa379dcdfc8702c66274 Bisecting: 17 revisions left to test after this (roughly 4 steps) [ed913b055a74b723976f8e885a3395162a0371e6] lib/test_hmm: avoid accessing uninitialized pages determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit ed913b055a74b723976f8e885a3395162a0371e6 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 577eb32afc6bec262313eb7d977ff4643c1b731826edbaa480fb403c47e97dd0 all runs: OK false negative chance: 0.000 # git bisect bad ed913b055a74b723976f8e885a3395162a0371e6 Bisecting: 8 revisions left to test after this (roughly 3 steps) [753df96be5d3a21cd70d8ab4f7464a868e1d2cb4] mm/vmalloc: remove the redundant boundary check determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 753df96be5d3a21cd70d8ab4f7464a868e1d2cb4 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 2477f7beb1a51234887ee496a1dacfc018cbb7cdeec1d0d43783bdbbe08e1c3e all runs: OK false negative chance: 0.000 # git bisect bad 753df96be5d3a21cd70d8ab4f7464a868e1d2cb4 Bisecting: 3 revisions left to test after this (roughly 2 steps) [833de10ff58e230fba523ad618e17c93d33b6fa3] mm/shmem.c: clean up comment of shmem_swapin_folio determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 833de10ff58e230fba523ad618e17c93d33b6fa3 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 206669b9d0cd8a017b0eaeddc4cc789ac0e993076d8d123dae8dab8d35c2a4c4 all runs: OK false negative chance: 0.000 # git bisect bad 833de10ff58e230fba523ad618e17c93d33b6fa3 Bisecting: 2 revisions left to test after this (roughly 1 step) [0b82ade6c042907e4f24bbe826958a896d24700d] mm: use PAGE_ALIGNED instead of IS_ALIGNED determine whether the revision contains the guilty commit revision 8bb7eca972ad531c9b149c0a51ab43a417385813 crashed and is reachable testing commit 0b82ade6c042907e4f24bbe826958a896d24700d gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 1f5b54e3556a68fdebc42f643236f8e358f21857ded3c90e060a8a45ee335687 all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] # git bisect good 0b82ade6c042907e4f24bbe826958a896d24700d Bisecting: 1 revision left to test after this (roughly 1 step) [4f5ceb8851f0081af54313abbf56de1615911faf] tools/vm/slabinfo: use alphabetic order when two values are equal determine whether the revision contains the guilty commit revision 0b82ade6c042907e4f24bbe826958a896d24700d crashed and is reachable testing commit 4f5ceb8851f0081af54313abbf56de1615911faf gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: d1c4be036852109cce8745c5576dce8f8c7f347e15ffa78cb563afffac76ad66 all runs: crashed: possible deadlock in exc_page_fault representative crash: possible deadlock in exc_page_fault, types: [LOCKDEP] # git bisect good 4f5ceb8851f0081af54313abbf56de1615911faf Bisecting: 0 revisions left to test after this (roughly 0 steps) [d92725256b4f22d084b813b37ddc394da79aacab] mm: avoid unnecessary page fault retires on shared memory types determine whether the revision contains the guilty commit revision 0b82ade6c042907e4f24bbe826958a896d24700d crashed and is reachable testing commit d92725256b4f22d084b813b37ddc394da79aacab gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 1a0d1e24ef0c4a9e11a03b45aef61558c03da0020c69a17cb87f35629989eaaa all runs: OK false negative chance: 0.000 # git bisect bad d92725256b4f22d084b813b37ddc394da79aacab d92725256b4f22d084b813b37ddc394da79aacab is the first bad commit commit d92725256b4f22d084b813b37ddc394da79aacab Author: Peter Xu Date: Mon May 30 14:34:50 2022 -0400 mm: avoid unnecessary page fault retires on shared memory types I observed that for each of the shared file-backed page faults, we're very likely to retry one more time for the 1st write fault upon no page. It's because we'll need to release the mmap lock for dirty rate limit purpose with balance_dirty_pages_ratelimited() (in fault_dirty_shared_page()). Then after that throttling we return VM_FAULT_RETRY. We did that probably because VM_FAULT_RETRY is the only way we can return to the fault handler at that time telling it we've released the mmap lock. However that's not ideal because it's very likely the fault does not need to be retried at all since the pgtable was well installed before the throttling, so the next continuous fault (including taking mmap read lock, walk the pgtable, etc.) could be in most cases unnecessary. It's not only slowing down page faults for shared file-backed, but also add more mmap lock contention which is in most cases not needed at all. To observe this, one could try to write to some shmem page and look at "pgfault" value in /proc/vmstat, then we should expect 2 counts for each shmem write simply because we retried, and vm event "pgfault" will capture that. To make it more efficient, add a new VM_FAULT_COMPLETED return code just to show that we've completed the whole fault and released the lock. It's also a hint that we should very possibly not need another fault immediately on this page because we've just completed it. This patch provides a ~12% perf boost on my aarch64 test VM with a simple program sequentially dirtying 400MB shmem file being mmap()ed and these are the time it needs: Before: 650.980 ms (+-1.94%) After: 569.396 ms (+-1.38%) I believe it could help more than that. We need some special care on GUP and the s390 pgfault handler (for gmap code before returning from pgfault), the rest changes in the page fault handlers should be relatively straightforward. Another thing to mention is that mm_account_fault() does take this new fault as a generic fault to be accounted, unlike VM_FAULT_RETRY. I explicitly didn't touch hmm_vma_fault() and break_ksm() because they do not handle VM_FAULT_RETRY even with existing code, so I'm literally keeping them as-is. Link: https://lkml.kernel.org/r/20220530183450.42886-1-peterx@redhat.com Signed-off-by: Peter Xu Acked-by: Geert Uytterhoeven Acked-by: Peter Zijlstra (Intel) Acked-by: Johannes Weiner Acked-by: Vineet Gupta Acked-by: Guo Ren Acked-by: Max Filippov Acked-by: Christian Borntraeger Acked-by: Michael Ellerman (powerpc) Acked-by: Catalin Marinas Reviewed-by: Alistair Popple Reviewed-by: Ingo Molnar Acked-by: Russell King (Oracle) [arm part] Acked-by: Heiko Carstens Cc: Vasily Gorbik Cc: Stafford Horne Cc: David S. Miller Cc: Johannes Berg Cc: Brian Cain Cc: Richard Henderson Cc: Richard Weinberger Cc: Benjamin Herrenschmidt Cc: Thomas Gleixner Cc: Janosch Frank Cc: Albert Ou Cc: Anton Ivanov Cc: Dave Hansen Cc: Borislav Petkov Cc: Sven Schnelle Cc: Andrea Arcangeli Cc: James Bottomley Cc: Al Viro Cc: Alexander Gordeev Cc: Jonas Bonn Cc: Will Deacon Cc: Vlastimil Babka Cc: Michal Simek Cc: Matt Turner Cc: Paul Mackerras Cc: David Hildenbrand Cc: Nicholas Piggin Cc: Palmer Dabbelt Cc: Stefan Kristiansson Cc: Paul Walmsley Cc: Ivan Kokshaysky Cc: Chris Zankel Cc: Hugh Dickins Cc: Dinh Nguyen Cc: Rich Felker Cc: H. Peter Anvin Cc: Andy Lutomirski Cc: Thomas Bogendoerfer Cc: Helge Deller Cc: Yoshinori Sato Signed-off-by: Andrew Morton arch/alpha/mm/fault.c | 4 ++++ arch/arc/mm/fault.c | 4 ++++ arch/arm/mm/fault.c | 4 ++++ arch/arm64/mm/fault.c | 4 ++++ arch/csky/mm/fault.c | 4 ++++ arch/hexagon/mm/vm_fault.c | 4 ++++ arch/ia64/mm/fault.c | 4 ++++ arch/m68k/mm/fault.c | 4 ++++ arch/microblaze/mm/fault.c | 4 ++++ arch/mips/mm/fault.c | 4 ++++ arch/nios2/mm/fault.c | 4 ++++ arch/openrisc/mm/fault.c | 4 ++++ arch/parisc/mm/fault.c | 4 ++++ arch/powerpc/mm/copro_fault.c | 5 +++++ arch/powerpc/mm/fault.c | 5 +++++ arch/riscv/mm/fault.c | 4 ++++ arch/s390/mm/fault.c | 12 ++++++++++++ arch/sh/mm/fault.c | 4 ++++ arch/sparc/mm/fault_32.c | 4 ++++ arch/sparc/mm/fault_64.c | 5 +++++ arch/um/kernel/trap.c | 4 ++++ arch/x86/mm/fault.c | 4 ++++ arch/xtensa/mm/fault.c | 4 ++++ include/linux/mm_types.h | 2 ++ mm/gup.c | 34 +++++++++++++++++++++++++++++++++- mm/memory.c | 2 +- 26 files changed, 139 insertions(+), 2 deletions(-) accumulated error probability: 0.00 culprit signature: 1a0d1e24ef0c4a9e11a03b45aef61558c03da0020c69a17cb87f35629989eaaa parent signature: d1c4be036852109cce8745c5576dce8f8c7f347e15ffa78cb563afffac76ad66 revisions tested: 28, total time: 5h35m2.397270174s (build: 1h35m36.11522687s, test: 3h48m9.332072s) first good commit: d92725256b4f22d084b813b37ddc394da79aacab mm: avoid unnecessary page fault retires on shared memory types recipients (to): ["akpm@linux-foundation.org" "apopple@nvidia.com" "borntraeger@linux.ibm.com" "catalin.marinas@arm.com" "geert@linux-m68k.org" "guoren@kernel.org" "hannes@cmpxchg.org" "hca@linux.ibm.com" "jcmvbkbc@gmail.com" "mingo@kernel.org" "mpe@ellerman.id.au" "peterx@redhat.com" "peterz@infradead.org" "vgupta@kernel.org"] recipients (cc): []