[PATCH 15/29] csky: Fixup update_mmu_cache called with user io mapping

From: guoren
Date: Thu Jan 21 2021 - 15:37:47 EST


From: Guo Ren <guoren@xxxxxxxxxxxxxxxxx>

The function update_mmu_cache could be called by user-io mapping.
There is no space of struct page in mem_map for the pte. Just
ignore the user-io mmaping in update_mmu_cache.

Signed-off-by: Guo Ren <guoren@xxxxxxxxxxxxxxxxx>
---
arch/csky/abiv2/cacheflush.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/arch/csky/abiv2/cacheflush.c b/arch/csky/abiv2/cacheflush.c
index 790f1ebfba44..39c51399dd81 100644
--- a/arch/csky/abiv2/cacheflush.c
+++ b/arch/csky/abiv2/cacheflush.c
@@ -12,6 +12,9 @@ void update_mmu_cache(struct vm_area_struct *vma, unsigned long address,
unsigned long addr;
struct page *page;

+ if (!pfn_valid(pte_pfn(*pte)))
+ return;
+
page = pfn_to_page(pte_pfn(*pte));
if (page == ZERO_PAGE(0))
return;
--
2.17.1