From: Long Li <lon...@microsoft.com>

The interrupt and monitor pages mapped from Hyper-V via kernel are always
4k in sizes. Use Hyper-V page size to map them.

Fixes: 831dba47bd ("bus/vmbus: add Hyper-V virtual bus support")
Cc: sta...@dpdk.org
Signed-off-by: Long Li <lon...@microsoft.com>
---
 drivers/bus/vmbus/linux/vmbus_uio.c  | 2 +-
 drivers/bus/vmbus/vmbus_common_uio.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/bus/vmbus/linux/vmbus_uio.c 
b/drivers/bus/vmbus/linux/vmbus_uio.c
index 8edec869ac..fbafc5027d 100644
--- a/drivers/bus/vmbus/linux/vmbus_uio.c
+++ b/drivers/bus/vmbus/linux/vmbus_uio.c
@@ -268,7 +268,7 @@ static int vmbus_uio_map_subchan(const struct 
rte_vmbus_device *dev,
        }
        file_size = sb.st_size;
 
-       if (file_size == 0 || (file_size & (rte_mem_page_size() - 1))) {
+       if (file_size == 0 || (file_size & (HYPERV_PAGE_SIZE - 1))) {
                VMBUS_LOG(ERR, "incorrect size %s: %zu",
                          ring_path, file_size);
 
diff --git a/drivers/bus/vmbus/vmbus_common_uio.c 
b/drivers/bus/vmbus/vmbus_common_uio.c
index d55aee6537..c6e7e07302 100644
--- a/drivers/bus/vmbus/vmbus_common_uio.c
+++ b/drivers/bus/vmbus/vmbus_common_uio.c
@@ -204,7 +204,7 @@ vmbus_uio_map_resource(struct rte_vmbus_device *dev)
        }
 
        dev->int_page = (uint32_t *)((char *)uio_res->maps[HV_INT_PAGE_MAP].addr
-                                    + (rte_mem_page_size() >> 1));
+                                    + (HYPERV_PAGE_SIZE >> 1));
        dev->monitor_page = uio_res->maps[HV_MON_PAGE_MAP].addr;
        return 0;
 }
-- 
2.34.1

Reply via email to