bitnr += tags->nr_reserved_tags;
        rq = tags->rqs[bitnr];
 
-       if (rq->q == hctx->queue)
+       /*
+        * We can hit rq == NULL here, because the tagging functions
+        * test and set the bit before assining ->rqs[].
+        */
+       if (rq && rq->q == hctx->queue)
                iter_data->fn(hctx, rq, iter_data->data, reserved);
        return true;
 }
 
        if (!reserved)
                bitnr += tags->nr_reserved_tags;
+
+       /*
+        * We can hit rq == NULL here, because the tagging functions
+        * test and set the bit before assining ->rqs[].
+        */
        rq = tags->rqs[bitnr];
+       if (rq)
+               iter_data->fn(rq, iter_data->data, reserved);
 
-       iter_data->fn(rq, iter_data->data, reserved);
        return true;
 }