On Mon, Apr 10, 2023 at 10:09:40AM -0700, Bart Van Assche wrote: > The code for deciding whether or not to use head insertion is spread all > over the block layer. I prefer a single additional check to disable head > insertion instead of modifying all the code that decides whether or not to > use head-insertion. Additionally, the call to blk_rq_is_seq_zoned_write() > would remain if the decision whether or not to use head insertion is moved > into the callers of elevator_type.insert_request. I think it's time to do a proper audit and sort this out. at_head insertations make absolute sense for certain passthrough commands, so the path in from blk_execute_rq/blk_execute_rq_nowait is fine, and it should always be passed on, even for zoned devices. For everything else head insertations looks very questionable and I think we need to go through them and figure out if any of them should be kept.