diff mbox series

[v2,06/13] hw/rdma: Delete useless structure RdmaRmUserMR

Message ID 20180805153518.2983-7-yuval.shaia@oracle.com (mailing list archive)
State New, archived
Headers show
Series Misc fixes for pvrdma device | expand

Commit Message

Yuval Shaia Aug. 5, 2018, 3:35 p.m. UTC
The structure RdmaRmUserMR has no benefits, remove it an move all its
fields to struct RdmaRmMR.

Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com>
---
 hw/rdma/rdma_backend.c |  3 +--
 hw/rdma/rdma_rm.c      | 16 ++++++++--------
 hw/rdma/rdma_rm_defs.h | 10 +++-------
 3 files changed, 12 insertions(+), 17 deletions(-)

Comments

Marcel Apfelbaum Aug. 6, 2018, 11:42 a.m. UTC | #1
On 08/05/2018 06:35 PM, Yuval Shaia wrote:
> The structure RdmaRmUserMR has no benefits, remove it an move all its
> fields to struct RdmaRmMR.
>
> Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com>
> ---
>   hw/rdma/rdma_backend.c |  3 +--
>   hw/rdma/rdma_rm.c      | 16 ++++++++--------
>   hw/rdma/rdma_rm_defs.h | 10 +++-------
>   3 files changed, 12 insertions(+), 17 deletions(-)
>
> diff --git a/hw/rdma/rdma_backend.c b/hw/rdma/rdma_backend.c
> index 647e16399f..52981d652d 100644
> --- a/hw/rdma/rdma_backend.c
> +++ b/hw/rdma/rdma_backend.c
> @@ -271,8 +271,7 @@ static int build_host_sge_array(RdmaDeviceResources *rdma_dev_res,
>               return VENDOR_ERR_INVLKEY | ssge[ssge_idx].lkey;
>           }
>   
> -        dsge->addr = (uintptr_t)mr->user_mr.host_virt + ssge[ssge_idx].addr -
> -                     mr->user_mr.guest_start;
> +        dsge->addr = (uintptr_t)mr->virt + ssge[ssge_idx].addr - mr->start;
>           dsge->length = ssge[ssge_idx].length;
>           dsge->lkey = rdma_backend_mr_lkey(&mr->backend_mr);
>   
> diff --git a/hw/rdma/rdma_rm.c b/hw/rdma/rdma_rm.c
> index 415da15efe..7403d24674 100644
> --- a/hw/rdma/rdma_rm.c
> +++ b/hw/rdma/rdma_rm.c
> @@ -165,15 +165,15 @@ int rdma_rm_alloc_mr(RdmaDeviceResources *dev_res, uint32_t pd_handle,
>           length = TARGET_PAGE_SIZE;
>           addr = g_malloc(length);
>       } else {
> -        mr->user_mr.host_virt = host_virt;
> -        pr_dbg("host_virt=0x%p\n", mr->user_mr.host_virt);
> -        mr->user_mr.length = guest_length;
> +        mr->virt = host_virt;
> +        pr_dbg("host_virt=0x%p\n", mr->virt);
> +        mr->length = guest_length;
>           pr_dbg("length=%zu\n", guest_length);
> -        mr->user_mr.guest_start = guest_start;
> -        pr_dbg("guest_start=0x%" PRIx64 "\n", mr->user_mr.guest_start);
> +        mr->start = guest_start;
> +        pr_dbg("guest_start=0x%" PRIx64 "\n", mr->start);
>   
> -        length = mr->user_mr.length;
> -        addr = mr->user_mr.host_virt;
> +        length = mr->length;
> +        addr = mr->virt;
>       }
>   
>       ret = rdma_backend_create_mr(&mr->backend_mr, &pd->backend_pd, addr, length,
> @@ -214,7 +214,7 @@ void rdma_rm_dealloc_mr(RdmaDeviceResources *dev_res, uint32_t mr_handle)
>   
>       if (mr) {
>           rdma_backend_destroy_mr(&mr->backend_mr);
> -        munmap(mr->user_mr.host_virt, mr->user_mr.length);
> +        munmap(mr->virt, mr->length);
>           res_tbl_dealloc(&dev_res->mr_tbl, mr_handle);
>       }
>   }
> diff --git a/hw/rdma/rdma_rm_defs.h b/hw/rdma/rdma_rm_defs.h
> index 226011176d..7228151239 100644
> --- a/hw/rdma/rdma_rm_defs.h
> +++ b/hw/rdma/rdma_rm_defs.h
> @@ -55,16 +55,12 @@ typedef struct RdmaRmCQ {
>       bool notify;
>   } RdmaRmCQ;
>   
> -typedef struct RdmaRmUserMR {
> -    void *host_virt;
> -    uint64_t guest_start;
> -    size_t length;
> -} RdmaRmUserMR;
> -
>   /* MR (DMA region) */
>   typedef struct RdmaRmMR {
>       RdmaBackendMR backend_mr;
> -    RdmaRmUserMR user_mr;
> +    void *virt;
> +    uint64_t start;
> +    size_t length;
>       uint32_t pd_handle;
>       uint32_t lkey;
>       uint32_t rkey;

Reviewed-by: Marcel Apfelbaum<marcel.apfelbaum@gmail.com>

Thanks,
Marcel
diff mbox series

Patch

diff --git a/hw/rdma/rdma_backend.c b/hw/rdma/rdma_backend.c
index 647e16399f..52981d652d 100644
--- a/hw/rdma/rdma_backend.c
+++ b/hw/rdma/rdma_backend.c
@@ -271,8 +271,7 @@  static int build_host_sge_array(RdmaDeviceResources *rdma_dev_res,
             return VENDOR_ERR_INVLKEY | ssge[ssge_idx].lkey;
         }
 
-        dsge->addr = (uintptr_t)mr->user_mr.host_virt + ssge[ssge_idx].addr -
-                     mr->user_mr.guest_start;
+        dsge->addr = (uintptr_t)mr->virt + ssge[ssge_idx].addr - mr->start;
         dsge->length = ssge[ssge_idx].length;
         dsge->lkey = rdma_backend_mr_lkey(&mr->backend_mr);
 
diff --git a/hw/rdma/rdma_rm.c b/hw/rdma/rdma_rm.c
index 415da15efe..7403d24674 100644
--- a/hw/rdma/rdma_rm.c
+++ b/hw/rdma/rdma_rm.c
@@ -165,15 +165,15 @@  int rdma_rm_alloc_mr(RdmaDeviceResources *dev_res, uint32_t pd_handle,
         length = TARGET_PAGE_SIZE;
         addr = g_malloc(length);
     } else {
-        mr->user_mr.host_virt = host_virt;
-        pr_dbg("host_virt=0x%p\n", mr->user_mr.host_virt);
-        mr->user_mr.length = guest_length;
+        mr->virt = host_virt;
+        pr_dbg("host_virt=0x%p\n", mr->virt);
+        mr->length = guest_length;
         pr_dbg("length=%zu\n", guest_length);
-        mr->user_mr.guest_start = guest_start;
-        pr_dbg("guest_start=0x%" PRIx64 "\n", mr->user_mr.guest_start);
+        mr->start = guest_start;
+        pr_dbg("guest_start=0x%" PRIx64 "\n", mr->start);
 
-        length = mr->user_mr.length;
-        addr = mr->user_mr.host_virt;
+        length = mr->length;
+        addr = mr->virt;
     }
 
     ret = rdma_backend_create_mr(&mr->backend_mr, &pd->backend_pd, addr, length,
@@ -214,7 +214,7 @@  void rdma_rm_dealloc_mr(RdmaDeviceResources *dev_res, uint32_t mr_handle)
 
     if (mr) {
         rdma_backend_destroy_mr(&mr->backend_mr);
-        munmap(mr->user_mr.host_virt, mr->user_mr.length);
+        munmap(mr->virt, mr->length);
         res_tbl_dealloc(&dev_res->mr_tbl, mr_handle);
     }
 }
diff --git a/hw/rdma/rdma_rm_defs.h b/hw/rdma/rdma_rm_defs.h
index 226011176d..7228151239 100644
--- a/hw/rdma/rdma_rm_defs.h
+++ b/hw/rdma/rdma_rm_defs.h
@@ -55,16 +55,12 @@  typedef struct RdmaRmCQ {
     bool notify;
 } RdmaRmCQ;
 
-typedef struct RdmaRmUserMR {
-    void *host_virt;
-    uint64_t guest_start;
-    size_t length;
-} RdmaRmUserMR;
-
 /* MR (DMA region) */
 typedef struct RdmaRmMR {
     RdmaBackendMR backend_mr;
-    RdmaRmUserMR user_mr;
+    void *virt;
+    uint64_t start;
+    size_t length;
     uint32_t pd_handle;
     uint32_t lkey;
     uint32_t rkey;