unsigned long align = q->dma_pad_mask | queue_dma_alignment(q);
struct bio *bio = NULL;
struct iov_iter i;
- int ret;
+ int ret = -EINVAL;
+
+ if (!iter_is_iovec(iter))
+ goto fail;
if (map_data)
copy = true;
unmap_rq:
__blk_rq_unmap_user(bio);
+fail:
rq->bio = NULL;
- return -EINVAL;
+ return ret;
}
EXPORT_SYMBOL(blk_rq_map_user_iov);