ci2 starts bisection 2023-11-08 08:10:41.201102339 +0000 UTC m=+111415.693665110 bisecting cause commit starting from 13d88ac54ddd1011b6e94443958e798aa06eb835 building syzkaller on 8321139737ed27c82617231b782e88dd1e818227 ensuring issue is reproducible on original commit 13d88ac54ddd1011b6e94443958e798aa06eb835 testing commit 13d88ac54ddd1011b6e94443958e798aa06eb835 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: b19c0c3ea8409cf5e297ad555528e919dde3287a021f1953305ff2aaebb6f731 all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, 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 13d88ac54ddd1011b6e94443958e798aa06eb835 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: c67bf22fef641bee482b655c09c4b3b6420df0d8ff34db539e1f5d0879f41e89 all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, 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=3930 full=7656 leaves diff=1997 split chunks (needed=false): <1997> split chunk #0 of len 1997 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 13d88ac54ddd1011b6e94443958e798aa06eb835 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 6aaaabc9ee733dd587b980a9e9d1be3e5e03cd633541b320652930ac7b1dfab5 all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, types: [KASAN] the chunk can be dropped testing without sub-chunk 2/5 disabling configs for [ATOMIC_SLEEP HANG LEAK UBSAN BUG LOCKDEP], they are not needed testing commit 13d88ac54ddd1011b6e94443958e798aa06eb835 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: a470795a79920fe24a0ce897b897409b0aad7a9261dc1237ffef9bdb87a82cfc all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, types: [KASAN] the chunk can be dropped testing without sub-chunk 3/5 disabling configs for [LEAK UBSAN BUG LOCKDEP ATOMIC_SLEEP HANG], they are not needed testing commit 13d88ac54ddd1011b6e94443958e798aa06eb835 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: f6792f3f64a785e4d96dccb6ee055e7b979bb17d9c7010489bd015641d296227 all runs: OK false negative chance: 0.000 testing without sub-chunk 4/5 disabling configs for [LOCKDEP ATOMIC_SLEEP HANG LEAK UBSAN BUG], they are not needed testing commit 13d88ac54ddd1011b6e94443958e798aa06eb835 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: c379169422bf692e4808a6a50414363a84715dcf23e07d83eb90828750da9cfd all runs: OK false negative chance: 0.000 testing without sub-chunk 5/5 disabling configs for [HANG LEAK UBSAN BUG LOCKDEP ATOMIC_SLEEP], they are not needed testing commit 13d88ac54ddd1011b6e94443958e798aa06eb835 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: c802a6fb01a63e7e8d26868a4d722b0f1910c63f7f3abb53108903c97862b632 all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, types: [KASAN] the chunk can be dropped minimized to 800 configs; suspects: [AF_RXRPC ARCH_ENABLE_MEMORY_HOTREMOVE ATM AX25 BRIDGE BRIDGE_NETFILTER CAN CFG80211 CHECKPOINT_RESTORE CMA DAX DLM DVB_CORE ENCRYPTED_KEYS EXTCON FB_CORE FSCACHE GENEVE GPIOLIB HAMRADIO HAVE_CLK HID_SENSOR_HUB HID_SMARTJOYPLUS HID_THRUSTMASTER HSR IIO IMA IMA_APPRAISE IMA_APPRAISE_MODSIG INFINIBAND INFINIBAND_ADDR_TRANS INFINIBAND_IPOIB INFINIBAND_USER_ACCESS INFINIBAND_VIRT_DMA INPUT_JOYSTICK INPUT_MOUSE INPUT_TABLET INPUT_TOUCHSCREEN INTEGRITY INTEGRITY_ASYMMETRIC_KEYS INTEGRITY_SIGNATURE IP6_NF_RAW IPV6_MULTIPLE_TABLES IP_NF_RAW IP_SCTP IP_SET IP_VS IP_VS_PROTO_AH IP_VS_PROTO_AH_ESP IP_VS_PROTO_ESP IP_VS_PROTO_SCTP IP_VS_RR IP_VS_SED IP_VS_SH IP_VS_TWOS IP_VS_WLC IP_VS_WRR IRQ_BYPASS_MANAGER IRQ_POLL IR_IGORPLUGUSB IR_IGUANA IR_IMON IR_MCEUSB IR_REDRAT3 IR_STREAMZAP IR_TTUSBIR ISDN ISDN_CAPI_MIDDLEWARE JFFS2_CMODE_PRIORITY JFFS2_COMPRESSION_OPTIONS JFFS2_FS JFFS2_FS_POSIX_ACL JFFS2_FS_SECURITY JFFS2_FS_WRITEBUFFER JFFS2_FS_XATTR JFFS2_LZO JFFS2_RTIME JFFS2_RUBIN JFFS2_SUMMARY JFFS2_ZLIB JFS_DEBUG JFS_FS JFS_POSIX_ACL JFS_SECURITY JOYSTICK_IFORCE JOYSTICK_IFORCE_USB JOYSTICK_XPAD JOYSTICK_XPAD_FF JOYSTICK_XPAD_LEDS KARMA_PARTITION KCOV KCOV_ENABLE_COMPARISONS KCOV_INSTRUMENT_ALL KEYS_REQUEST_CACHE KEY_DH_OPERATIONS KEY_NOTIFICATIONS KSM KVM KVM_AMD KVM_ASYNC_PF KVM_COMPAT KVM_GENERIC_DIRTYLOG_READ_PROTECT KVM_GENERIC_HARDWARE_ENABLING KVM_MMIO KVM_PROVE_MMU KVM_VFIO KVM_XEN KVM_XFER_TO_GUEST_WORK L2TP L2TP_ETH L2TP_IP L2TP_V3 LAPB LAPBETHER LDM_PARTITION LEDS_TRIGGER_AUDIO LEGACY_PTYS LIBNVDIMM LINEAR_RANGES LLC LLC2 LOGIG940_FF LOGIRUMBLEPAD2_FF LOGO LOGO_LINUX_MONO LOGO_LINUX_VGA16 LPC_ICH LWTUNNEL LWTUNNEL_BPF MAC80211 MAC80211_DEBUGFS MAC80211_HAS_RC MAC80211_HWSIM MAC80211_MESH MAC80211_RC_DEFAULT_MINSTREL MAC80211_RC_MINSTREL MACSEC MACVLAN MACVTAP MAC_PARTITION MAPPING_DIRTY_HELPERS MD_LINEAR MD_MULTIPATH MD_RAID0 MD_RAID1 MD_RAID10 MD_RAID456 MEDIA_ANALOG_TV_SUPPORT MEDIA_ATTACH MEDIA_COMMON_OPTIONS MEDIA_CONTROLLER MEDIA_CONTROLLER_DVB MEDIA_CONTROLLER_REQUEST_API MEDIA_DIGITAL_TV_SUPPORT MEDIA_RADIO_SUPPORT MEDIA_SDR_SUPPORT MEDIA_SUPPORT MEDIA_SUPPORT_FILTER MEDIA_TUNER MEDIA_TUNER_MSI001 MEDIA_USB_SUPPORT MEMORY_BALLOON MEMORY_HOTPLUG MEMORY_HOTPLUG_DEFAULT_ONLINE MEMORY_HOTREMOVE MEMORY_ISOLATION MEMREGION MEMSTICK MEMSTICK_REALTEK_USB MEM_SOFT_DIRTY MFD_CORE MFD_DLN2 MFD_RETU MFD_SYSCON MHI_BUS MHI_WWAN_CTRL MHP_MEMMAP_ON_MEMORY MICROCHIP_PHY MINIX_FS MINIX_SUBPARTITION MISC_RTSX MISC_RTSX_USB MISDN MISDN_DSP MISDN_HFCUSB MISDN_L1OIP MKISS MLX4_CORE MLX4_INFINIBAND MMC MMC_REALTEK_USB MMC_USHC MMC_VUB300 MMU_NOTIFIER MODULE_SIG_SHA256 MODULE_SRCVERSION_ALL MODVERSIONS MOST MOUSE_APPLETOUCH MOUSE_BCM5974 MOUSE_PS2 MOUSE_PS2_ALPS MOUSE_PS2_BYD MOUSE_PS2_CYPRESS MOUSE_PS2_FOCALTECH MOUSE_PS2_LIFEBOOK MOUSE_PS2_LOGIPS2PP MOUSE_PS2_SMBUS MOUSE_PS2_SYNAPTICS MOUSE_PS2_SYNAPTICS_SMBUS MOUSE_PS2_TRACKPOINT MOUSE_SYNAPTICS_USB MPLS MPLS_IPTUNNEL MPLS_ROUTING MPTCP MPTCP_IPV6 MRP MTD MTD_BLKDEVS MTD_BLOCK MTD_BLOCK2MTD MTD_CFI_I1 MTD_CFI_I2 MTD_MAP_BANK_WIDTH_1 MTD_MAP_BANK_WIDTH_2 MTD_MAP_BANK_WIDTH_4 MTD_MTDRAM MTD_PHRAM MTD_SLRAM MTD_UBI MUSB_PIO_ONLY ND_BTT ND_CLAIM ND_PFN NETDEVSIM NETFILTER_ADVANCED NETFILTER_BPF_LINK NETFILTER_CONNCOUNT NETFILTER_FAMILY_ARP NETFILTER_FAMILY_BRIDGE NETFILTER_NETLINK_ACCT NETFILTER_NETLINK_GLUE_CT NETFILTER_NETLINK_OSF NETFILTER_NETLINK_QUEUE NETFILTER_SYNPROXY NETFILTER_XTABLES_COMPAT NETFILTER_XT_CONNMARK NETFILTER_XT_MATCH_BPF NETFILTER_XT_MATCH_CGROUP NETFILTER_XT_MATCH_CLUSTER NETFILTER_XT_MATCH_COMMENT NETFILTER_XT_MATCH_CONNBYTES NETFILTER_XT_MATCH_CONNLABEL NETFILTER_XT_MATCH_CONNLIMIT NETFILTER_XT_MATCH_CONNMARK NETFILTER_XT_MATCH_CPU NETFILTER_XT_MATCH_DCCP NETFILTER_XT_MATCH_DEVGROUP NETFILTER_XT_MATCH_DSCP NETFILTER_XT_MATCH_ECN NETFILTER_XT_MATCH_ESP NETFILTER_XT_MATCH_HASHLIMIT NETFILTER_XT_MATCH_HELPER NETFILTER_XT_MATCH_HL NETFILTER_XT_MATCH_IPCOMP NETFILTER_XT_MATCH_IPRANGE NETFILTER_XT_MATCH_IPVS NETFILTER_XT_MATCH_L2TP NETFILTER_XT_MATCH_LENGTH NETFILTER_XT_MATCH_LIMIT NETFILTER_XT_MATCH_MAC NETFILTER_XT_MATCH_MARK NETFILTER_XT_MATCH_MULTIPORT NETFILTER_XT_MATCH_NFACCT NETFILTER_XT_MATCH_OSF NETFILTER_XT_MATCH_OWNER NETFILTER_XT_MATCH_PHYSDEV NETFILTER_XT_MATCH_PKTTYPE NETFILTER_XT_MATCH_QUOTA NETFILTER_XT_MATCH_RATEEST NETFILTER_XT_MATCH_REALM NETFILTER_XT_MATCH_RECENT NETFILTER_XT_MATCH_SCTP NETFILTER_XT_MATCH_SOCKET NETFILTER_XT_MATCH_STATISTIC NETFILTER_XT_MATCH_STRING NETFILTER_XT_MATCH_TCPMSS NETFILTER_XT_MATCH_TIME NETFILTER_XT_MATCH_U32 NETFILTER_XT_SET NETFILTER_XT_TARGET_AUDIT NETFILTER_XT_TARGET_CHECKSUM NETFILTER_XT_TARGET_CLASSIFY NETFILTER_XT_TARGET_CONNMARK NETFILTER_XT_TARGET_CT NETFILTER_XT_TARGET_DSCP NETFILTER_XT_TARGET_HL NETFILTER_XT_TARGET_HMARK NETFILTER_XT_TARGET_IDLETIMER NETFILTER_XT_TARGET_LED NETFILTER_XT_TARGET_MARK NETFILTER_XT_TARGET_NETMAP NETFILTER_XT_TARGET_NFQUEUE NETFILTER_XT_TARGET_NOTRACK NETFILTER_XT_TARGET_RATEEST NETFILTER_XT_TARGET_REDIRECT NETFILTER_XT_TARGET_TCPOPTSTRIP NETFILTER_XT_TARGET_TEE NETFILTER_XT_TARGET_TPROXY NETFILTER_XT_TARGET_TRACE NETLINK_DIAG NETROM NET_9P_RDMA NET_ACT_BPF NET_ACT_CONNMARK NET_ACT_CSUM NET_ACT_CT NET_ACT_CTINFO NET_ACT_GATE NET_ACT_IFE NET_ACT_IPT NET_ACT_MPLS NET_ACT_NAT NET_ACT_PEDIT NET_ACT_POLICE NET_ACT_SAMPLE NET_ACT_SIMP NET_ACT_SKBEDIT NET_ACT_SKBMOD NET_ACT_TUNNEL_KEY NET_ACT_VLAN NET_CLS_BASIC NET_CLS_BPF NET_CLS_FLOW NET_CLS_FLOWER NET_CLS_FW NET_CLS_MATCHALL NET_CLS_ROUTE4 NET_DEVLINK NET_DROP_MONITOR NET_DSA NET_DSA_TAG_BRCM NET_DSA_TAG_BRCM_COMMON NET_DSA_TAG_BRCM_PREPEND NET_DSA_TAG_MTK NET_DSA_TAG_QCA NET_DSA_TAG_RTL4_A NET_EMATCH_CANID NET_EMATCH_CMP NET_EMATCH_IPSET NET_EMATCH_IPT NET_EMATCH_META NET_EMATCH_NBYTE NET_EMATCH_TEXT NET_EMATCH_U32 NET_FC NET_FOU NET_FOU_IP_TUNNELS NET_IFE NET_IFE_SKBMARK NET_IFE_SKBPRIO NET_IFE_SKBTCINDEX NET_IPGRE NET_IPGRE_BROADCAST NET_IPGRE_DEMUX NET_IPIP NET_IPVTI NET_KEY NET_KEY_MIGRATE NET_L3_MASTER_DEV NET_MPLS_GSO NET_NCSI NET_NSH NET_REDIRECT NET_SCH_CAKE NET_SCH_CBS NET_SCH_CHOKE NET_SCH_CODEL NET_SCH_DRR NET_SCH_ETF NET_SCH_ETS NET_SCH_FQ NET_SCH_FQ_CODEL NET_SCH_FQ_PIE NET_SCH_GRED NET_SCH_HFSC NET_SCH_HHF NET_SCH_HTB NET_SCH_INGRESS NET_SCH_MQPRIO NET_SCH_MQPRIO_LIB NET_SCH_MULTIQ NET_SCH_NETEM NET_SCH_PIE NET_SCH_PLUG NET_SCH_PRIO NET_SCH_QFQ NET_SCH_RED NET_SCH_SFB NET_SCH_SFQ NET_SCH_SKBPRIO NET_SCH_TAPRIO NET_SCH_TBF NET_SCH_TEQL NET_SOCK_MSG NET_SWITCHDEV NET_TC_SKB_EXT NET_TEAM NET_TEAM_MODE_ACTIVEBACKUP NET_TEAM_MODE_BROADCAST NET_TEAM_MODE_LOADBALANCE NET_TEAM_MODE_RANDOM NET_TEAM_MODE_ROUNDROBIN NET_UDP_TUNNEL NET_VRF NFC NFC_DIGITAL NFC_FDP NFC_HCI NFC_MRVL NFC_MRVL_USB NFC_NCI NFC_NCI_UART NFC_PN533 NFC_PN533_USB NFC_PORT100 NFC_SHDLC NFC_SIM NFC_VIRTUAL_NCI NFSD NFSD_BLOCKLAYOUT NFSD_FLEXFILELAYOUT NFSD_PNFS NFSD_SCSILAYOUT NFSD_V3_ACL NFSD_V4 NFSD_V4_2_INTER_SSC NFSD_V4_SECURITY_LABEL NFS_FSCACHE NFS_V4_1 NFS_V4_2 NFS_V4_2_READ_PLUS NFS_V4_2_SSC_HELPER NFS_V4_SECURITY_LABEL NFT_BRIDGE_META NFT_BRIDGE_REJECT NFT_COMPAT NFT_CONNLIMIT NFT_CT NFT_DUP_IPV4 NFT_DUP_IPV6 NFT_DUP_NETDEV NFT_FIB NFT_FIB_INET NFT_FIB_IPV4 NFT_FIB_IPV6 NFT_FIB_NETDEV NFT_FLOW_OFFLOAD NFT_HASH NFT_LIMIT NFT_LOG NFT_MASQ NFT_NAT NFT_NUMGEN NFT_OSF NFT_QUEUE NFT_QUOTA NFT_REDIR NFT_REJECT NFT_REJECT_INET NFT_REJECT_IPV4 NFT_REJECT_IPV6 NFT_REJECT_NETDEV NFT_SOCKET NFT_SYNPROXY NFT_TPROXY NFT_TUNNEL NFT_XFRM NF_CONNTRACK_AMANDA NF_CONNTRACK_BRIDGE NF_CONNTRACK_BROADCAST NF_CONNTRACK_EVENTS NF_CONNTRACK_H323 NF_CONNTRACK_LABELS NF_CONNTRACK_MARK NF_CONNTRACK_NETBIOS_NS NF_CONNTRACK_OVS NF_CONNTRACK_PPTP NF_CONNTRACK_SANE NF_CONNTRACK_SNMP NF_CONNTRACK_TFTP NF_CONNTRACK_TIMEOUT NF_CONNTRACK_TIMESTAMP NF_CONNTRACK_ZONES NF_CT_NETLINK_HELPER NF_CT_NETLINK_TIMEOUT NF_CT_PROTO_DCCP NF_CT_PROTO_GRE NF_CT_PROTO_SCTP NF_CT_PROTO_UDPLITE NF_DUP_IPV4 NF_DUP_IPV6 NF_DUP_NETDEV NF_FLOW_TABLE NF_FLOW_TABLE_INET NF_NAT_AMANDA NF_NAT_H323 NF_NAT_OVS NF_NAT_PPTP NF_NAT_REDIRECT NF_NAT_SNMP_BASIC NF_NAT_TFTP NF_SOCKET_IPV4 NF_SOCKET_IPV6 NF_TABLES NF_TABLES_ARP NF_TABLES_BRIDGE NF_TABLES_INET NF_TABLES_IPV4 NF_TABLES_IPV6 NF_TABLES_NETDEV NF_TPROXY_IPV4 NF_TPROXY_IPV6 NILFS2_FS NLMON NLS_CODEPAGE_1250 NLS_CODEPAGE_1251 NLS_CODEPAGE_737 NLS_CODEPAGE_775 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 NLS_UCS2_UTILS 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_DEBUG OVERLAY_FS_INDEX OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW OVERLAY_FS_REDIRECT_DIR PACKET_DIAG PADATA PAGE_IDLE_FLAG PAGE_POOL PAGE_REPORTING PAHOLE_HAS_BTF_TAG PAHOLE_HAS_LANG_EXCLUDE 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 PM_CLK PNFS_BLOCK PNFS_FILE_LAYOUT PNFS_FLEXFILE_LAYOUT PPP PPPOATM PPPOE PPPOE_HASH_BITS_4 PPPOL2TP PPP_ASYNC PPP_BSDCOMP PPP_DEFLATE PPP_FILTER PPP_MPPE PPP_MULTILINK PPP_SYNC_TTY PPTP PREEMPT PREEMPT_NOTIFIERS PRISM2_USB PROC_CHILDREN PSAMPLE PSI PSTORE PSTORE_COMPRESS QCOM_QMI_HELPERS QNX4FS_FS QNX6FS_FS QRTR QRTR_TUN R8712U RADIO_ADAPTERS RADIO_SHARK RADIO_SHARK2 RADIO_TEA575X 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 SECURITY_SMACK_NETFILTER 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 SMC SMC_DIAG SMSC_PHY SMS_SIANO_MDTV SMS_SIANO_RC SMS_USB_DRV SND SND_ALOOP SND_BCD2000 SND_CTL_FAST_LOOKUP SND_CTL_LED 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_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_COMPILE_DECOMP_SINGLE 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 SYSFB 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 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 TCP_SIGPOOL 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 TMPFS_QUOTA 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 TRANSPARENT_HUGEPAGE TRANSPARENT_HUGEPAGE_MADVISE 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_HOST USB_CHIPIDEA_NPCM USB_CHIPIDEA_PCI USB_CHIPIDEA_UDC USB_CONFIGFS USB_CONFIGFS_ACM USB_CONFIGFS_ECM USB_CONFIGFS_ECM_SUBSET USB_CONFIGFS_EEM USB_CONFIGFS_F_FS USB_DWC2 USB_GADGET USB_MUSB_HDRC USB_NET_CDC_SUBSET USB_ROLE_SWITCH USB_STORAGE_REALTEK USB_ULPI_BUS USB_USBNET VIDEO_DEV VXLAN WAN WATCH_QUEUE WIRELESS WLAN WWAN X25 X86_X32_ABI ZONE_DEVICE] disabling configs for [HANG LEAK UBSAN BUG LOCKDEP ATOMIC_SLEEP], they are not needed picked [v6.6 v6.5 v6.4 v6.2 v6.0 v5.18 v5.16 v5.14 v5.11 v5.8 v5.5 v5.2 v4.20 v4.19] out of 29 release tags testing release v6.6 testing commit ffc253263a1375a65fa6c9f62a893e9767fbebfa gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 957f2f5ba81090a80f21e2303ec860ba3bb750f2cd61dd8cdfffa7e6fb827f73 all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, types: [KASAN] 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: 3d783db39f733d8b6e5074b5d6d144d03b5ccc50b97198049a070ea8b911701d all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, types: [KASAN] testing release v6.4 testing commit 6995e2de6891c724bfeb2db33d7b87775f913ad1 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 9995f64cbfa0f815fea996d4adfc5fb7d78686b2db17c2e13a3199265f0fa07d all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, types: [KASAN] testing release v6.2 testing commit c9c3395d5e3dcc6daee66c6908354d47bf98cb0c gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 02f8b63136ca0760c7d0574a234fc50edd70dbbd197e87d4e15ee825bbf1f7df all runs: crashed: KASAN: slab-out-of-bounds Write in squashfs_readahead representative crash: KASAN: slab-out-of-bounds Write in squashfs_readahead, types: [KASAN] testing release v6.0 testing commit 4fe89d07dcc2804c8b562f6c7896a45643d34b2f gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: a2d49efa694d31120291b171d316e812612a9d96e688557f5f1ba29082fbaf82 all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] testing release v5.18 testing commit 4b0986a3613c92f4ec1bdc7f60ec66fea135991f gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 16016d4988b766207963718675cee0e957eceb160f69f8f7a38b414a1f20386c all runs: OK false negative chance: 0.000 # git bisect start 4fe89d07dcc2804c8b562f6c7896a45643d34b2f 4b0986a3613c92f4ec1bdc7f60ec66fea135991f Bisecting: 16503 revisions left to test after this (roughly 14 steps) [0fac198def2b41138850867b6aa92044c76ff802] Merge tag 'fs.idmapped.overlay.acl.v5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux testing commit 0fac198def2b41138850867b6aa92044c76ff802 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 24e091704a9054acaab4501ff757b39ca8409105f18b428834159efc0d7932cc all runs: OK false negative chance: 0.000 # git bisect good 0fac198def2b41138850867b6aa92044c76ff802 Bisecting: 8189 revisions left to test after this (roughly 13 steps) [723c188d5cd42a07344f997b0b7e1d83b4173c8d] Merge tag 'staging-6.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging testing commit 723c188d5cd42a07344f997b0b7e1d83b4173c8d gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 5d9b1e957b06975f085c09bb9a8eb82a502e9e98b7cc3a1dfe1a246d0509e044 all runs: OK false negative chance: 0.000 # git bisect good 723c188d5cd42a07344f997b0b7e1d83b4173c8d Bisecting: 4099 revisions left to test after this (roughly 12 steps) [83ee9f23763a432a4077bf20624ee35de87bce99] powerpc/kexec: Fix build failure from uninitialised variable testing commit 83ee9f23763a432a4077bf20624ee35de87bce99 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: e6d10e0df81c1d8d80f20aea175b54e22ad69d71dfb4673b6c4af85a88cb7f87 all runs: OK false negative chance: 0.000 # git bisect good 83ee9f23763a432a4077bf20624ee35de87bce99 Bisecting: 2045 revisions left to test after this (roughly 11 steps) [4c2d0b039c5cc0112206a5b22431b577cb1c57ad] Merge tag 'net-6.0-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net testing commit 4c2d0b039c5cc0112206a5b22431b577cb1c57ad gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: f2baa78cf73d4b714c42eb86557b29880ad74eaeab7e8da5381bc1c340a18c4d all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad 4c2d0b039c5cc0112206a5b22431b577cb1c57ad Bisecting: 1020 revisions left to test after this (roughly 10 steps) [5e2e7383b57fa03ec2b00c82bb7f49a4a707c1f7] Merge tag 'pinctrl-v6.0-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl testing commit 5e2e7383b57fa03ec2b00c82bb7f49a4a707c1f7 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 81178840097f4052577a4c3fb0c8dd45fb79bc20cbe28ddff74ea7a050420a7b all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad 5e2e7383b57fa03ec2b00c82bb7f49a4a707c1f7 Bisecting: 526 revisions left to test after this (roughly 9 steps) [607ca0f742b7d990b6efb3c3e7a52830f7e96419] Merge tag 'tty-6.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty testing commit 607ca0f742b7d990b6efb3c3e7a52830f7e96419 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 8e5cbf162f9014cf7d73de6246c73fc2cf71ac09ce089362ae656fc61c402b52 all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad 607ca0f742b7d990b6efb3c3e7a52830f7e96419 Bisecting: 249 revisions left to test after this (roughly 8 steps) [92ceebf920aa9f103b89d102f98fc59c6b990cc0] Merge tag 'mailbox-v5.20' of git://git.linaro.org/landing-teams/working/fujitsu/integration testing commit 92ceebf920aa9f103b89d102f98fc59c6b990cc0 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 9c7c4f06ba78bf8fe73fb239eac1d11888b1f3e967aac0b2d802f53a1402b282 all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad 92ceebf920aa9f103b89d102f98fc59c6b990cc0 Bisecting: 138 revisions left to test after this (roughly 7 steps) [b5a8466d37d30cfcc8015789f4a3f0c44b6c7bc6] Merge tag 'for-5.20/fbdev-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/linux-fbdev testing commit b5a8466d37d30cfcc8015789f4a3f0c44b6c7bc6 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 2a33d415f55ff10f6babea71a88ccd3603b0386aa4c87b22ecc3b78cd001d4f1 all runs: OK false negative chance: 0.000 # git bisect good b5a8466d37d30cfcc8015789f4a3f0c44b6c7bc6 Bisecting: 69 revisions left to test after this (roughly 6 steps) [787dbea11a5d6843999ff71a3fb9aa1ed6d5d889] profile: setup_profiling_timer() is moslty not implemented testing commit 787dbea11a5d6843999ff71a3fb9aa1ed6d5d889 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 04f279e37c4fe742fd86caa782f87a4a3d411f2f61ec96f9604e4ee0e55d76d3 all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad 787dbea11a5d6843999ff71a3fb9aa1ed6d5d889 Bisecting: 34 revisions left to test after this (roughly 5 steps) [5fd8fea935a1091083506d0b982fcc5d35062f06] vmcoreinfo: include kallsyms symbols testing commit 5fd8fea935a1091083506d0b982fcc5d35062f06 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 171d39fe593f8d1dc1c01ff12a0f28462d0d6ab49402b6028756587ccea48933 all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad 5fd8fea935a1091083506d0b982fcc5d35062f06 Bisecting: 16 revisions left to test after this (roughly 4 steps) [da87e1725ae2136baeb9aac04c572c283afc917f] fat: add renameat2 RENAME_EXCHANGE flag support testing commit da87e1725ae2136baeb9aac04c572c283afc917f gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: bbf3d8aeba7eb2309784f3bab3f8be2217f7443c0ddd05713959340eb555de39 all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad da87e1725ae2136baeb9aac04c572c283afc917f Bisecting: 8 revisions left to test after this (roughly 3 steps) [c0af32fdc625c0e7f03465a813b04cbfb5419a1e] lib/btree: simplify btree_{lookup|update} testing commit c0af32fdc625c0e7f03465a813b04cbfb5419a1e gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 58e2d5302e1c858db71ebbf5ee46303ede25c108abee3179f443a87916e059a5 all runs: OK false negative chance: 0.000 # git bisect good c0af32fdc625c0e7f03465a813b04cbfb5419a1e Bisecting: 4 revisions left to test after this (roughly 2 steps) [0aed4724a8392f2567f83c9c4b9decf447d752a2] delayacct: remove some unused variables testing commit 0aed4724a8392f2567f83c9c4b9decf447d752a2 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: f780c6f18a8990e830ed389f8266f63d3ed223d7357b4f98f43bd7dd73cb271d all runs: OK false negative chance: 0.000 # git bisect good 0aed4724a8392f2567f83c9c4b9decf447d752a2 Bisecting: 2 revisions left to test after this (roughly 1 step) [1bb1a07afad97303f14b8d1b319b03f1f01a0091] squashfs: don't use intermediate buffer if pages missing testing commit 1bb1a07afad97303f14b8d1b319b03f1f01a0091 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 5b5c742023e5951c2fcd758d129a4a54b1d09322014bde2ad35c580f3674191e all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad 1bb1a07afad97303f14b8d1b319b03f1f01a0091 Bisecting: 0 revisions left to test after this (roughly 0 steps) [f268eedddf3595e85f8883dc50aed29654785696] squashfs: extend "page actor" to handle missing pages testing commit f268eedddf3595e85f8883dc50aed29654785696 gcc compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40 kernel signature: 45d62a95bfce06162a8bd4ded2ea36e2634f327f9f668ea48bcbc0433511c01f all runs: crashed: general protection fault in squashfs_page_actor_init_special representative crash: general protection fault in squashfs_page_actor_init_special, types: [UNKNOWN] # git bisect bad f268eedddf3595e85f8883dc50aed29654785696 f268eedddf3595e85f8883dc50aed29654785696 is the first bad commit commit f268eedddf3595e85f8883dc50aed29654785696 Author: Phillip Lougher Date: Sat Jun 11 04:21:32 2022 +0100 squashfs: extend "page actor" to handle missing pages Patch series "Squashfs: handle missing pages decompressing into page cache". This patchset enables Squashfs to handle missing pages when directly decompressing datablocks into the page cache. Previously if the full set of pages needed was not available, Squashfs would have to fall back to using an intermediate buffer (the older method), which is slower, involving a memcopy, and it introduces contention on a shared buffer. The first patch extends the "page actor" code to handle missing pages. The second patch updates Squashfs_readpage_block() to use the new functionality, and removes the code that falls back to using an intermediate buffer. This patchset is independent of the readahead work, and it is standalone. It can be merged on its own. But the readahead patch for efficiency also needs this patch-set. This patch (of 2): This patch extends the "page actor" code to handle missing pages. Previously if the full set of pages needed to decompress a Squashfs datablock was unavailable, this would cause decompression to fail on the missing pages. In this case direct decompression into the page cache could not be achieved and the code would fall back to using the older intermediate buffer method. With this patch, direct decompression into the page cache can be achieved with missing pages. For "multi-shot" decompressors (zlib, xz, zstd), the page actor will allocate a temporary buffer which is passed to the decompressor, and then freed by the page actor. For "single shot" decompressors (lz4, lzo) which decompress into a contiguous "bounce buffer", and which is then copied into the page cache, it would be pointless to allocate a temporary buffer, memcpy into it, and then free it. For these decompressors -ENOMEM is returned, which signifies that the memcpy for that page should be skipped. This also happens if the data block is uncompressed. Link: https://lkml.kernel.org/r/20220611032133.5743-1-phillip@squashfs.org.uk Link: https://lkml.kernel.org/r/20220611032133.5743-2-phillip@squashfs.org.uk Signed-off-by: Phillip Lougher Cc: Matthew Wilcox (Oracle) Cc: Hsin-Yi Wang Cc: Xiongwei Song Signed-off-by: Andrew Morton fs/squashfs/block.c | 10 ++++++--- fs/squashfs/decompressor.h | 1 + fs/squashfs/file_direct.c | 21 +++++++++--------- fs/squashfs/lz4_wrapper.c | 7 ++++-- fs/squashfs/lzo_wrapper.c | 7 ++++-- fs/squashfs/page_actor.c | 55 +++++++++++++++++++++++++++++++++++++++------- fs/squashfs/page_actor.h | 21 +++++++++++++++--- fs/squashfs/xz_wrapper.c | 11 +++++++++- fs/squashfs/zlib_wrapper.c | 12 +++++++++- fs/squashfs/zstd_wrapper.c | 12 +++++++++- 10 files changed, 126 insertions(+), 31 deletions(-) accumulated error probability: 0.00 culprit signature: 45d62a95bfce06162a8bd4ded2ea36e2634f327f9f668ea48bcbc0433511c01f parent signature: f780c6f18a8990e830ed389f8266f63d3ed223d7357b4f98f43bd7dd73cb271d revisions tested: 28, total time: 5h6m25.137577612s (build: 2h33m46.618048365s, test: 2h21m22.137696656s) first bad commit: f268eedddf3595e85f8883dc50aed29654785696 squashfs: extend "page actor" to handle missing pages recipients (to): ["akpm@linux-foundation.org" "phillip@squashfs.org.uk"] recipients (cc): [] crash: general protection fault in squashfs_page_actor_init_special ======================================================= loop0: unable to read partition table loop0: partition table beyond EOD, truncated SQUASHFS error: Failed to read block 0x6fc: -5 SQUASHFS error: Unable to read metadata cache entry [6fa] SQUASHFS error: Unable to read metadata cache entry [6fa] SQUASHFS error: Unable to read metadata cache entry [6fa] SQUASHFS error: Unable to read metadata cache entry [6fa] general protection fault, probably for non-canonical address 0xdffffc0000000002: 0000 [#1] PREEMPT SMP KASAN KASAN: null-ptr-deref in range [0x0000000000000010-0x0000000000000017] CPU: 1 PID: 3277 Comm: syz-executor.0 Not tainted 5.19.0-rc2-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/09/2023 RIP: 0010:squashfs_page_actor_init_special+0x11b/0x330 fs/squashfs/page_actor.c:129 Code: 00 00 00 00 49 8d 6d 40 48 89 e8 48 c1 e8 03 42 0f b6 04 30 84 c0 0f 85 ae 01 00 00 c7 45 00 00 00 00 00 4c 89 f8 48 c1 e8 03 <42> 80 3c 30 00 74 08 4c 89 ff e8 36 b2 95 ff 49 8b 2f 48 83 c5 20 RSP: 0018:ffffc90001e3e6c0 EFLAGS: 00010202 RAX: 0000000000000002 RBX: 0000000000000000 RCX: ffff88807dd90000 RDX: ffff88807dd90000 RSI: 0000000000000000 RDI: ffff8880187702b8 RBP: ffff8880187702c0 R08: ffffffff82085618 R09: fffffbfff10bcba7 R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000000 R13: ffff888018770280 R14: dffffc0000000000 R15: 0000000000000010 FS: 00007f2940e7e6c0(0000) GS:ffff8880ba900000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fff5e1a4d98 CR3: 000000006764e000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: squashfs_readpage_block+0xbb1/0x19b0 fs/squashfs/file_direct.c:88 squashfs_read_folio+0x25f8/0x3510 fs/squashfs/file.c:477 filemap_read_folio+0xcc/0x560 mm/filemap.c:2422 filemap_create_folio mm/filemap.c:2547 [inline] filemap_get_pages mm/filemap.c:2599 [inline] filemap_read+0x10bd/0x2e40 mm/filemap.c:2679 __kernel_read+0x605/0xaa0 fs/read_write.c:440 integrity_kernel_read+0xb0/0xf0 security/integrity/iint.c:199 ima_calc_file_hash_tfm security/integrity/ima/ima_crypto.c:484 [inline] ima_calc_file_shash security/integrity/ima/ima_crypto.c:515 [inline] ima_calc_file_hash+0x18e3/0x1fd0 security/integrity/ima/ima_crypto.c:572 ima_collect_measurement+0x34d/0x660 security/integrity/ima/ima_api.c:292 process_measurement+0xeef/0x1ab0 security/integrity/ima/ima_main.c:337 ima_file_check+0xec/0x170 security/integrity/ima/ima_main.c:517 do_open fs/namei.c:3522 [inline] path_openat+0x270e/0x2ee0 fs/namei.c:3653 do_filp_open+0x220/0x460 fs/namei.c:3680 do_sys_openat2+0x13f/0x500 fs/open.c:1278 do_sys_open fs/open.c:1294 [inline] __do_sys_open fs/open.c:1302 [inline] __se_sys_open fs/open.c:1298 [inline] __x64_sys_open+0x225/0x270 fs/open.c:1298 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+0x46/0xb0 RIP: 0033:0x7f294007cae9 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:00007f2940e7e0c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000002 RAX: ffffffffffffffda RBX: 00007f294019bf80 RCX: 00007f294007cae9 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 00000000200000c0 RBP: 00007f29400c847a R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000006 R14: 00007f294019bf80 R15: 00007ffea830c308 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:squashfs_page_actor_init_special+0x11b/0x330 fs/squashfs/page_actor.c:129 Code: 00 00 00 00 49 8d 6d 40 48 89 e8 48 c1 e8 03 42 0f b6 04 30 84 c0 0f 85 ae 01 00 00 c7 45 00 00 00 00 00 4c 89 f8 48 c1 e8 03 <42> 80 3c 30 00 74 08 4c 89 ff e8 36 b2 95 ff 49 8b 2f 48 83 c5 20 RSP: 0018:ffffc90001e3e6c0 EFLAGS: 00010202 RAX: 0000000000000002 RBX: 0000000000000000 RCX: ffff88807dd90000 RDX: ffff88807dd90000 RSI: 0000000000000000 RDI: ffff8880187702b8 RBP: ffff8880187702c0 R08: ffffffff82085618 R09: fffffbfff10bcba7 R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000000 R13: ffff888018770280 R14: dffffc0000000000 R15: 0000000000000010 FS: 00007f2940e7e6c0(0000) GS:ffff8880ba900000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fff5e1a4d98 CR3: 000000006764e000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 00 00 add %al,(%rax) 2: 00 00 add %al,(%rax) 4: 49 8d 6d 40 lea 0x40(%r13),%rbp 8: 48 89 e8 mov %rbp,%rax b: 48 c1 e8 03 shr $0x3,%rax f: 42 0f b6 04 30 movzbl (%rax,%r14,1),%eax 14: 84 c0 test %al,%al 16: 0f 85 ae 01 00 00 jne 0x1ca 1c: c7 45 00 00 00 00 00 movl $0x0,0x0(%rbp) 23: 4c 89 f8 mov %r15,%rax 26: 48 c1 e8 03 shr $0x3,%rax * 2a: 42 80 3c 30 00 cmpb $0x0,(%rax,%r14,1) <-- trapping instruction 2f: 74 08 je 0x39 31: 4c 89 ff mov %r15,%rdi 34: e8 36 b2 95 ff call 0xff95b26f 39: 49 8b 2f mov (%r15),%rbp 3c: 48 83 c5 20 add $0x20,%rbp