[PATCH 6/7] habanalabs: user mappings can be 64-bit

From: Oded Gabbay
Date: Thu Jul 01 2021 - 07:27:34 EST


Increase the size variable in the userptr structure to 64-bit. That
variable describes the size of the memory allocation of the user that
is now being mapped into the device. The mapping can be larger than
4GB, so we need to support it.

Signed-off-by: Oded Gabbay <ogabbay@xxxxxxxxxx>
---
drivers/misc/habanalabs/common/debugfs.c | 4 ++--
drivers/misc/habanalabs/common/habanalabs.h | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/misc/habanalabs/common/debugfs.c b/drivers/misc/habanalabs/common/debugfs.c
index fd44c3b66d3b..77f7c2aa571d 100644
--- a/drivers/misc/habanalabs/common/debugfs.c
+++ b/drivers/misc/habanalabs/common/debugfs.c
@@ -213,7 +213,7 @@ static int userptr_show(struct seq_file *s, void *data)
seq_puts(s, "----------------------------------------------------------\n");
}
seq_printf(s,
- " 0x%-14llx %-10u %-30s\n",
+ " 0x%-14llx %-10llu %-30s\n",
userptr->addr, userptr->size, dma_dir[userptr->dir]);
}

@@ -261,7 +261,7 @@ static int vm_show(struct seq_file *s, void *data)
if (*vm_type == VM_TYPE_USERPTR) {
userptr = hnode->ptr;
seq_printf(s,
- " 0x%-14llx %-10u\n",
+ " 0x%-14llx %-10llu\n",
hnode->vaddr, userptr->size);
} else {
phys_pg_pack = hnode->ptr;
diff --git a/drivers/misc/habanalabs/common/habanalabs.h b/drivers/misc/habanalabs/common/habanalabs.h
index 31fda9e41fe7..5ae95d2abaa6 100644
--- a/drivers/misc/habanalabs/common/habanalabs.h
+++ b/drivers/misc/habanalabs/common/habanalabs.h
@@ -1429,7 +1429,7 @@ struct hl_userptr {
enum dma_data_direction dir;
struct list_head debugfs_list;
u64 addr;
- u32 size;
+ u64 size;
u8 dma_mapped;
};

--
2.25.1