From 51bd6f96189b825492d8732a50840de12fd0903a Mon Sep 17 00:00:00 2001 From: Justin Hibbits Date: Fri, 26 Jan 2018 00:56:09 +0000 Subject: [PATCH] Minimal change to build linuxkpi on architectures with physical addresses larger than virtual Summary: Some architectures have physical/bus addresses that are much larger than virtual addresses. This change just quiets a warning, as DMAP is not used on those architectures, and on 64-bit platforms uintptr_t is the same size as vm_paddr_t and void *. Reviewed By: hselasky MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D14043 --- sys/compat/linuxkpi/common/src/linux_page.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index 250141b06fe..dcc5be45791 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -69,7 +69,8 @@ linux_page_address(struct page *page) if (page->object != kmem_object && page->object != kernel_object) { return (PMAP_HAS_DMAP ? - ((void *)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(page))) : NULL); + ((void *)(uintptr_t)PHYS_TO_DMAP(VM_PAGE_TO_PHYS(page))) : + NULL); } return ((void *)(uintptr_t)(VM_MIN_KERNEL_ADDRESS + IDX_TO_OFF(page->pindex))); -- 2.45.0