[PATCH 1/4] asm-generic/page.h: apply page shift to PFN instead of VA in pfn_to_virt

From: Yan Zhao
Date: Wed Jan 31 2024 - 01:27:36 EST


Apply the page shift to PFN to get physical address for final VA.
The macro __va should take physical address instead of PFN as input.

Fixes: 2d78057f0dd4 ("asm-generic/page.h: Make pfn accessors static inlines")
Signed-off-by: Yan Zhao <yan.y.zhao@xxxxxxxxx>
---
include/asm-generic/page.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/asm-generic/page.h b/include/asm-generic/page.h
index 9773582fd96e..4f1265207b9a 100644
--- a/include/asm-generic/page.h
+++ b/include/asm-generic/page.h
@@ -81,7 +81,7 @@ static inline unsigned long virt_to_pfn(const void *kaddr)
#define virt_to_pfn virt_to_pfn
static inline void *pfn_to_virt(unsigned long pfn)
{
- return __va(pfn) << PAGE_SHIFT;
+ return __va(pfn << PAGE_SHIFT);
}
#define pfn_to_virt pfn_to_virt

--
2.17.1