From nobody Fri Apr 3 03:01:32 2026 Received: from xmbghk7.mail.qq.com (xmbghk7.mail.qq.com [43.163.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 75DBD35F612; Wed, 25 Mar 2026 06:57:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=43.163.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774421870; cv=none; b=QSG1ijSlQvsp99iHS2YFN692U+H+xz14fnETyfEdek0uX9aNkC7Bqc4uitkKpoa0WkYMsV/m2Biq8xnbKfbNrh00PA9NxQvhWO3edbFBS/eX39ZdUd6o0hNsqa3sH2rZ2bEFTX2cQAr8wdC8MnoicIuCRW5LghrWUjVfFe4PZxQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774421870; c=relaxed/simple; bh=zEAaCM2+WAMzDDYuxx2LvNJNTQ5sPeYLTTt+tmxNfgA=; h=Message-ID:From:To:CC:Subject:Date:Content-Type:MIME-Version; b=EbhDA12m10GH1V0/45z2Le+TUFiqRY2w6Z0Z3dmQliwGTLTyJM6xVJM8wHXyo1Q/nSieVhJSpASUaN5ClWC4BDgcWyzMc+M5hX+bk3T7fU7Ef7kCimRwwqrqQtThrjHIK2fgDC1SllvBdGnSzSK20cgtd0pVlzEjCh9vOebXcZ4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=qq.com; spf=pass smtp.mailfrom=qq.com; dkim=pass (1024-bit key) header.d=qq.com header.i=@qq.com header.b=FtjGTJMQ; arc=none smtp.client-ip=43.163.128.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=qq.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=qq.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=qq.com header.i=@qq.com header.b="FtjGTJMQ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201512; t=1774421864; bh=zEAaCM2+WAMzDDYuxx2LvNJNTQ5sPeYLTTt+tmxNfgA=; h=From:To:CC:Subject:Date; b=FtjGTJMQj9WfNHRHuyYcYwZ96psXNiDcTHReobW9vC7e53cg3OEzA6UJCwZdPMl1W GjXTNsBTPTBmCzVmKdjFKqQaZMbJEEadENce4CmLz58WpDqTA3jpU+2A/QWwwAsFD/ YZRq41iXZzmJLzjYgeyi+ovymqjhRBjuoCE5sVYA= Received: from SG2PR02MB5841.apcprd02.prod.outlook.com ([2603:1046:c01:910::5]) by newxmesmtplogicsvrsza73-0.qq.com (NewEsmtp) with SMTP id E6A13C2C; Wed, 25 Mar 2026 14:57:42 +0800 X-QQ-mid: xmsmtpt1774421862txevasxrw Message-ID: X-QQ-XMAILINFO: MBHEkxMsYPCYLh7NeLHG+ARilau1Cp4rrwRkF00JlM61TuClkPFWQb+H7c8jh8 MCFe+OUlXNyPVsDGll2rSn5T2G70bR9Jd4ABOlScoLPQsWj0SPvMdKKBVXaWuVaOMSk2vzecCgEF J+eIam9wK1S2d3Iy+ytMeQkv7mWxHk+xBCTUlSduHWBMz+a3f7XR8Ph1cSOV/8e7iSn2z3QoXL/3 AuI6s7fjeP93aT5hoEWmX0slTGAR5ry1heTKKsf9DolPeQrhnuhJGxoNo+IaQbrRgixSF1Ko2uAD vFltM1YIkbS4VeswpiK5xNxLp+tpJeAarmUqB6EKXTXc3zXaL4ZYj+IIbkn/38ZbjuUPO02KMcOI vWxEUzLNhSj07cSi00qu0AAapf0fSLOxT+m8NMbgqV71L5vhphmSdPwCTraFhs/uW0+b7Fk27GgI xV9Xwhs5VpDs4muSpvA8+FTxkItFhnG7OpArskkDQzmo7N51sKXUJF2jl3A1Ge9xYW7dy3ecGWEa nDIJJV1VE9kXoy46WE1zUtcOBlYtInum528wDnnf8mO53uwcByn/mSQJhie729nAZLrEGyQpseAg 1+hQUbkn3pDcgdpcGyEadvFCh6aCcfAtkt6c7w5Dl5Ttd9f5Mdb1umn43rLIiyHhsjQZwGEkktrv bTgf3LC9gNkklP0ni/SDjJV1ZDIVihS5HUskRoJWAvrH/nUpzKZjcqLrl8jYDjZbSklrdz3vD1f/ nwnlPlEQAoanPeXLqmAMx0nYsctnmbTaiWKA40dLFvwp/1+vtCwJtNZYBjVN2+NkivpfwpfAJBe1 wBNI9DD+7kccfni9tiGSbKlrNHd3DrDQ8MgdZiBN6ap8IE52AmIXrd1Vt3I51QduFsZMTCMfqL/T ED9AwTVY1rnqHRxq8Q8dYoVW9Hc4HinkB2XzjY55POLn4biLoX0DeEnUHYmQq73hUtxEQpyJBWZX V4NrRvYgkjteBUhUfm/urdBLHRrdXi/fBY+donrSIyh3GAhwGQfQIpuA1y315COYyKbiR2RC995W akazMPvw== X-QQ-XMRINFO: MPJ6Tf5t3I/ylTmHUqvI8+Wpn+Gzalws3A== From: "driz2t@qq.com" To: "stable@vger.kernel.org" CC: "xiang@kernel.org" , "chao@kernel.org" , "huyue2@coolpad.com" , "jefflexu@linux.alibaba.com" , "linux-kernel@vger.kernel.org" , "syzbot+016d861797fd718491a8@syzkaller.appspotmail.com" Subject: [PATCH 6.1.y] erofs: get rid of z_erofs_fill_inode() Thread-Topic: [PATCH 6.1.y] erofs: get rid of z_erofs_fill_inode() Thread-Index: AQHcvCNiSREDcZX1vEeAargH5QRdfw== X-MS-Exchange-MessageSentRepresentingType: 1 Date: Wed, 25 Mar 2026 06:57:41 +0000 X-OQ-MSGID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-Exchange-Organization-SCL: -1 X-MS-TNEF-Correlator: X-MS-Exchange-Organization-RecordReviewCfmType: 0 msip_labels: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 This is a backport of upstream commit 4fdadd5b0f0c723c812842454f8cca1619f2e= 731. (erofs: get rid of z_erofs_fill_inode()) Reported-by: syzbot+016d861797fd718491a8@syzkaller.appspotmail.com Tested-by: syzbot+016d861797fd718491a8@syzkaller.appspotmail.com Signed-off-by: Changjian Liu --- =C2=A0fs/erofs/inode.c =C2=A0 =C2=A0 | =C2=A012 ++++++++---- =C2=A0fs/erofs/internal.h =C2=A0| =C2=A0 2 -- =C2=A0fs/erofs/zmap.c =C2=A0 =C2=A0 =C2=A0| =C2=A018 ------------------ =C2=A0scripts/extract-cert | Bin 0 -> 14608 bytes =C2=A04 files changed, 8 insertions(+), 24 deletions(-) =C2=A0create mode 100755 scripts/extract-cert diff --git a/fs/erofs/inode.c b/fs/erofs/inode.c index 3cbef6318b7b..484572504b4d 100644 --- a/fs/erofs/inode.c +++ b/fs/erofs/inode.c @@ -280,11 +280,15 @@ static int erofs_fill_inode(struct inode *inode) =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82} =C2=A0 =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82if (erofs_inode_is_data_= compressed(vi->datalayout)) { +#ifdef CONFIG_EROFS_FS_ZIP =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80= =82=E2=80=82=E2=80=82=E2=80=82if (!erofs_is_fscache_mode(inode->i_sb) && -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82 =C2=A0 =C2=A0inode->i_sb->s_blocksize_bits =3D= =3D PAGE_SHIFT) -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2= =80=82err =3D z_erofs_fill_inode(inode); -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82else -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2= =80=82err =3D -EOPNOTSUPP; +=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82 =C2=A0 =C2=A0inode->i_sb->s_blocksize_bits =3D= =3D PAGE_SHIFT) { +=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2= =80=82inode->i_mapping->a_ops =3D &z_erofs_aops; +=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2= =80=82err =3D 0; +=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2= =80=82goto out_unlock; +=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82} +#endif +=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82err =3D -EOPNOTSUPP; =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80= =82=E2=80=82=E2=80=82=E2=80=82goto out_unlock; =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82} =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82inode->i_mapping->a_ops = =3D &erofs_raw_access_aops; diff --git a/fs/erofs/internal.h b/fs/erofs/internal.h index 126970932805..1a4d08a93339 100644 --- a/fs/erofs/internal.h +++ b/fs/erofs/internal.h @@ -423,12 +423,10 @@ enum { =C2=A0extern const struct iomap_ops z_erofs_iomap_report_ops; =C2=A0 =C2=A0#ifdef CONFIG_EROFS_FS_ZIP -int z_erofs_fill_inode(struct inode *inode); =C2=A0int z_erofs_map_blocks_iter(struct inode *inode, =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80= =82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82 =C2=A0 =C2=A0struct erofs_map_blocks *map, =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80= =82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82 =C2=A0 =C2=A0int flags); =C2=A0#else -static inline int z_erofs_fill_inode(struct inode *inode) { return -EOPNOT= SUPP; } =C2=A0static inline int z_erofs_map_blocks_iter(struct inode *inode, =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80= =82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2= =80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82 =C2=A0struct erofs_map_blocks *m= ap, =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80= =82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2= =80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82 =C2=A0int flags) diff --git a/fs/erofs/zmap.c b/fs/erofs/zmap.c index d2d7fe826091..ff84533da0c4 100644 --- a/fs/erofs/zmap.c +++ b/fs/erofs/zmap.c @@ -7,24 +7,6 @@ =C2=A0#include =C2=A0#include =C2=A0 -int z_erofs_fill_inode(struct inode *inode) -{ -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82struct erofs_inode *const vi = =3D EROFS_I(inode); -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82struct erofs_sb_info *sbi =3D= EROFS_SB(inode->i_sb); - -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82if (!erofs_sb_has_big_pcluste= r(sbi) && -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82 =C2=A0 =C2=A0!erofs_sb_has_z= tailpacking(sbi) && !erofs_sb_has_fragments(sbi) && -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82 =C2=A0 =C2=A0vi->datalayout = =3D=3D EROFS_INODE_COMPRESSED_FULL) { -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82vi->z_advise =3D 0; -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82vi->z_algorithmtype[0] =3D 0; -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82vi->z_algorithmtype[1] =3D 0; -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82vi->z_logical_clusterbits =3D inode->i_sb->s_blo= cksize_bits; -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82= =E2=80=82=E2=80=82=E2=80=82set_bit(EROFS_I_Z_INITED_BIT, &vi->flags); -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82} -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82inode->i_mapping->a_ops =3D &= z_erofs_aops; -=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82return 0; -} - =C2=A0struct z_erofs_maprecorder { =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82struct inode *inode; =C2=A0=E2=80=82=E2=80=82=E2=80=82=E2=80=82=E2=80=82struct erofs_map_blocks = *map; --=C2=A0 2.43.0