On Tue, Mar 21, 2023 at 07:03:07AM +0100, Christoph Hellwig wrote: > > + if (current->bio_list) { > > + /* > > + * The caller will submit the first half ('split') > > + * before the second half ('bio'). > > + */ > > + bio_chain(split, bio); > > + submit_bio_noacct(bio); > > + return split; > > + } > > + /* > > + * Submit the first half ('split') let the caller submit the > > + * second half ('bio'). > > + */ > > + *nr_segs = bio_chain_nr_segments(bio, lim); > > + bio_chain(split, bio); > > + submit_bio_noacct(split); > > I'm really confused on why you want to change the behavior here > for the case where run in a stacking context vs not, and neither > the comments nor the commit log help me trying to figure out why. In fact I wonder how you managed to get into __bio_split_to_limits wtih a NULL current->bio_list at all.