[PATCH] Modify the check condition

From: cgel . zte
Date: Sat Sep 18 2021 - 02:52:46 EST


From: Yang Guang <yang.guang5@xxxxxxxxxx>

The vma may be NULL, and accessing the member of vma like "vma->vm_start"
in calling follow_phys may occur segmentation fault.
So it should check vma at beginning. If vma is null, it will return. And
the if condition won't execute "vm->vm_flags".

Signed-off-by: Yang Guang <yang.guang5@xxxxxxxxxx>
---
arch/x86/mm/pat/memtype.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/mm/pat/memtype.c b/arch/x86/mm/pat/memtype.c
index 4ba2a3ee4bce..b7108b37b754 100644
--- a/arch/x86/mm/pat/memtype.c
+++ b/arch/x86/mm/pat/memtype.c
@@ -1089,7 +1089,7 @@ void untrack_pfn(struct vm_area_struct *vma, unsigned long pfn,
resource_size_t paddr;
unsigned long prot;

- if (vma && !(vma->vm_flags & VM_PAT))
+ if (!(vma) || !(vma->vm_flags & VM_PAT))
return;

/* free the chunk starting from pfn or the whole chunk */
--
2.25.1