On Wed, Apr 03, 2024 at 09:06:12AM +0200, Hannes Reinecke wrote: >> + lim->virt_boundary_mask = mr_nvme_pg_size - 1; >> blk_queue_flag_set(QUEUE_FLAG_NOMERGES, sdev->request_queue); >> - blk_queue_virt_boundary(sdev->request_queue, mr_nvme_pg_size - 1); >> } > That now looks odd. > We're taking great pains to have everything in queue_limits and avoid > having to use the request_queue directly, yet this one call we're missing. > Wouldn't it make sense to move that into queue_limits, too? The queue flags are in the queue, so there is no way to set them through the limits. I plan to eventually split out actual features and move them to the limits from the blk-mq internal state flags. That being said QUEUE_FLAG_NOMERGES is a really weird one and drivers shouldn't really be messing with it at all..