> deadline_add_rq_rb(struct dd_per_prio *per_prio, struct request *rq) > { > struct rb_root *root = deadline_rb_root(per_prio, rq); > + struct request **next_rq __maybe_unused; > > elv_rb_add(root, rq); > +#ifdef CONFIG_BLK_DEV_ZONED > + next_rq = &per_prio->next_rq[rq_data_dir(rq)]; > + if (*next_rq == NULL || !blk_queue_is_zoned(rq->q)) > + return; > + /* > + * If a request got requeued or requests have been submitted out of > + * order, make sure that per zone the request with the lowest LBA is > + * submitted first. > + */ > + if (blk_rq_pos(rq) < blk_rq_pos(*next_rq) && > + blk_rq_zone_no(rq) == blk_rq_zone_no(*next_rq)) > + *next_rq = rq; > +#endif Please key move this into a helper only called when blk_queue_is_zoned is true.