On 1/26/24 01:50, Damien Le Moal wrote:
The function null_submit_bio() used for null_blk devices configured with a BIO-based queue never splits BIOs according to the queue limits set with the various module and configfs parameters that the user can specify. Add a call to bio_split_to_limits() to correctly handle large BIOs that need splitting. Doing so also fixes issues with zoned devices as a large BIO may cross over a zone boundary, which breaks null_blk zone emulation.
That feels so wrong. Why would we need to apply queue limits to a bio? (Yes, I know why. We still shouldn't be doing it.) Maybe indeed time to kill the bio-based path. But until that happens: Reviewed-by: Hannes Reinecke <hare@xxxxxxx> Cheers, Hannes -- Dr. Hannes Reinecke Kernel Storage Architect hare@xxxxxxx +49 911 74053 688 SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg HRB 36809 (AG Nürnberg), GF: Ivo Totev, Andrew McDonald, Werner Knoblich