Re: [PATCH v4 2/3] block: prohibit calls to bio_chain_endio
Stephen Zhang <[email protected]> Thu, 4 Dec 2025 09:17:58 +0800
| Newsgroups | org.kernel.vger.linux-bcache,org.kernel.vger.linux-block,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <CANubcdVXUS_i79=1Zx5R7cGC7JwHrUXRCZoQ0kes7gdZUTW0Dg@mail.gmail.com> |
Andreas Gruenbacher <[email protected]> 于2025年12月1日周一 17:34写道: > > On Mon, Dec 1, 2025 at 10:05 AM zhangshida <[email protected]> wrote: > > From: Shida Zhang <[email protected]> > > > > Now that all potential callers of bio_chain_endio have been > > eliminated, completely prohibit any future calls to this function. > > > > Suggested-by: Ming Lei <[email protected]> > > Suggested-by: Andreas Gruenbacher <[email protected]> > > Suggested-by: Christoph Hellwig <[email protected]> > > Reviewed-by: Christoph Hellwig <[email protected]> > > Signed-off-by: Shida Zhang <[email protected]> > > --- > > block/bio.c | 6 +++++- > > 1 file changed, 5 insertions(+), 1 deletion(-) > > > > diff --git a/block/bio.c b/block/bio.c > > index b3a79285c27..1b5e4577f4c 100644 > > --- a/block/bio.c > > +++ b/block/bio.c > > @@ -320,9 +320,13 @@ static struct bio *__bio_chain_endio(struct bio *bio) > > return parent; > > } > > > > +/** > > + * 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) > > { > > - bio_endio(__bio_chain_endio(bio)); > > + BUG_ON(1); > > Just 'BUG()'. > Yeah, that’s much clearer now. I'll resend the updated version. Thanks, Shida > > } > > > > /** > > > -- > > 2.34.1 > > > > Andreas >