summaryrefslogtreecommitdiffstats
path: root/sys/dev/nvme/nvme_qpair.c
diff options
context:
space:
mode:
authorjimharris <jimharris@FreeBSD.org>2013-04-01 16:23:34 +0000
committerjimharris <jimharris@FreeBSD.org>2013-04-01 16:23:34 +0000
commitc4799f93b1f433fa89bc025d115ebfab7642becc (patch)
tree6193d8fa376e042d95c0425e902862feeab0da0c /sys/dev/nvme/nvme_qpair.c
parentba76652a6fffac982314a5d34e37ca4f1ff381b1 (diff)
downloadFreeBSD-src-c4799f93b1f433fa89bc025d115ebfab7642becc.zip
FreeBSD-src-c4799f93b1f433fa89bc025d115ebfab7642becc.tar.gz
Add unmapped bio support to nvme(4) and nvd(4).
Sponsored by: Intel
Diffstat (limited to 'sys/dev/nvme/nvme_qpair.c')
-rw-r--r--sys/dev/nvme/nvme_qpair.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/dev/nvme/nvme_qpair.c b/sys/dev/nvme/nvme_qpair.c
index 62a2277..aa9f77b 100644
--- a/sys/dev/nvme/nvme_qpair.c
+++ b/sys/dev/nvme/nvme_qpair.c
@@ -757,6 +757,14 @@ _nvme_qpair_submit_request(struct nvme_qpair *qpair, struct nvme_request *req)
if (err != 0)
panic("bus_dmamap_load_uio returned non-zero!\n");
break;
+#ifdef NVME_UNMAPPED_BIO_SUPPORT
+ case NVME_REQUEST_BIO:
+ err = bus_dmamap_load_bio(tr->qpair->dma_tag,
+ tr->payload_dma_map, req->u.bio, nvme_payload_map, tr, 0);
+ if (err != 0)
+ panic("bus_dmamap_load_bio returned non-zero!\n");
+ break;
+#endif
default:
panic("unknown nvme request type 0x%x\n", req->type);
break;
OpenPOWER on IntegriCloud