From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2616F2E8DE5 for ; Fri, 28 Nov 2025 08:32:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318765; cv=none; b=YkoTMhqFyhT1fKcQYSbdt3XCpOx64Aj2on/lX7AGs/0Z3y+rPfdzns1jAolyJ+CusyfT9BC22ByczwnPyGbuiAuGVyQwkAVO/625Psr7CIJbxt+TgfeEqC/riAmY6SlbLwRcSEoG3UjkEL3pMoq2HLvJY9wluZT4v+Gl2ze3Q+k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318765; c=relaxed/simple; bh=nbYby2EM9de8liKCH6EPXwLAr+CXSG8jGQgCdHY1huE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=n4rwibzc1cwO66wQiWoFspK68W2NsyQz/h/OMBzU5PjK4Mkfyzuik8CrKzYHmNxziIS7YDJe7f381+gAReT8pFRRkdAepeWS0mtMdP+DABbqMz+kxb+l9K3f57V1yMmfhuLTZhND+0lBv3w8Lk8NiMW7KFE+Lkkj/LkJKD1k324= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=g0pYmYtI; arc=none smtp.client-ip=209.85.210.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="g0pYmYtI" Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-7b852bb31d9so1825602b3a.0 for ; Fri, 28 Nov 2025 00:32:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318763; x=1764923563; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=wEXNzDk3PZG7Vl6bACrm82r4Ym6fDNxq87feOMpROvE=; b=g0pYmYtIS/P7dMpQ1erDvN2bSLVnJDU7lfPJm1A2SlMQjNBQa0vNrfvHR4fXZBhpk5 UHRMokyQSBTl0qaE3JcHHjjzO+j3PO6PZZw68b0dN4GXFSq6V9WKk82w6wWAT9R7RgJx Wh6GPPHmo2ZwNIyqiALQCK1pVIyYtvwQYG0de7CQmuQue6EWrwpTb1wqyydFo4rXcxLq Pr+zD9mGo2fPUSWhfV6YRfBEl2sspB1q7r70DKpOYneMHO9D1RsfGG9+nwBfqvatPs3q zb60/K0hz8NR7KTGUotMJkf8DtF0VssVC3nk19wz4i81NPAA1iiacVVw9QpzvP+yDqmA Dkew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318763; x=1764923563; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=wEXNzDk3PZG7Vl6bACrm82r4Ym6fDNxq87feOMpROvE=; b=oFU/nZ1YlUQPCLK3AJsKyfs2RT5I8bwbCHBZF9xiM4bwkLDiK19cYeNqyExZB347+9 3mx+rRZn3fveADCkFSQbagDrwA3rzB4RYyqVyGJoToL0QBG3ReVi4ZyahXl/4HpJQcfn mi1ipsNg6VsE0LGM0/QeoRI5dNiXCBlg890wFz1Zj7TNHi+4OuvJ/vj51upUfT2W655X FbppGEks84xDq7H+B8fKLhCxwcQMPuy0oCJR1dyRMhx9ZvJZW4wSqWdBXHU5qC7nJSUp yFU6/r/d09mcuKz0IEZKiQW/m0qqIBFzZqq5kIxlqYZWpp741FLERBvjLElVDY8pn8u+ urQQ== X-Forwarded-Encrypted: i=1; AJvYcCWQriWMa04kuReGWQMdUU+zjPGVnqxIEBTvK0Hyu1qWhVyc4AlPwmK9hT0apwM56LawcpqDo9J5dharA1o=@vger.kernel.org X-Gm-Message-State: AOJu0YwJCJWVBXV7GCFWYCLvPi5yUp4sibo2D9Bgu5C8wBGOfAG+RzTX nwLgFjd2p0GKhfbLTVIPCvpTKo1rtml0Y48Q4rGAWr6t8vcqrZzW70nq X-Gm-Gg: ASbGncv5vhCyqFtlNQD9jNafsRzKtB6Y+tEwZJIB+IK3R9eNbosfy5JVPpVz9zEDFgp F6lsG5iU2c8HyFEECZPBVWMBjO72YUuKaudpk0U8E2Qf0SYsm23QUWwPhhVh6wZLC0ckNhIjuUT ty7XjlEeXqXeaByPUlGvnWODJonq0KBLH4mLt+bDV5zFm8d7VRaHVHpatkHUzeoQ8wIQP8iOoXi eqD9G0DleqlDmLgTp+EuQwMxhl5zZSaLJ4FO+EA84iO7t01LGX4xP27lKmylNLlmslhWmOBPv0G NrRfcRZ4LJ9jLnCc5EyDIess1Bn/6vKBM0Ptg9flxLjgFWcfvvyjXYgfKb0cLNYEGh+YdoIeVUu DWoKTwnrauq/o4wA4HJg3wqdqt4ovmPCj3T4BHQhcmu0i9blJ4DYNe49HLBAUUdfz9vVBwn1Neg wJNMrD8DKZ3fHjlcTesJzkE31WbA== X-Google-Smtp-Source: AGHT+IF16ld9QNCqaVETJUBsXYjs2kY4Pw4mcEH3R6jDofKcar8TG/UX/uqF2Rs9fZ+s8kH1ElEzpw== X-Received: by 2002:a05:7022:7f1c:b0:119:e569:f615 with SMTP id a92af1059eb24-11c9d712704mr11436137c88.14.1764318762983; Fri, 28 Nov 2025 00:32:42 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.32.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:32:42 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 01/12] block: fix incorrect logic in bio_chain_endio Date: Fri, 28 Nov 2025 16:32:08 +0800 Message-Id: <20251128083219.2332407-2-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang The `__bio_chain_endio` function, which was intended to serve only as a flag, contains faulty completion logic. When called, it decrements the `bi_remaining` count on the *next* bio in the chain without checking its own. Consider a bio chain where `bi_remaining` is decremented as each bio in the chain completes. For example, if a chain consists of three bios (bio1 -> bio2 -> bio3) with bi_remaining count: 1->2->2 if the bio completes in the reverse order, there will be a problem. if bio 3 completes first, it will become: 1->2->1 then bio 2 completes: 1->1->0 Because `bi_remaining` has reached zero, the final `end_io` callback for the entire chain is triggered, even though not all bios in the chain have actually finished processing. As a quick fix, removing `__bio_chain_endio` and allowing the standard `bio_endio` to handle the completion logic should resolve this issue, as `bio_endio` correctly manages the `bi_remaining` counter. Signed-off-by: Shida Zhang --- block/bio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/block/bio.c b/block/bio.c index b3a79285c27..55c2c1a0020 100644 --- a/block/bio.c +++ b/block/bio.c @@ -322,7 +322,7 @@ static struct bio *__bio_chain_endio(struct bio *bio) =20 static void bio_chain_endio(struct bio *bio) { - bio_endio(__bio_chain_endio(bio)); + bio_endio(bio); } =20 /** --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pl1-f178.google.com (mail-pl1-f178.google.com [209.85.214.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B033B2EA490 for ; Fri, 28 Nov 2025 08:32:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318770; cv=none; b=B4spH1WfMapkuZHauDbTnlF1pbh1Aa1VLulAzizd0kQwpblXfK/MAKzg9WrEAh/iVW7YtE7CmqkOIxXfCaUz08nzVXI7oV1kC++FeTrFVeL36285GS9BVTv0hxGmYUBmEYVsHEKboehumtp00f/eRsn1eLuCwvaKZrjWckuPfZ4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318770; c=relaxed/simple; bh=vDTdwwqFiUx+YnWL6sZwmz4ttt9jO7ABRme3mV3jkpo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Qk/ch2UdJ5bVRo1MSydmmC2nxf3hBwkHeio5cS2iLrWuQmf9h4HlBbp4VU87Ac3ORF3HfXpNyfcpsTLPbPto5LOVF//BzF+Bck+BpAS5jakzcjF8vYRsRGyQA6jBwCI10wyGrImypLi4roArj0cPHEWAyYHECYxJu0Iq1WSIgeA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Kzg9a42n; arc=none smtp.client-ip=209.85.214.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Kzg9a42n" Received: by mail-pl1-f178.google.com with SMTP id d9443c01a7336-2953e415b27so18226335ad.2 for ; Fri, 28 Nov 2025 00:32:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318768; x=1764923568; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=dYdGxu8+S3la90e5ilLAk2WHMl9XT2MOPAJKSPmhLP4=; b=Kzg9a42nKrcwuYJQY+ScZnAHIrHBJFMdQX0bDvUZSFigzvsmYxoJlJxMQzE+0EDozZ c5GzOKzqIpHvZWVmkyMaI/UIkTqtD+w74trvULVNNRtHYvDxzy3aOGgUm4MAWg4QsJJO TLf3Pg/lRzat9g/FDJqx2Ndkc4AkEhXnlOnJBv4rLYrNNn3z0Tw8gZC3x8R1sM1pAjW+ 8S29cMxQFrsZBTYkeUzoUU5aRZGaujLAkU1uoT0Ppdt/TOUDuyqO+q5fX5PBQaDfU2Tp vlq+R8uu4j+Aogm8F2dpG41wTSSXL6T7K0JuCRjvfZ2XhZEyIlMuzC3q6NRK02smo13l EcSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318768; x=1764923568; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=dYdGxu8+S3la90e5ilLAk2WHMl9XT2MOPAJKSPmhLP4=; b=M4GzLfQiQRaObQVb8OZBOOZfsmsgCLjShZItMr4HNQYp2Ve4i0ZVZcnqemp0geQZ1P zcTAN7CgjHDM0U36U5SuiJK5CdIdFrBxjOSSn50+YPxuPYFK8L0jO7L0D9isG1kBfSGI IZbgdo9zEnNghnGvYeIG9Pw99Yc3QQ3Lpam8yfqe6gUvBEuom0G5SoftQPMPSVlBye3a TFa0fNagfczysdA/4G4WQUoBFchbOVzHczAq1kJUSXTI3qkV19Gzsd1UcEan422th/Ag PSzNmB0mtEje5W4Lok+KvcXgzQ84hqOXLQ7ALxOObih2CqF4rPa/WLS5vrWFDmGG+IS1 qUBQ== X-Forwarded-Encrypted: i=1; AJvYcCWrYOsDp7fKwrkG12v5MakXdbl9W47oDqsGY6lQhHHvgyvo/4cKt2BwVpJWTbUVK2OZr2oozzBW7EWXa80=@vger.kernel.org X-Gm-Message-State: AOJu0Yw3dmcnQmDcAKtbOjjxjQGeMT/o8jqrsm1en8jeVmuo5aChdZGU 4ZHfCraffBLNjY/aq/uPx/ROL8mQHQ8pQ75bkvpvvOq9E524hzIX4kLF X-Gm-Gg: ASbGnctl8kdZ26tW2kci3MvEmT9+79ORau0GZ1R+gbdRRnPX+nS/P4Mm2mgEHDINiIq 6rait3qj5u4s4uJkT3YaXGqvTfl2xVit8nLtA9MVmfIx7i6fNvHPmCqqbY8uwgUttMgQVlnAT9i f5nfe9ptyWKNPQSMtdkTNuXdrfVH32ubDJ08d0KcPlenaYLAuHlPJa2+xuaffm+KHCDWXRUmm/L FQmnw7mCu9U1rcN6MfhMlPWWwXHLfanmmS5+b0Vc16u2WgfbBeGCAvZRwNMUktC9uVMSGdcpQRZ fvVsYQ6YhNjL3nh8dDmuCnbamTPVawwhc9MgPfDsDhNoqREEMhX5LwB8Dx9Lz9C8hixz6SpPVGM WCLXizOzyda3EVX3Ekqh8/sEzcu3HtqFDGogVoGURtHG9V/64V8Ux1+noIlJzm7l5s1/QCmZFRD Dz9520WLIvo+3HrsS5Cu163WE4oA== X-Google-Smtp-Source: AGHT+IExXZt7YE3nF+952Md7MiVvxMbDW7G+yswwYtoDXLwvootnd7yuttY35MGv7RVbIjqP5duRMQ== X-Received: by 2002:a05:7022:670e:b0:11b:a73b:233b with SMTP id a92af1059eb24-11cb68354b6mr8088695c88.28.1764318767897; Fri, 28 Nov 2025 00:32:47 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.32.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:32:47 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com, Andreas Gruenbacher Subject: [PATCH v2 02/12] block: prevent race condition on bi_status in __bio_chain_endio Date: Fri, 28 Nov 2025 16:32:09 +0800 Message-Id: <20251128083219.2332407-3-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Andreas point out that multiple completions can race setting bi_status. The check (parent->bi_status) and the subsequent write are not an atomic operation. The value of parent->bi_status could have changed between the time you read it for the if check and the time you write to it. So we use cmpxchg to fix the race, as suggested by Christoph. Suggested-by: Andreas Gruenbacher Suggested-by: Christoph Hellwig Signed-off-by: Shida Zhang --- block/bio.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/block/bio.c b/block/bio.c index 55c2c1a0020..aa43435c15f 100644 --- a/block/bio.c +++ b/block/bio.c @@ -313,9 +313,12 @@ EXPORT_SYMBOL(bio_reset); static struct bio *__bio_chain_endio(struct bio *bio) { struct bio *parent =3D bio->bi_private; + blk_status_t *status =3D &parent->bi_status; + blk_status_t new_status =3D bio->bi_status; + + if (new_status !=3D BLK_STS_OK) + cmpxchg(status, BLK_STS_OK, new_status); =20 - if (bio->bi_status && !parent->bi_status) - parent->bi_status =3D bio->bi_status; bio_put(bio); return parent; } --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0182A2E716A for ; Fri, 28 Nov 2025 08:32:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318775; cv=none; b=elylHsy+nTcOSgoOBhDHqSXUZLbpji5RB2vJmhE2+VQVpKD4s0h8q8eO4L8H1YVgP/N9St7JZYe/T9SZn8km2AU1fOAdqDc7YdZShZSg1f9TP2UVAsApOw8dAI520y0OOvKGqhY6yqKWmCh0ko4n29CFAhkOEAy9jtxPI549OHg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318775; c=relaxed/simple; bh=JLIdNXPMejF737Jv1xzF5GicNRibkuRDb9iX4pmjoI8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=EmjzvHkm8S6ba6vZVBt47lCRj2ZwzSGChu3UYEPyX1SSI6exmJ2lBmxaExBpEYjAaDc5LCyCvYef/6U7k8LV+EjenVvAVr+pEBbBjnLWVuTJ2SNT+yqkEbZCKQwMHER7U2t+IeSb9PCPIyUduv+pzMcwFd/E/5T+/+iswe6wrEo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=e3h5NxD2; arc=none smtp.client-ip=209.85.210.181 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="e3h5NxD2" Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-7b86e0d9615so1899083b3a.0 for ; Fri, 28 Nov 2025 00:32:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318773; x=1764923573; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3B+NwUppxNtx5dO3GeNOAlGv3QVGc2Q+cteUdMRhiTw=; b=e3h5NxD2+pjCU+SL4YYCXLOBvl2ZfbIVgZx0v94A5jYGGMy2YxzoJ2BvRB7sgYqCdG apEykxsswt4QE1e00J7/lg5wXxqaMckUKsKxLIzybNLFlVgVWGDFACNNWv+GOn8a1L8o lTIX9cnHDuZU6moNC2Mdj4bmo8eT8y5ikd79d5IfF03notzdK4Ug8TgTE9SeYdrqnMy0 TXU4PRVHxeX8OJWhf8QHfhfDRnfR8kIZ/9I9MnoVuoSK8rYuvGayN8OcY+3lOOJXkS0b 6sed7j4zSDFJ81iwNkdCcFDzQzIkXpi+lm/oZPlfQXMghV5QtreY6YfBaYgs0Qr3VYRG gaQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318773; x=1764923573; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=3B+NwUppxNtx5dO3GeNOAlGv3QVGc2Q+cteUdMRhiTw=; b=cLzTIjjwwKSCqHBfcwhWZlIYu+SFQlrszoOa9ZDo+SmhzgG5bk5YOUn9AZtpqwPZNA QJISJhSp9+MtikohWMAj8xSMbV21yoMP0aQbK2RuSrVCai9Vs0MTHvmqjyS5pyqUnj8t QHQA8a3M3hJmyiV0KaxCt4CVB+szlQHlfkBa6QQv90uoPg8iKFwH7jHbKC3rGm7S0AWO Fih4HnG/PdsGkzGLmxc+so7+OaTbMq1dCdaf3x2auz23pUkINsBq/JEyiyK3Ks3lHvsy alESTFVwxISBretrSyr2KVGSUhc88jNLVckpIucyBaWBRbAWrtRyPOncQ8FOXVyyIOFB vzQg== X-Forwarded-Encrypted: i=1; AJvYcCXiqmLxXYp2lo505+VHFM17yKey8iuToNG7JSc6IMBW8cbPOF0UjnAxW2eNqmG4Pb/MPFdEsVWhgwAafZc=@vger.kernel.org X-Gm-Message-State: AOJu0YwEJyx5X4en7F9dZ2jgBkVolc5UiISXwdIaq95dtXP0oMubHT8L +5kkpfZ/Br8Y+vgZW79vD3KA2n21R2YsmMzDwjY414QE0/GfNf6yUFHU X-Gm-Gg: ASbGnctnDCXBlxV73J8/ov/UASeJH//a1Z+H0EaNT3Um1QUCQ7wnSj8f+dlVYSwf80C iUF6wdOBAqBkSQjK+GdfP5lsRA3buMEW7iXH97y6OiWd67+UdttAxVbcJrLfMfzr3fRUlBkuPXb Ub50e/Gt3FVksV+sBRywdnRdAnxYB73LVS6yvxUPI0wOwq6LUxBo/Z/d0QKxww5zWVg0b7mUxHe FDTzBtjToL9TwAwGzDj8Rfcw5K/VVGXTxWi6seUEDT9xbxz1CU3bt/rQOSmEclNcVy9p9eG7RHO Vdsysxc52+jTdlv9RD6T0TqGAsk2pQQR/BJZFQCs+ySERZU1UPxrx/AXVdtIaRUHEoHK3W7PX7U 0OVtgRjc/Rd7reGU5z3PH/EeF2/SEwKmlKk9K+SWAgt/Xgmv88BE6BL4SpjDkHrjfnc5X3+jRiI 8VS62hYE1ce0qNS8C2SsmNs9oyiw== X-Google-Smtp-Source: AGHT+IExpRIXm/rx9JSaduyyoo433z0edlCZgYRCixn+2l+uiE9AooEQRv+QW8QlPPxN5lYcC0yJLw== X-Received: by 2002:a05:7022:2390:b0:11b:2de8:6271 with SMTP id a92af1059eb24-11c9d8635bcmr22508225c88.39.1764318773026; Fri, 28 Nov 2025 00:32:53 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.32.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:32:52 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 03/12] md: bcache: fix improper use of bi_end_io Date: Fri, 28 Nov 2025 16:32:10 +0800 Message-Id: <20251128083219.2332407-4-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Don't call bio->bi_end_io() directly. Use the bio_endio() helper function instead, which handles completion more safely and uniformly. Suggested-by: Christoph Hellwig Signed-off-by: Shida Zhang --- drivers/md/bcache/request.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/md/bcache/request.c b/drivers/md/bcache/request.c index af345dc6fde..82fdea7dea7 100644 --- a/drivers/md/bcache/request.c +++ b/drivers/md/bcache/request.c @@ -1104,7 +1104,7 @@ static void detached_dev_end_io(struct bio *bio) } =20 kfree(ddip); - bio->bi_end_io(bio); + bio_endio(bio); } =20 static void detached_dev_do_request(struct bcache_device *d, struct bio *b= io, @@ -1121,7 +1121,7 @@ static void detached_dev_do_request(struct bcache_dev= ice *d, struct bio *bio, ddip =3D kzalloc(sizeof(struct detached_dev_io_private), GFP_NOIO); if (!ddip) { bio->bi_status =3D BLK_STS_RESOURCE; - bio->bi_end_io(bio); + bio_endio(bio); return; } =20 @@ -1136,7 +1136,7 @@ static void detached_dev_do_request(struct bcache_dev= ice *d, struct bio *bio, =20 if ((bio_op(bio) =3D=3D REQ_OP_DISCARD) && !bdev_max_discard_sectors(dc->bdev)) - bio->bi_end_io(bio); + detached_dev_end_io(bio); else submit_bio_noacct(bio); } --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pf1-f177.google.com (mail-pf1-f177.google.com [209.85.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8D5FF2F12D3 for ; Fri, 28 Nov 2025 08:32:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318780; cv=none; b=bBVKD8gC1b4CACtzITFDTMzzepZQNBPa/UwVe27lCEwtVBs2HW02M6HGTchvTq7Pi1eigBSCYfYvylheMm4azxbDDGfJqq+F+QpzoXmwZmQgPv0BZiStkbHObtyWMpC5RlOzHwohKsBTwnsWhDQ7UwlnQmCYgljyaCwgNU1MPgM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318780; c=relaxed/simple; bh=XfGf+/4TH9UT7Q+DEbtJ2829MlGgMcgOkxUS/OB2JNY=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=LpyR6jPqsVvRxIG9qeVNKO35anLhhnSR3lNca7V8B0tlBjYyr/hTFvABwzs6t+hSvXCGxA/Yxg2Vg26ntS74Vmp8xvRkr5RQkXXB0OuX9OeY/QQMo2Mseod6/B6f8LYVsblvm3HnOdq7dy3r1HYu7Njqe1gdhdwpdTNM+SZH9LM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=SI4ktECW; arc=none smtp.client-ip=209.85.210.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="SI4ktECW" Received: by mail-pf1-f177.google.com with SMTP id d2e1a72fcca58-7b8bbf16b71so2014258b3a.2 for ; Fri, 28 Nov 2025 00:32:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318778; x=1764923578; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=hgav++xVu99AZZZMA2bV1F+Nxhf+A3QsmIfb5iyDR/M=; b=SI4ktECWGAdxQ/h5ju+9D467iQ0/b5onxBwTSANKtpdW6BDsrTCOBt0Z2whVC1Kgc6 SqxC9/yrtDlAggVPK64cjH8kfhOzaGrZ22JS17I7r32M+F/OOlRvLkW9VmrFlWdD9BQi cd1dIhzw76SZZqIIZBA55GnPK92aV9L3rFxGG87UGo6p7jPJJvEACSIdXqbPgIIAoWXm dpzrjxLacGVnjfljRCZozEBRW8Srq7qH4WQAk2301BB7dH1yjlKEIYl+H49ja7BuNBTu 4msQwv/o6Lclgz2gjm+b7vK17E6S1wuf2ciylRy+pf7mRsGXYNvw0hyiuerrllb/+E4l NaCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318778; x=1764923578; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=hgav++xVu99AZZZMA2bV1F+Nxhf+A3QsmIfb5iyDR/M=; b=eIPWLiS8Jlr4x17SQtBD/cGk3Vbu1cGfBy78lgID504AaQNYSpfVQy/hP91v8Xsmiz B9BolHNfohOeFBwRVdhsgONHlmRQlqp6z0OqLJI3XxJ+/FLYyjEaOkcEiNgaaogL7oH8 E5/80sB37WTiI4H2Jy91cvl4HBqNjzYjGU4pF0GUV+0/srFwzIgtdJatsUXZDpD1aRu9 CUDBD6q8zPG6r1c2M73H+WFIWy6ixlr8H8iqrpBPRVTeaSgQxlMMcxMXV8cU+r3T5Kby GO+TREtjO2PEnceJ/lGPXnP/Jlw9Z6yf+R4MGNQpfhU1+l/wD3DUarCJsv2FWT2/N5nx vd0A== X-Forwarded-Encrypted: i=1; AJvYcCW+bL6HxfJ8Jy0aZHWkGgo/uT2rXb2pkfxT/QIQEriWVF2b3piD/iYtx+Cp2Pzgcy4hQJW3Or1Vc3Sh1P8=@vger.kernel.org X-Gm-Message-State: AOJu0Yz3g1AByXIc1VrzTUFEdme0713DALkqqWqCJFt8lkZCwYQFnl1u evn7lPwyk/guTDFwhyPaPENyxa+XyzUk+/BvNE1mWNDu0GpmX2O95M4g X-Gm-Gg: ASbGncuPHfPRFtg4KrN0vPi1PKMJHQCefYp7gf8it8kxQp3veRYj4+tpoTTeneDsVhI 9Qf4fmPWwhxQwzI76rfsF3PERVINoV9O2YUHYLTR4zRMntj5NsyWM4Rz62xyrwaaALOiEkRUZ9p 5VyIOF6lygx43F8hB3XqXPHVfrxcz7g1DVjb3O6i2KWQV7HLNDcUOlrluH1HjYfOyYazymsPN8V +HKg/uLryArtCDyJi9hofVlaB5yMdlvBAqcGZjym22qndgWbKyLIIrigYVM5yYHZcEa+AJEQMtn orOs3X2qvmuFl/eaa5dk5AhEQRpPjgYmw0zgTvdTK3XIzGQP5iXlaxF028oIH5ccG9E31iJFzcb 3ZBoJ8jRaEwmxC0H1DZVaH0bpFvuPKtvmxnaZpOhLkm/UHf8G1vqi0gsKBlrVx1X6iO16IdJuDM rQ3D9SxGPKkmLPjnebNKEx7VFDew== X-Google-Smtp-Source: AGHT+IHuO0sAEeNowy1+oe3IeEgaIYQcRN0FMbygDOiWMPQmdT1sBtyBJY7y0vyzVSrhuxE7eNWdhQ== X-Received: by 2002:a05:7022:5f0c:b0:11b:88a7:e1b0 with SMTP id a92af1059eb24-11c9d8539f7mr12036129c88.26.1764318777892; Fri, 28 Nov 2025 00:32:57 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.32.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:32:57 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com, Andreas Gruenbacher Subject: [PATCH v2 04/12] block: prohibit calls to bio_chain_endio Date: Fri, 28 Nov 2025 16:32:11 +0800 Message-Id: <20251128083219.2332407-5-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Now that all potential callers of bio_chain_endio have been eliminated, completely prohibit any future calls to this function. Suggested-by: Ming Lei Suggested-by: Andreas Gruenbacher Suggested-by: Christoph Hellwig Signed-off-by: Shida Zhang --- block/bio.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/block/bio.c b/block/bio.c index aa43435c15f..2473a2c0d2f 100644 --- a/block/bio.c +++ b/block/bio.c @@ -323,8 +323,13 @@ static struct bio *__bio_chain_endio(struct bio *bio) return parent; } =20 +/** + * This function should only be used as a flag and must never be called. + * If execution reaches here, it indicates a serious programming error. + */ static void bio_chain_endio(struct bio *bio) { + BUG_ON(1); bio_endio(bio); } =20 --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D0F2E2E8B7E for ; Fri, 28 Nov 2025 08:33:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.181 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318785; cv=none; b=cihwJZMO3v57OSGAfyo5367TiEbkyYIehM0sr+AkxWTf232cIY6otyPzuQdJ27ypIIBOcFmijp0iVQtWMrhnzS16EfeGz8xOXSZqKYw66zDf2dZJeQbJy4wpXkGQ9u5dMgpZn17E2ecaLCgQofmS44ON4lzDlYhDSGmmtHI6nQE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318785; c=relaxed/simple; bh=+kdxszjTpaHcpdO+OsTg3+9Bb8a87RQlO+SGH8oGptU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=r0/nWypD9PwrMbQFqfcE5QGZ5+EHQzc9khlczyxGQpdjRXZmURjzQnM0z24+e/TdoGK82BvF6S8JLc9EEP5hD7mbIFfYRQEtAfeZoW+Jz7SAdtOuBY6/Z/k2qOFIUE4REpudtrwLFQxqKizvNc2nY2h3Tl6K0X1ImvZZus6ys0U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=BhCDL1Ws; arc=none smtp.client-ip=209.85.210.181 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="BhCDL1Ws" Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-7ade456b6abso1303550b3a.3 for ; Fri, 28 Nov 2025 00:33:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318783; x=1764923583; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WOTI9zrIzg7zm0suBs1FvPesu0SkZxT8M/7CVofybKk=; b=BhCDL1Wsgz2qKihch1wO4CLq72D8pMTuQKp7V3DyN38kesed6BOxzCgXNGMbwkE5fx aYxqxqmf7GGfGIDefKebcCUlo5c1TKq3JapQr6aLALpmpHtkxdsMkxrRerFmjjJt6Hid EB5IBxJ/uWXG3ataKDrGiAbmmtEbOw2Bp18k5STbhdzeCc0bjSGGyQb4Ss9AS6CRlofN 6aHQLCbkg+YcFz/eOBdmk7eTmQ142LJrcBFPGIUzM77IipIigdR5sFpqPxHFv15kbyLS eYOxNGdub2N0DxI/+veH1eJhqjH7eq6kjqqT+Zx44xBisBVFERmoiIarMGe38OCHPZjQ Tb4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318783; x=1764923583; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=WOTI9zrIzg7zm0suBs1FvPesu0SkZxT8M/7CVofybKk=; b=fNJdsQuT1uhnwSNFiqiK3AkPITA2vB8iVBaNoNOoE1V7cpQgddrTR7JLvbBzKgor9s KlN2biyD9i7Z3v86FCxZJYkJRbJioBJcb96Qa+OspxVxCeTaMgB3rMjnkKL5mlnSU4QR Eu9+vUmlu5mo3lY2UCefoiE196xnfhUa1wfP4lcO6sskVKjb9/c6dtw5PHk4Ir4u7Rs0 ZIzPEgXFCV+ZQd2QlqVE3Mus6XYt4+dmyxE4vBUVYsbHUVg49CB+1uUbgFyQgEze3w+q 6RieYTtJN7a/pK6zJp8G5RX+rZrYp2nE8/KPKusTwV+bgOQpBjnVhUEB7UNFd7veaURz qwbQ== X-Forwarded-Encrypted: i=1; AJvYcCUNJWXkGJErQK39xSj8GD8nPj87iVXULvapm87L5v3Qod4CPMabedxrG/aEvCYxCU8BgGVEt4lqMsu2RLk=@vger.kernel.org X-Gm-Message-State: AOJu0YzrvDzHLYZ/E8Wt8QpwOuWxGyHaPTSCDMkplbTLnSXA0GIzA9i7 URxHG5giQzKWiFYfNpJMB51toDkXWo0ZPuO9YXmlOCgNmBhcG+vVT1jD X-Gm-Gg: ASbGncs265k8QRSTyqFxRFP3bpuFlJavCPcjKVgfrloYgLFwUDpCLwoo5FkNvOKIQu7 nXPw4Tlmp1e2dlWHjM7n/vjsnBOkGk3pDP1sAm+iW4bpL93cMwW4yYlibHC7JTCOX+htKZb4lDf TF7ZXHM2ab3VDTPNR5rDiQHCndYJ8B33mvwaAGn2yxGr+/rB0UMoKHVlSE1+lld8ZINM8wVVJH9 PFC+M7csAMIryn7UwKcrdIZJWVkCSckrGldGRmyZCHcEPpHvCQyhdJqeAAyKHEfXu40tvRZrwi4 CVyMiRvRiuERiCaEfpacilspiLWQQsxNcsS+mqUbAuUeX3LXBNpBfAd2v1radxO6ybqgfLo2ivF iSsha02DzTvFZJBtQzZ8DBVWG8NF/9XaZnMYss4NixeXgPgiJb5OtovVneyNTbv8EIq9RcKUzkx AT3adTy/91oDxfjUCHEIpqn/pM7Q== X-Google-Smtp-Source: AGHT+IG9KZ7rWCO0ABhUceCtzlD+O/EyLZjlRlvHPaAHNjz6G3IYpmLI91Aw7ItyMwREv8ZXa06T1A== X-Received: by 2002:a05:7022:671f:b0:119:e56b:91f2 with SMTP id a92af1059eb24-11c9d870411mr17435747c88.35.1764318783005; Fri, 28 Nov 2025 00:33:03 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.32.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:33:02 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 05/12] block: export bio_chain_and_submit Date: Fri, 28 Nov 2025 16:32:12 +0800 Message-Id: <20251128083219.2332407-6-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Export the bio_chain_and_submit function to make it available as a common utility. This will allow replacing repetitive bio chaining patterns found in multiple locations throughout the codebase. Signed-off-by: Shida Zhang --- block/bio.c | 1 + 1 file changed, 1 insertion(+) diff --git a/block/bio.c b/block/bio.c index 2473a2c0d2f..6102e2577cb 100644 --- a/block/bio.c +++ b/block/bio.c @@ -371,6 +371,7 @@ struct bio *bio_chain_and_submit(struct bio *prev, stru= ct bio *new) } return new; } +EXPORT_SYMBOL_GPL(bio_chain_and_submit); =20 struct bio *blk_next_bio(struct bio *bio, struct block_device *bdev, unsigned int nr_pages, blk_opf_t opf, gfp_t gfp) --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pf1-f174.google.com (mail-pf1-f174.google.com [209.85.210.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3C4A12F9DB7 for ; Fri, 28 Nov 2025 08:33:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318791; cv=none; b=Q2RwmdFWPQwoXTPq2rkwesW/80RfE5qR4rr6fzq/RbrdKJSRKwb3rOzzTFRg6bASozoTGituENW+WB1bEo2t/YRgcPSPBsAvBOnqgGAVo7eA/K1ZG3cnVFd934EVpLf+HrRYFjwcWMq7iVF1RaqRTSbiiNDOLvLFaFHIY18/MZE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318791; c=relaxed/simple; bh=eIesZROL2LjNY0DrQ6P8R8b1cwhdKxEhWtmo1wbXnYQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Lk4SzM2AssnHlEWGciG+qyvsCDvhCU6dC/9GVcRadH+RsGdEHP0K7OgsaZg36ycGzy2+P51WVAGMcqh5J+BZtflbpnpTFEs9LLacwjn7J3en4pr88PTkgj1TV8WK2ScDHk5N0/C/fy3vy4tq4+jvnnyHedXmEyIto2Nuat9+WZE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ce9ysQET; arc=none smtp.client-ip=209.85.210.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ce9ysQET" Received: by mail-pf1-f174.google.com with SMTP id d2e1a72fcca58-7b852bb31d9so1826096b3a.0 for ; Fri, 28 Nov 2025 00:33:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318788; x=1764923588; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PAlkzqFb5MzFCJaoNDunPaLLzQJH14gDGKiKCNGaT3E=; b=ce9ysQETKpds31mQlC/gwbVsfJvDaNd+gtcQa/DCXl7VkYjf1HLWaPhHsipNj+B4Rp rrj5KrI+u7YYGxr0HrmM/ZZ7Dv6R0fnJRYF6g5VRxqneCfn0sYkgTcYKSBkJY5PP0CRN C0TMBq5qEvlPFfHZ7+ndX4282E9/EnTc6IwZ2vhF/jIBI/A8CxkhIxf23jCs3A6DcIQW 15uPeYgKnsVoObyd2m0PLj2iA00v4frkuEyUm9Rb2akgidbrTHI5JeDxZ54VSR1eoryc hpfQh1VTtH5Y/D9koUbayRviINOw8Kn5PHKXECaa3ceQKiQ2Mqp3mwPpJfqIiJwQRITw m9hg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318788; x=1764923588; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=PAlkzqFb5MzFCJaoNDunPaLLzQJH14gDGKiKCNGaT3E=; b=T4hWf3LMAL8hScAh5n1DRyFuZpiLNRxTcadQdj334g+7AGl/83+9b909eXb+bd3zlY XtJ/cXDkPphgQ3Uu3F1kvsUF5zneEam9+tm3oUNcU6jEGx0aifrJ8HtFysfz6jsNBMqu zQrQ4PzauZa/Dz/nUNrI7zdqAOGWKO7sm5b/LDTeXrcYVPHhOfu6KvX1q+YTv1CldFhM i3DXC4VEqSwX3XMd29i2Asdfw+kg4MrfBjp7muTe89xqhAl6Ev3aR2OSupj7PEcYkLIU HHJ1McVvhY6fB8KRgrQy2kq98j9GLRAdYBFlv6985lSxh05CpI/k8JI92MTqJK8O8Uzd 4pvw== X-Forwarded-Encrypted: i=1; AJvYcCXcCq6aQ8jSs6BWMgSpMOFoGnN57TvHPPZgA1JooBB+WxkbagneH5vy5TJhd7vO63nZRnNzzqu9XeJ8cV8=@vger.kernel.org X-Gm-Message-State: AOJu0Yz1It2DSApy74GlAi1vz5Yk6VZFnUUDf4WgvVqBmHFfXeIiMJuM idR/Fjw7t2WQ0dN62/JAWSeoe9CkPX4MULwY7h6qenGbhl4pXSsXsFpV X-Gm-Gg: ASbGncvzzw6xiLlfPtW+nld+2I8FdUXThWTG/B0GZGvcqkt2BdBGpn+Q5FcInk/enhS fCtYskYQYWINQX+U3P78BPNohW4lc3mr+eUoqXvo8tmZGhjfhUFunfCg8KOdPZ6bV+GpbtNbwDX XuKilG2GPIBNkt+nbA639Nres/eNJDQbvTWOOar7RhSKC8z+Ps3XJd1kkMpJRRKjS9GEtOeBdr9 CXu/WKxYvgI7dyl1Nyy8hhdBWrTV7BwZJgjiin/gPA8PaVa+KxVPnX1cNDueNYMVQPKvr5OzsjU r9q1i434kUeKYklVMIcgWBpedEftUFtUsYOMTGdV4dKlY3Y2lofN5i8DARqqxgob6liHtU3Utzi 7ms8+1Ra4aaD/GW4E6mW4+BuRYp8BB3h82CGMgHIxMCXCw9C4sfPQ4CfTkIiVhS43j6c6fMYmR8 ueQm81NcIJUfIuBy6s/+qCgnPmmQ== X-Google-Smtp-Source: AGHT+IFIaFCQuKpxcLcZ63tEcOt0hGjrfoUQN9LWUQ2kBfICDUhGuL68J3zsB+mI5c6KDSWUdB+sFw== X-Received: by 2002:a05:7022:670f:b0:11a:4016:4491 with SMTP id a92af1059eb24-11c9d84c6f8mr17988575c88.24.1764318788462; Fri, 28 Nov 2025 00:33:08 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.33.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:33:08 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 06/12] gfs2: Replace the repetitive bio chaining code patterns Date: Fri, 28 Nov 2025 16:32:13 +0800 Message-Id: <20251128083219.2332407-7-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Replace duplicate bio chaining logic with the common bio_chain_and_submit helper function. Signed-off-by: Shida Zhang --- fs/gfs2/lops.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fs/gfs2/lops.c b/fs/gfs2/lops.c index 9c8c305a75c..0073fd7c454 100644 --- a/fs/gfs2/lops.c +++ b/fs/gfs2/lops.c @@ -487,8 +487,7 @@ static struct bio *gfs2_chain_bio(struct bio *prev, uns= igned int nr_iovecs) new =3D bio_alloc(prev->bi_bdev, nr_iovecs, prev->bi_opf, GFP_NOIO); bio_clone_blkg_association(new, prev); new->bi_iter.bi_sector =3D bio_end_sector(prev); - bio_chain(new, prev); - submit_bio(prev); + bio_chain_and_submit(prev, new); return new; } =20 --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 797862FBE13 for ; Fri, 28 Nov 2025 08:33:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.172 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318796; cv=none; b=d9vz2/QieiDU7haUuGP5ptdcn/2hyT0gWKGzbDFV5XX6Rxpex93Hntu0eZPsRaGfFnyWWW7WEotrTo0t+lP8wesCKqc6I/2JwgsqCmDPIr/i4rny9jAqc0J7qWEkfvjhebjwfDuuRf6V0wUdfo9ZLlwIgTY8as92sDUjd/jH+pA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318796; c=relaxed/simple; bh=rZqecGhzp3NmtFjaYLSNOTM+/xsMiNIYX8VY+Bn+fL0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=QXIebt30746wvv85gxT1QYcI2ewYmiHZibov7RsDkxc6xAwTamaK/9DL+1Nm3OVNuhuXm6XHPAvrmnB+TzyE1lbPvgZiGxcyBET6KrcLXv1MU3Imvps+Ouyh4wFYLmVktZjzCKXnKfJV1e+O9MJxHA9g4MNLW3XPAO8xnqfQCqk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=UuQjJ0Or; arc=none smtp.client-ip=209.85.214.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="UuQjJ0Or" Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-298039e00c2so22920225ad.3 for ; Fri, 28 Nov 2025 00:33:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318794; x=1764923594; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=h7vHs8yXaPj8mv/GRmviioQ8omsZI2Wqns1LW2Ikl6c=; b=UuQjJ0OrMliOYq/vKHkZ0EGMLjkP/3Z/KCHoy07iJ12lhSd9x9TW/pDBuxHkpO1xfS sr6xa4mg02G5RHHgr3svMEMCmLpDhdQcryheLSMfzjadk8ub2pnZ3K7KNe/QtFSIFSlf RM1IvGWxY+Lp0vcGGiIPfFSLyEwQNmNxQXRFRsC4gNVt+fdxU+nPuVS9FCoWe9kPH16d PcFG5Tt+J/Nj41241tasEcsxcIctOC4S3R6CIVAefgqgFxk/Lw/rEifAew2RXZhJgAgU y4mB0mkgCmGUqBTC+v3oFrYyPEm6qRgetjGwbn55odFqfVbATiCTrSSqI3VJWchOnkrw YhCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318794; x=1764923594; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=h7vHs8yXaPj8mv/GRmviioQ8omsZI2Wqns1LW2Ikl6c=; b=L20DKJaJBWRJCJ821Rn6+VNk7HtLDZQd6KK7jihw5xQ650RqEhqGtLVF7s/jqCXPO5 uicqvLbIPOyUDsXg/udqNkqmd+futMVdHkiOssprtW2F2G2oYiR0YzrPGh47mRN/gObk L+CHKmY8zEUvEpJGkE2pDy/T4MkjlnZq0oZC7FMIzTh9Tk5ArvQhErtfGKc5ydNWpZyP F/oH3cXMqcqKnWiAf8e8ZKk4Z1gIq/T+62OgIGDF83deLuLAASEOY9o4nrbBNH45nbCg jTZIoeleLch4zaS5xzAm3C416vG9Mr0cw5R5sqJWeIs8+zil8naX2RoKswX1ZDEsA34w Dngg== X-Forwarded-Encrypted: i=1; AJvYcCWBrXp7CSVZjh4pHxySOtFE2M3urEalQGMUtfieSeo9h6sajfeVX9BY4FQH9Iqm36Gmbq+IZYoZ5eRa5zc=@vger.kernel.org X-Gm-Message-State: AOJu0YxFPb+iVkkxoDScYwQAOGbdJiAwpbCIfqzGU/6771MsxsWV6Gpb 5RyvYtlFlmCEa2sKLEa9vpMQ1SBX3gTAN6zYksIIiHqgYqvRk6NbjMzZ X-Gm-Gg: ASbGnctWU9MNuDuCKfB/gh4v5ZhI3wtkVacCUwfObuuKkGk5OYNE71DQFF04wZOXF3C wFt61wp/lUsORloP4pgcG9EGNtqtcBNVRULLlpxFrDm4EnbN9XdoieUvVEoSzhpAMRvrASLtlrX 1hUsP1g9axnQWn7hyne0aMLZtOS6I063hHnn3EuGXpp9Bo91TSv1PEzaiHUWpAK07gFPXJNSRbQ UXfXdFJtsAgWGQC+vcj8V2dhfpYXIBiAKJnW3BQKvASeofyjTVKOzB3u2n4u5SjNKcNpQdXlwh+ kaSSAd3/TwNWQP3qtCYKtD77nXygd8qjmCTsrt897vHXndOzA5qVKgimRpUsOt0Uh3IjHVHIxza szdEjug0CVEXzcKx95LMURqb2DW3gi/mswc0t26sQrBn0fGzyPtqPAbQbDypADkiaVMwnBFxBnd muG0Ubd81ud2vnk8EIsqFgoYNoFw== X-Google-Smtp-Source: AGHT+IGKjtGYvF0Bq9aksrL28VuK/U2PkCtZPwPR3BXXqxprAsbvk/b9CT8/yxSPTU2xDb2fwzHbRg== X-Received: by 2002:a05:7022:41:b0:11b:b1ce:277a with SMTP id a92af1059eb24-11c9d8482b1mr15434117c88.28.1764318793604; Fri, 28 Nov 2025 00:33:13 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.33.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:33:13 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 07/12] xfs: Replace the repetitive bio chaining code patterns Date: Fri, 28 Nov 2025 16:32:14 +0800 Message-Id: <20251128083219.2332407-8-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Replace duplicate bio chaining logic with the common bio_chain_and_submit helper function. Signed-off-by: Shida Zhang --- fs/xfs/xfs_bio_io.c | 3 +-- fs/xfs/xfs_buf.c | 3 +-- fs/xfs/xfs_log.c | 3 +-- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/fs/xfs/xfs_bio_io.c b/fs/xfs/xfs_bio_io.c index 2a736d10eaf..4a6577b0789 100644 --- a/fs/xfs/xfs_bio_io.c +++ b/fs/xfs/xfs_bio_io.c @@ -38,8 +38,7 @@ xfs_rw_bdev( bio_max_vecs(count - done), prev->bi_opf, GFP_KERNEL); bio->bi_iter.bi_sector =3D bio_end_sector(prev); - bio_chain(prev, bio); - submit_bio(prev); + bio_chain_and_submit(prev, bio); } done +=3D added; } while (done < count); diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/xfs_buf.c index 773d959965d..c26bd28edb4 100644 --- a/fs/xfs/xfs_buf.c +++ b/fs/xfs/xfs_buf.c @@ -1357,8 +1357,7 @@ xfs_buf_submit_bio( split =3D bio_split(bio, bp->b_maps[map].bm_len, GFP_NOFS, &fs_bio_set); split->bi_iter.bi_sector =3D bp->b_maps[map].bm_bn; - bio_chain(split, bio); - submit_bio(split); + bio_chain_and_submit(split, bio); } bio->bi_iter.bi_sector =3D bp->b_maps[map].bm_bn; submit_bio(bio); diff --git a/fs/xfs/xfs_log.c b/fs/xfs/xfs_log.c index 603e85c1ab4..f4c9ad1d148 100644 --- a/fs/xfs/xfs_log.c +++ b/fs/xfs/xfs_log.c @@ -1687,8 +1687,7 @@ xlog_write_iclog( =20 split =3D bio_split(&iclog->ic_bio, log->l_logBBsize - bno, GFP_NOIO, &fs_bio_set); - bio_chain(split, &iclog->ic_bio); - submit_bio(split); + bio_chain_and_submit(split, &iclog->ic_bio); =20 /* restart at logical offset zero for the remainder */ iclog->ic_bio.bi_iter.bi_sector =3D log->l_logBBstart; --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pg1-f171.google.com (mail-pg1-f171.google.com [209.85.215.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 947ED2FCC1B for ; Fri, 28 Nov 2025 08:33:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318802; cv=none; b=IHcd+PUf3Gz3Aj8AYtiA2/JJl0OAolBAL6p6AlJG2Hdj1IZmPH0rxlpFZHCAb4JIjZJ9B1c6rI83s79HPlRe0ay6O0CbTy+pnaF5bzbJFrmpfYvth02RsgRhptUdlK9YVXo+o96MUV+vndqgy0yxB5NRXGjHael8XLEwJo0LTUQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318802; c=relaxed/simple; bh=Hfn+I4xKib6YHUNH+g6fjmCyECLvbavw8yPYoNL/5CA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=LdH293ffUe8qpI1CO6d9jqUs2dqW6yX6Uq/JHkz5oamX9EA++MPTXUALBrGRWGWOhsMTzLBwkOHQ+3Guuczh6P0Jn2xMlLnLjwG5ZiO1s+xBUMW9QaIRhbH2xG9qfHV+2QUKZw4CBOhS+hfeOYDqzPW52zVnKL4nHRLfGQHlWqM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OUi/xMAG; arc=none smtp.client-ip=209.85.215.171 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OUi/xMAG" Received: by mail-pg1-f171.google.com with SMTP id 41be03b00d2f7-bc09b3d3afeso942467a12.0 for ; Fri, 28 Nov 2025 00:33:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318799; x=1764923599; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=vdyx9mvaY+8x+eK9XImqi9TsYLR1v6CaCbGe/GD/N5s=; b=OUi/xMAG412JYQWqySKUfzoBptHS4/Qe8BOfLx1Cl7Ol+ZrysScGuSCbCSD832sagK E2WVayGv/dFEuvs3uezePHhpenkhUJLWlEWRdXBi0+7UKy4yLs1/7RbnYaoYGFlgMvpC ifZxtMlbt5rIFtBO7OFqKBQ1L4bCpYAdoX2eDKAz4KVeJqP0rWJAhziBh5ZQJZMY/DNy H0HbeiwnWIhXZ9LZnKl1d6uWdhJoY2QxPPZd2n1+PQMGtQPJj/gMdhpIVwsNWsx0Lykp PnNT804fJRSb5AQKhnUVPvisdKk7jejR5ztxyrbImwCfmqeTl42L6fq7+FW91/eRitbr LDnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318799; x=1764923599; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=vdyx9mvaY+8x+eK9XImqi9TsYLR1v6CaCbGe/GD/N5s=; b=BybEcOuq5EhDjdPzucI6MNndK6x5d8CD1NJTkKufPdnbWkx1W861eR6h8U0e30MKEB xsyRjhkTZiwhoMoeHh/6i1grvCoNXb4pE+LygoftQqonQkuZq7LX+7rMMJAh8CLgwJ0G HIWtwE6MyWLlGWkOzvNLuTnDTGQCfaPQS6igeKxstbmv1G7alFiWQj/h7FFMKv9gDPBB I6LXUuw/UeI8A1jTTmGI30rL+z2udg4cSZQ7S3dUzgF93VdvlNDYouurXdQM19w+NIYc 1a2gANlfcLI8pXl9km4jpMw7YPhGDtWeE/fZ30V2dYj00urFTbNdL92N7h9zSRAKPDuV NYBg== X-Forwarded-Encrypted: i=1; AJvYcCUPsZ/6tI3MMbKH5HslataJJzARcy4+Uis7Y8pQv71AoJZVSOdkoRrdLzLrYLrm4mNQbpJ9EbuvolpcWXc=@vger.kernel.org X-Gm-Message-State: AOJu0YyDHoY4e1jnkt+6GtuRSig8Iq3vlG1GBD1ffPFzInO6AfkQA9KX 2Ta2kXqMSdrpOaq22lmlxY8W7/0HU5EF0AK9iUE22h4XAfjkaXoyZweO X-Gm-Gg: ASbGncs/lb3V0seg5oGF9xsVeL1sRQwSLdHFTPcJuG+3Czhnz4a1JB4tFB8maB/5FoN Ufise4z++tKoIqsYD+NpndU4XVQW16kmIzLpHfMFp7QW+DDr87IQr2+epY4USPpQPp4fijH12Nb 1mhxBeeCnrK7F/d54Bm0Wx84IRhLSbvfrRiN1Gnn85cGr/Oivk+ERhEWDmnCFdi5xydfjDNZvQs 5HPVDod+I3iUPxioxCZ1WHcxLMPAg4pOIU+uPqPsYCt2stsNLs0YN9+ZzaRV8jA0E987psbyhDm ZJgRjEnaDiEHy6uHVWFEBP1UCZytGylo6fmdKBts0UPFds430fWgSBH4/gI9fWK4bF/tYiQP8c3 4v+FzU3WurfMeldxlUvSOQHwoO8lk0cxnzQAaJsM+DnvDw0Vl4J4r0P7hfQejfD2J+0nEl4mvJm s8C3An+QuVay4mHFoasK8p2QpXLQ== X-Google-Smtp-Source: AGHT+IHKXq8x9elSCjEHks4N7hQUevj8WxDVP5HKi9llAEtlIQFfHNb05BLq+B1Nz6uA8fi9DHZiww== X-Received: by 2002:a05:7022:671f:b0:119:e56b:91f2 with SMTP id a92af1059eb24-11c9d870411mr17436186c88.35.1764318798796; Fri, 28 Nov 2025 00:33:18 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.33.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:33:18 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 08/12] block: Replace the repetitive bio chaining code patterns Date: Fri, 28 Nov 2025 16:32:15 +0800 Message-Id: <20251128083219.2332407-9-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Replace duplicate bio chaining logic with the common bio_chain_and_submit helper function. Signed-off-by: Shida Zhang --- fs/squashfs/block.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fs/squashfs/block.c b/fs/squashfs/block.c index a05e3793f93..5818e473255 100644 --- a/fs/squashfs/block.c +++ b/fs/squashfs/block.c @@ -126,8 +126,7 @@ static int squashfs_bio_read_cached(struct bio *fullbio, if (bio) { bio_trim(bio, start_idx * PAGE_SECTORS, (end_idx - start_idx) * PAGE_SECTORS); - bio_chain(bio, new); - submit_bio(bio); + bio_chain_and_submit(bio, new); } =20 bio =3D new; --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pg1-f171.google.com (mail-pg1-f171.google.com [209.85.215.171]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 200252E7F0B for ; Fri, 28 Nov 2025 08:33:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318806; cv=none; b=M4AAWOKt6Ucg/rfnfjdJD4iXm0Joyr4z9N8PioAICtDdj7qph76o0/i/565d3/DL1/x33lxUC41wZNc2drA2E7l8IdE4FA2FzcMUICfFrFqgh2NIFMM64JlXMhzzzNwV/iZiWLZirJDtg+qy4FBDNpXIN4aHFyPc/QI+YYHJeOM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318806; c=relaxed/simple; bh=FvdW5UGbfZbg4/JUFTbGCNNccxPDUjVX1PnGr5SdWKY=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Y0OpKWo1PR15f/I9qIOYGdrcMOspWpD/wQ5JrzXTl0FQmjz/YffV5zkYyw9LQqmAIJfdpjNSI159dT1KvHSFAlLhggtdiZtUHDKV5gHnibb4iuRa7gtcGI4l66VPbudonLmk6pfIAG1gkWcChkCB8vqSkxCcy3lPH+zNTF8kuRI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=j6Xjpoll; arc=none smtp.client-ip=209.85.215.171 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="j6Xjpoll" Received: by mail-pg1-f171.google.com with SMTP id 41be03b00d2f7-bb2447d11ceso970094a12.0 for ; Fri, 28 Nov 2025 00:33:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318803; x=1764923603; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=fqwLZMa4ASc5Rs++C65X8rlK3EmN43I2MLDa5i9050U=; b=j6XjpollDF9Iut3S1/uQErW/2sxW+N8CcUuDQzoQmuMybl717nTrXj6cfh71xPIO1w cGg8gj6xtBy2Ha1Ja4mMXDmjmI7QzWx9DM8uwwKGdOHgnR0FX74S3KCkjjWoKza/s5/p HpFHgxXY2jPJW0EPQL5Uq2BqUB62xBYhJ7bT6voop8KXn8iT4Q9H95YS0g5VyWeYL5VU sHSMB4UDkm0SEwN8SZoAptZVrTACvmWXwzyOUb8r2sITYgQQXgy15E+fR5gP/fsgWg7t 2zITSEaQcTvwmuF04dJhuLJC2Qralkm5ouuqwz4FN6aTisgmPHPNHCtNwaAoytwmClQg Z2/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318803; x=1764923603; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=fqwLZMa4ASc5Rs++C65X8rlK3EmN43I2MLDa5i9050U=; b=SEnpyuLy1ROh/4M+R11+tvBeiz3lT/kq0+0YnXpjOlrzd5uhzagHXr/zYevZ9s4X7/ cN5/g4+cXP+kI8C+1JRKfDe2rV50IyKfUtmkuJ9KnhbkNt9ih80CRjuov4kTWa8QO585 gIFC1Pj+bYneo5LEiNdoelQYHajFw/e7GNYwfmxY8U3Wn3gu3eNBZaa6EQ+elJ1lR2g2 YSLmqKrGXQNoexr1QRZ4ViCRXF3ugy6lVI6Mngqa/Az8qB3a46AkTEFr0+iq4MgpT65R 4vD8NoDbXccB1MyT6QZloL/T+0ZQ6LDLKlPf+MOHUerFG5DLtfZ0PPAn+ZUQHE3dbASI ZmXA== X-Forwarded-Encrypted: i=1; AJvYcCXpzzjc6a1OyjCQ6vY5rXQMRA6DsUKGnBXygMV0OY5wCZ50giwjcirhzuzNyps0gHb93EFBvA1gfjgNxwg=@vger.kernel.org X-Gm-Message-State: AOJu0Yxd2TDN94C7kgzLokGmkDgnsJ7OkwBh+3cX4YARokYlEU2ZNMT+ 4J2P60Cc7NKkvRbFr8FDevIxT6a8wknndiSuupemAoPBaKdRr/6sCVqn X-Gm-Gg: ASbGncs8v7NZsQ/GjXmmJr1mZnYfepVwi89hIPUj2l5bE3RP/5sXOz1ZHktE+ZBaxgX 0Xn2kAEBsXDF2zZo2xuxrTtb7ruLKQzreBgrkztUtxdtBGzTt2wPJ5bB3uSEHibvH8I29CLltGi VedpxJxBDhhbGIJ6dJpdchPd01qCecHDbexlJxeaHpJM/5Iu1zLAAhLfAmdFr2WS9fk9dfVdHp3 7cRlp18JXi6DbC91oUoo5ANacIeOOJYaFdyofP+F5636qqdv58C96h3C3S6QDptAVH8lw2uvPnk yaGcc6peG9RyhZQOBt12leuRD5ukdqMxzy5vXrgDdYXF8k/jfF0IjZXLRqTL3bZb3d66LJ7+Ff5 ExeJDbiNxj9+mz93O0kKxAx5fiNm32ExxjZY9nZ+8U8KK1n+qJVtPWssdPjIHK3ziXawVT2360Z 7t3Xtqkcg1BGoDK6HkAwLbwdQHyQ== X-Google-Smtp-Source: AGHT+IHfWqQfXtBplCGUlpvV4df9l3L0Dj70ayVkP4asUXlu5VvYmL6fwPY6gq5t6aD4a2b+6FhgOg== X-Received: by 2002:a05:7022:2487:b0:119:e56b:98a1 with SMTP id a92af1059eb24-11cb3ecc3f2mr9865235c88.8.1764318803303; Fri, 28 Nov 2025 00:33:23 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.33.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:33:23 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 09/12] fs/ntfs3: Replace the repetitive bio chaining code patterns Date: Fri, 28 Nov 2025 16:32:16 +0800 Message-Id: <20251128083219.2332407-10-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Replace duplicate bio chaining logic with the common bio_chain_and_submit helper function. Signed-off-by: Shida Zhang --- fs/ntfs3/fsntfs.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/fs/ntfs3/fsntfs.c b/fs/ntfs3/fsntfs.c index c7a2f191254..35685ee4ed2 100644 --- a/fs/ntfs3/fsntfs.c +++ b/fs/ntfs3/fsntfs.c @@ -1514,11 +1514,7 @@ int ntfs_bio_pages(struct ntfs_sb_info *sbi, const s= truct runs_tree *run, len =3D ((u64)clen << cluster_bits) - off; new_bio: new =3D bio_alloc(bdev, nr_pages - page_idx, op, GFP_NOFS); - if (bio) { - bio_chain(bio, new); - submit_bio(bio); - } - bio =3D new; + bio =3D bio_chain_and_submit(bio, new); bio->bi_iter.bi_sector =3D lbo >> 9; =20 while (len) { @@ -1611,11 +1607,7 @@ int ntfs_bio_fill_1(struct ntfs_sb_info *sbi, const = struct runs_tree *run) len =3D (u64)clen << cluster_bits; new_bio: new =3D bio_alloc(bdev, BIO_MAX_VECS, REQ_OP_WRITE, GFP_NOFS); - if (bio) { - bio_chain(bio, new); - submit_bio(bio); - } - bio =3D new; + bio =3D bio_chain_and_submit(bio, new); bio->bi_iter.bi_sector =3D lbo >> 9; =20 for (;;) { --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pg1-f178.google.com (mail-pg1-f178.google.com [209.85.215.178]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 18FF32FE07E for ; Fri, 28 Nov 2025 08:33:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.178 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318812; cv=none; b=AGYWxpuTiujzUxk6gucFZwIYXD98RutPOLaeGj8wJMSzVcwz1+2luSRgoMmu4LBZxeKtCfxmHASF8kdEM/8vjZ8dRiX9BFjHACAo7Am4ExhHF5UT2dsqrMCVKO5TkAnHEFfbm/HW2KqEEfC1zwey6JmFC1JPTaTAA9c30V4+vdY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318812; c=relaxed/simple; bh=TbxNohFMmSKnHTWH+mnyMfPFRdWdcWW/LS3/VsufZdc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=N/YEf7GkGfrwDMgxq4YaL0Mp6fhqfMtP5V7MpTyEyTYTOb7bFbGe9DJYPKbTdj6j0zA8T/WSnCI9l84mi/Xx5WuiL4OyenKoG7SikrWQLal4tcoJFN6wwlpXMsgTP1w8DZmEPNtLeUwh4zy5tYxlw3Zu7Xob7O7U3TPC2H9uU7Y= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=AjmpIAyJ; arc=none smtp.client-ip=209.85.215.178 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="AjmpIAyJ" Received: by mail-pg1-f178.google.com with SMTP id 41be03b00d2f7-b6ce6d1d3dcso1459041a12.3 for ; Fri, 28 Nov 2025 00:33:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318808; x=1764923608; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jJti1W24hnwF4OFg7cS4jWnw0eZv9xglyyGrmFluATQ=; b=AjmpIAyJf6JuyIrhAGiNid6XUAa4g4RrZwnHclHp/pVWuzH1VLVvZppOCoNcecZmRJ TsroiT53VAQOILzAKA/KT9wWusG74M9XHGbLDWt9nWP5Ig7woXGHCDNlIisELR81PsjM Gj1gSPdcetRXXQOL5NzyCj2+NiUSYFYbhosk8SNnwkX1mSVNFWcpBxxhZDts2K+D6eiy qBcXBeSo4t2Bb2D74uAI9RGN+1hwtAaIr89QCc9QNUnf5EF1ZsEJCCrBHz98uJ9cM/qA YaESTKuRxQR7U4wZ/SDPPSNnnICcG0SsaBX0ZTDgsGddCJFYqBHmxOsLbs3KuYOtZYGx rQ/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318808; x=1764923608; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=jJti1W24hnwF4OFg7cS4jWnw0eZv9xglyyGrmFluATQ=; b=duxs9kQ2bOJVPevZcFRdSWSEqsxixnhP35ziWl91k/fJfHa409XqVgbS/MXKGEvxuw RZ4bAi5Xt3jKMugGy1ootG6Y63bFkUF9NBV42Z4IKKUlB7wyFsz1MBNdxb6ciEWWwisU gqFy0Bd4NvGruy3n9GR5QHbdF70WiKQZvuo+khOokoJ5DRpBBW/Pa/M8tngrlraeC5Dq hVeqLz+bYc7TSvFYLq5zoZq+e7+8HU7qC8S4cylt7JJwvE8rxg5b+BUJ4baLuiag4dUO UpyNE5JvyaXSFHH8jzHBwI8jn2IsCCOEJvWWwANgWKwK1hpshDS+9U/IF6ZzdIr8npwX qyNA== X-Forwarded-Encrypted: i=1; AJvYcCXbjkipSJ2DAkNCVdgZG/5z5K7cITBYEInakHYgZ+zkHb4raVRCO/+BTGEfxzcPPbsbvr//8WM07rpS364=@vger.kernel.org X-Gm-Message-State: AOJu0Yx37pWFeXrwGhdzbWFVFMpddfuX4zHRW/z0uOeTwcqx4XOW3BtL jI4u7J82pTbzkofiHpoe6MSAME0z7o3YmmjcWWAKCZGPxmsJZr8N6Reg X-Gm-Gg: ASbGncuNu2CTkaXxh3/v3Qk0L3M+a5ncKwac5RCGOymWNR5TD+c2r6AAmEZpmi2grez Cv5yGODiOlA76nMcDO7mR34NLTmzhh71novAteH8PGmYBb3TM48uf1yyvKo7UjS4XKLmV5TGUso 122ALC9hnHheCE9hpRaasLhqVrkZ/MjvZMgwGltI3lV/zpPa6XfrY7mqVrqrUr90L7DwZrPR4LM J3n64PlTqxSsL1UIBD4PXZDYCtxGx9t+AhoG1gZ3YA79zM+H3e5kGkOHAwDvC0VlzEQ3jdvBt1T DIFU5Cf/NzWDdnU4VjlW6984KWwWTVVRe+O/rOdi5X9RnyQTeN2udj2EppepUI+8MJ1lEncl3hA orCwXsoNOF2Ef4dmh6VPCvvs+0/2f3Zlez5gVISCfo9TfBHq4dWeV8ZYeGmvQKGqcaJjdvEvQrv z/kdjBIG5BejPYWg+dbPSIvm0BrZZCZ1C3mluQ X-Google-Smtp-Source: AGHT+IHDsMToqUoj0PcNSA32TYDuHE8zhBuDir1BrYt+w5Y/wAZYCWlUzMNg1Dgih3T9wVkLcbd8Tg== X-Received: by 2002:a05:693c:2488:b0:2a4:3593:6464 with SMTP id 5a478bee46e88-2a71929687fmr16240699eec.20.1764318807899; Fri, 28 Nov 2025 00:33:27 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.33.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:33:27 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 10/12] zram: Replace the repetitive bio chaining code patterns Date: Fri, 28 Nov 2025 16:32:17 +0800 Message-Id: <20251128083219.2332407-11-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Replace duplicate bio chaining logic with the common bio_chain_and_submit helper function. Signed-off-by: Shida Zhang --- drivers/block/zram/zram_drv.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c index a4307465753..084de60ebaf 100644 --- a/drivers/block/zram/zram_drv.c +++ b/drivers/block/zram/zram_drv.c @@ -730,8 +730,7 @@ static void read_from_bdev_async(struct zram *zram, str= uct page *page, bio =3D bio_alloc(zram->bdev, 1, parent->bi_opf, GFP_NOIO); bio->bi_iter.bi_sector =3D entry * (PAGE_SIZE >> 9); __bio_add_page(bio, page, PAGE_SIZE, 0); - bio_chain(bio, parent); - submit_bio(bio); + bio_chain_and_submit(bio, parent); } =20 static int zram_writeback_slots(struct zram *zram, struct zram_pp_ctl *ctl) --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pf1-f177.google.com (mail-pf1-f177.google.com [209.85.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C78FD2EC086 for ; Fri, 28 Nov 2025 08:33:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318817; cv=none; b=CV5wdigvy2MT21Gx+GAUt3dL4VoAJUGU41vIlNUFfS0/chqfJIOUGFfvCETRqtWGr1SDVLFzVz7BfoJEcoF5j+U4p6GbIIFP2rnNVeK2dIYjOoiVpktChLXjYHRQngu9Ij73SdNC8qgo8gEOhfD3g7ZwA3u1ieHeBfu5iM3GkTY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318817; c=relaxed/simple; bh=MIUxfeIlXsLJb7D1x07khmxiQaV6FMQZLzsNI6cDMOY=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=cygI5R3EtucQyff1lC+qu35EBATopFKqFaIVGafRLx+q4Co6/h+LTVS1rNBsPdDGoql969hOxYCrcTNaz8UB2pDwCivssnAVRbJnhgeRO31e0X6xSV5NW9IlXXCnKlLtlYkQfGouBNFSYmctqwC3FIvdDaXy5tjqCzU6KaQ3yAI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=EPebDMuF; arc=none smtp.client-ip=209.85.210.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="EPebDMuF" Received: by mail-pf1-f177.google.com with SMTP id d2e1a72fcca58-7b8bbf16b71so2014976b3a.2 for ; Fri, 28 Nov 2025 00:33:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318813; x=1764923613; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rZsPDOjyUTRUehf6LhbOb026Dy93eapwVzPzgOc2prg=; b=EPebDMuF2YtiYM5kWUognxF1g/WoiT8JY4hRj+UZWVAgcw0ZBaHphOeRh69Nohxc8i TyzMJr+38d0Tl2NsNJOhzXHIkFZGFHbugNjrpwwKUwcZt/cC5mIceCQPGoJe+AOIno6O Zi0P0ckYCidr4AYY88DJy66bFtSFswpp4MYtYcik8TkCJ0ii1nfBS6GYTIoQ2tFugh95 t/d73wR2vgsVU69F+rbxseA1CgyjXU8hLdFy2frc2xvhc53gQa3EIN51+SUuq4MVp4la lIfvjkONj3NgGeL3Y8OOOMLPCvQjce9jSxDFV9zb3Z8iBoPDqRhcCx1pf3xMxwRHxNoK ohLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318813; x=1764923613; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=rZsPDOjyUTRUehf6LhbOb026Dy93eapwVzPzgOc2prg=; b=XM8STO89wRMtP/oScAUBxcgaSgOx73duwSpvuqNeRDkjpeceKwB0YrY7SIfltA+TwV XTB8rndGuHBhAJhPomxQL+lfVzpa8eRMeYAoviqMXxjYvKWBps8ka3oeuIf3IAj6Lfli wtgj6dyW+7AAIRztVp8vqDNYz1YZLfZmr+Xege+klp1NFjf25IucYejZyPuCCbSlshX+ zEkNkdIEAKxndwCALiZWAU7EpD8yCj8UxaqmBMd43QTzuPacYgMffZJSowCOy7OBTXoS 4OyUWKgK4SYlDBs3K5aC+GgVk7nkooPZ9DG4o+8UsP0KK1vamcdaJoxlm/E45OEdB4gT Vvpg== X-Forwarded-Encrypted: i=1; AJvYcCWzv6iHvT6rjbIbbLZO6ze03nzoZ0czJAlp4skvAD8c6drhXx/Y+DmUcd+72zzze5Pt8p3EiLP1/kB1OwM=@vger.kernel.org X-Gm-Message-State: AOJu0YySzcMyLfRLAdmdwFhcgw0UPevZ3+bXDzycO4MG/RvhffxYA4bk txl5Q5JjAGzBWz5PEzRiS8RQLogRMHy6qH2/xGxqjifXGI+8CjKxp/au X-Gm-Gg: ASbGncvTUwBObIlb+hBcADBumzG6RDDtOBXjltA9GZGzqvgOPdbdkT2hfbJ1JryUue1 aEQUHYQ/fQziU5hai2ySMP1sDcI6Kt09tWj2jncZb092e0xApwSfRTrUJ+dz0rLamXaOor1tWJA j/XHxfoAd/kmtq4mjyjhOkjAJkYFhzBX9MAh41Qs11Abxj6SnMqGsbr4uxWtnZhTZyCF45RT9BQ 5VBAJSAQnxm1C/0rlAB3XuJqnORRiNjkUoeScKa+hwy3xXEI8BwaViMW14G542ZxzSKET3pdpJr ciU/WGP2eDje1XUYhcDBzalupT0argEvF8AnP/ZXMnhm3U7wbNJWRfphu4zVCzztK2uZgTBBvd/ vEMsRF04q0SZHYw+AVXVrsjCnzRhOLxQ5DkI3U5Clj5xVFo0temaXuN2ofzBQ1mYeAMiEvvQKCx w7PLJmbqwhIYucVC6WR9sjP+Ef+X/K42aL/b3E X-Google-Smtp-Source: AGHT+IHqHdLof6s224+GbtnJAk22/n625R68t5gW5XXJrnH8NN05gDy1A3OVkHY/4+FwyWeG7e9t0g== X-Received: by 2002:a05:7022:3886:b0:11b:9386:a3c8 with SMTP id a92af1059eb24-11c9d867ff0mr21572562c88.41.1764318813388; Fri, 28 Nov 2025 00:33:33 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.33.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:33:33 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 11/12] nvdimm: Replace the repetitive bio chaining code patterns Date: Fri, 28 Nov 2025 16:32:18 +0800 Message-Id: <20251128083219.2332407-12-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Replace duplicate bio chaining logic with the common bio_chain_and_submit helper function. Signed-off-by: Shida Zhang --- drivers/nvdimm/nd_virtio.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/nvdimm/nd_virtio.c b/drivers/nvdimm/nd_virtio.c index c3f07be4aa2..e6ec7ceee9b 100644 --- a/drivers/nvdimm/nd_virtio.c +++ b/drivers/nvdimm/nd_virtio.c @@ -122,8 +122,7 @@ int async_pmem_flush(struct nd_region *nd_region, struc= t bio *bio) return -ENOMEM; bio_clone_blkg_association(child, bio); child->bi_iter.bi_sector =3D -1; - bio_chain(child, bio); - submit_bio(child); + bio_chain_and_submit(child, bio); return 0; } if (virtio_pmem_flush(nd_region)) --=20 2.34.1 From nobody Mon Feb 9 09:07:56 2026 Received: from mail-pg1-f170.google.com (mail-pg1-f170.google.com [209.85.215.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5E6862FF64D for ; Fri, 28 Nov 2025 08:33:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.170 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318822; cv=none; b=a3BQUXejYlpjfATDGITnDBnw+XHGabsiONpjsU5OZiYqlnP0wNpCyu45vy266KW1THEacGmxH4OmlKtBuIQjCxbcIecD5ubTcjwuvt5i8DVTIXOvDLt3791mofchhTZA/s0ni12LF9ES3iIcFUJ1bggg/OyXV6GNnRUsNwj1Jwg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764318822; c=relaxed/simple; bh=HTuaf3JKiz2KHLk/jbQPL7NkOb05byK6j+tq4J3zrGM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=aBiihAcfhLmzgWe0CagzjiUuccsjqQPGrWqYShrz9BeTjDsHwyDwHenyHO72Udnc0EByjLcdDGOA8PSLuL6gyGdQi35HVRRKjMj+x1ZT0bRhoYZdDE2M424LCTcWjEWHhAh46bBOdu4g9+dWk1duP2l8DuBDJ7C+0mThB1WduzQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=iTjE6bRE; arc=none smtp.client-ip=209.85.215.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="iTjE6bRE" Received: by mail-pg1-f170.google.com with SMTP id 41be03b00d2f7-bc29d64b39dso1002930a12.3 for ; Fri, 28 Nov 2025 00:33:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764318818; x=1764923618; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=9JuZTiXTtCfnBMrxTr4djU8x13PVqvGl4QPuQVkzEeA=; b=iTjE6bREmVJASqSDl8EFaPBpPk/0T4H/LQbXF3pe7HyptW+mMYa99/LJ8ElLXOMM3F Sd1Bb+StN9LTrgQtOJzA6Z8y5oi6xmzg45HAPvfnFx+7OKFhMyj44RqbRm9UkKJoweJy bsF1I7MI7UIuCSy11JPccmNBjPR82TIbC3pVXwWKyyzcaAMz9jRUxwSAU9z/POeNlFWI EMtBGBCOQdRelgl/DqzIfbJRW4w0G8qWR76cpDznOwZD2usTxkCnrWWfCkyCLcI3LbJb jI0DV8r8w2K4Q06tnvQKwq4aJEa4N6MXeLCER59iAVqSwHrVlaUpfJsJSLc2Ihsc9loy ramQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764318818; x=1764923618; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=9JuZTiXTtCfnBMrxTr4djU8x13PVqvGl4QPuQVkzEeA=; b=IcV9wNA+qshQwT1amVEY0gM6/i95kI2g8FEB4TD36sqzMb13jcb2IRGEdvHUAjBP6B 0kTfrXsbWQq98EBnDO6zC8iSJbGp0mokettNsO1q8tF3zslJV2knGedxr6j3cqeZnVqi syA7ZPdg8dBO2mLtw8cWH3PLyfbQzRHm1AcMUR2YUedDomNf4gA6mAKX9wx/Cn1XLSND BEe91hS5A9qngt6GbdpabH1CHOLQwQhXYQQxJ42gju1JHJo7n885/ram8K4WAlaHBHbf 6avlw1yI9KT+97qXplGj667D24coymNKmwrwhacbdfw8lLoSFDapwBZY6ne/BUHvsaiY bqjA== X-Forwarded-Encrypted: i=1; AJvYcCXDcIkAvEfxCHvgoEGtXM/N3mJUcjMFmo2c5hnWRuEv6lUBNKbM5QCVlKeYNxDW4w+ugWrmEbj0hK2cCho=@vger.kernel.org X-Gm-Message-State: AOJu0YyzxS7fbVhwoZPaO39yFHA4xC/gqG6flhZovT0eRI87C600xFcP M27ah+j7RdVwNL7ttJ6yRkjjwkq4FuPrbTJ45bPNaNhUmdBOZbkb2jeQ X-Gm-Gg: ASbGnctcn6sSdnOjjjyyQBuJ01goyoUbEsdBIUFYBpSiNd9n+txLo9Y7ABeCSfPO3uA 9jvOosf4LM9KN3DRDfBZ3boPv9p/QA1cViWFyGxvg9sy5il+98LBI/3B+gfsWhbu1CLaoQ7pPnm ntKz36JWWR8lWu3dPA+atAreJPzpf2qeoM+cON3EBPdZsbjsSO/QYlOzPNIzEiqnE1yExri0yGr /IUzGrmwJABTSE9Kwal8UPb6A4a5pce35D7EFWB+ofOILFv5PWhO0o8iPid9TBq1an8asU73sjX YKH7XFK+y/wPByHFda5g7LlvyHy4+iGEra2KdI6CP9RVbd+6yKjIaqnqNKDh4OfB++014hUxvEO 5KT3eugXAXN6MbOqIlz1l0k2JiKaMFkjQej5QvulW8apcYm5Ig048tO54+5LJxN65gaaPgCqJ7B bY3tXFX8yHlI4siurkm5WMSUcavA== X-Google-Smtp-Source: AGHT+IEiYKFOm1UmbHzu9Io+L0ipF/pftCo6ih2XEqCkxPLrZNrFMt6HrxgMvpe9BJ/P01XRe5CPUg== X-Received: by 2002:a05:7301:162a:b0:2a4:3593:ddd7 with SMTP id 5a478bee46e88-2a71953bfaamr12018765eec.4.1764318818087; Fri, 28 Nov 2025 00:33:38 -0800 (PST) Received: from localhost.localdomain ([104.128.72.44]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-11dcaed5f6bsm20941371c88.1.2025.11.28.00.33.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Nov 2025 00:33:37 -0800 (PST) From: zhangshida X-Google-Original-From: zhangshida To: Johannes.Thumshirn@wdc.com, hch@infradead.org, gruenba@redhat.com, ming.lei@redhat.com, siangkao@linux.alibaba.com Cc: linux-block@vger.kernel.org, linux-bcache@vger.kernel.org, nvdimm@lists.linux.dev, virtualization@lists.linux.dev, linux-nvme@lists.infradead.org, gfs2@lists.linux.dev, ntfs3@lists.linux.dev, linux-xfs@vger.kernel.org, linux-kernel@vger.kernel.org, zhangshida@kylinos.cn, starzhangzsd@gmail.com Subject: [PATCH v2 12/12] nvmet: use bio_chain_and_submit to simplify bio chaining Date: Fri, 28 Nov 2025 16:32:19 +0800 Message-Id: <20251128083219.2332407-13-zhangshida@kylinos.cn> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20251128083219.2332407-1-zhangshida@kylinos.cn> References: <20251128083219.2332407-1-zhangshida@kylinos.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shida Zhang Replace repetitive bio chaining patterns with bio_chain_and_submit. Note that while the parameter order (prev vs new) differs from the original code, the chaining order does not affect bio chain functionality. Signed-off-by: Shida Zhang Acked-by: Sagi Grimberg --- drivers/nvme/target/io-cmd-bdev.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/nvme/target/io-cmd-bdev.c b/drivers/nvme/target/io-cmd= -bdev.c index 8d246b8ca60..4af45659bd2 100644 --- a/drivers/nvme/target/io-cmd-bdev.c +++ b/drivers/nvme/target/io-cmd-bdev.c @@ -312,8 +312,7 @@ static void nvmet_bdev_execute_rw(struct nvmet_req *req) opf, GFP_KERNEL); bio->bi_iter.bi_sector =3D sector; =20 - bio_chain(bio, prev); - submit_bio(prev); + bio_chain_and_submit(prev, bio); } =20 sector +=3D sg->length >> 9; --=20 2.34.1