From c2f60ea45219a960821337c15bdb90af201de0b8 Mon Sep 17 00:00:00 2001 From: Shuhei Matsumoto Date: Thu, 26 Sep 2019 07:26:19 +0900 Subject: [PATCH] nvmf/rdma: Move nvmf_rdma_get_lkey() up in a file This reduces the diff in the next patch. Signed-off-by: Shuhei Matsumoto Change-Id: I85dccdc1a1a5a51777934121f50a6af97feda5a5 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/469480 Tested-by: SPDK CI Jenkins Reviewed-by: Paul Luse Reviewed-by: Seth Howell Reviewed-by: Jim Harris Reviewed-by: Ben Walker --- lib/nvmf/rdma.c | 50 ++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/lib/nvmf/rdma.c b/lib/nvmf/rdma.c index 1335c9818..136830ccc 100644 --- a/lib/nvmf/rdma.c +++ b/lib/nvmf/rdma.c @@ -1531,6 +1531,31 @@ nvmf_rdma_replace_buffer(struct spdk_nvmf_rdma_poll_group *rgroup, void **buf) return 0; } +static bool +nvmf_rdma_get_lkey(struct spdk_nvmf_rdma_device *device, struct iovec *iov, + uint32_t *_lkey) +{ + uint64_t translation_len; + uint32_t lkey; + + translation_len = iov->iov_len; + + if (!g_nvmf_hooks.get_rkey) { + lkey = ((struct ibv_mr *)spdk_mem_map_translate(device->map, + (uint64_t)iov->iov_base, &translation_len))->lkey; + } else { + lkey = spdk_mem_map_translate(device->map, + (uint64_t)iov->iov_base, &translation_len); + } + + if (spdk_unlikely(translation_len < iov->iov_len)) { + return false; + } + + *_lkey = lkey; + return true; +} + /* * Fills iov and SGL, iov[i] points to buffer[i], SGE[i] is limited in length to data block size * and points to part of buffer @@ -1618,31 +1643,6 @@ nvmf_rdma_fill_buffers_with_md_interleave(struct spdk_nvmf_rdma_transport *rtran return 0; } -static bool -nvmf_rdma_get_lkey(struct spdk_nvmf_rdma_device *device, struct iovec *iov, - uint32_t *_lkey) -{ - uint64_t translation_len; - uint32_t lkey; - - translation_len = iov->iov_len; - - if (!g_nvmf_hooks.get_rkey) { - lkey = ((struct ibv_mr *)spdk_mem_map_translate(device->map, - (uint64_t)iov->iov_base, &translation_len))->lkey; - } else { - lkey = spdk_mem_map_translate(device->map, - (uint64_t)iov->iov_base, &translation_len); - } - - if (spdk_unlikely(translation_len < iov->iov_len)) { - return false; - } - - *_lkey = lkey; - return true; -} - static bool nvmf_rdma_fill_wr_sge(struct spdk_nvmf_rdma_device *device, struct spdk_nvmf_request *req, struct ibv_send_wr *wr)