diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-09-03 14:21:14 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-11-13 13:22:10 +0100 |
commit | da6b9a1891abffa328f44e87443c97f1ed0721ee (patch) | |
tree | 4398a05b779639d1242a49cd4188faedf29cdf53 /freebsd/sys/dev/nvme/nvme_ctrlr.c | |
parent | NVME(4): Add build module (diff) | |
download | rtems-libbsd-da6b9a1891abffa328f44e87443c97f1ed0721ee.tar.bz2 |
NVME(4): Port to RTEMS
Update #3821.
Diffstat (limited to 'freebsd/sys/dev/nvme/nvme_ctrlr.c')
-rw-r--r-- | freebsd/sys/dev/nvme/nvme_ctrlr.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/freebsd/sys/dev/nvme/nvme_ctrlr.c b/freebsd/sys/dev/nvme/nvme_ctrlr.c index e05cd961..4e6e9320 100644 --- a/freebsd/sys/dev/nvme/nvme_ctrlr.c +++ b/freebsd/sys/dev/nvme/nvme_ctrlr.c @@ -997,7 +997,9 @@ nvme_ctrlr_passthrough_cmd(struct nvme_controller *ctrlr, { struct nvme_request *req; struct mtx *mtx; +#ifndef __rtems__ struct buf *buf = NULL; +#endif /* __rtems__ */ int ret = 0; vm_offset_t addr, end; @@ -1019,6 +1021,7 @@ nvme_ctrlr_passthrough_cmd(struct nvme_controller *ctrlr, ctrlr->max_xfer_size); return EIO; } +#ifndef __rtems__ if (is_user_buffer) { /* * Ensure the user buffer is wired for the duration of @@ -1036,6 +1039,7 @@ nvme_ctrlr_passthrough_cmd(struct nvme_controller *ctrlr, req = nvme_allocate_request_vaddr(buf->b_data, pt->len, nvme_pt_done, pt); } else +#endif /* __rtems__ */ req = nvme_allocate_request_vaddr(pt->buf, pt->len, nvme_pt_done, pt); } else @@ -1068,11 +1072,13 @@ nvme_ctrlr_passthrough_cmd(struct nvme_controller *ctrlr, mtx_sleep(pt, mtx, PRIBIO, "nvme_pt", 0); mtx_unlock(mtx); +#ifndef __rtems__ err: if (buf != NULL) { relpbuf(buf, NULL); PRELE(curproc); } +#endif /* __rtems__ */ return (ret); } |