[PATCH] mm/mmap.c: fix missing call to vm_unacct_memory in mmap_region

Miaohe Lin posted 1 patch 3 years, 10 months ago
mm/mmap.c | 1 -
1 file changed, 1 deletion(-)
[PATCH] mm/mmap.c: fix missing call to vm_unacct_memory in mmap_region
Posted by Miaohe Lin 3 years, 10 months ago
From the beginning, charged is set to 0 to avoid calling vm_unacct_memory
twice because vm_unacct_memory will be called by above unmap_region. But
since commit 4f74d2c8e827 ("vm: remove 'nr_accounted' calculations from
the unmap_vmas() interfaces"), unmap_region doesn't call vm_unacct_memory
anymore. So charged shouldn't be set to 0 now otherwise the calling to
paired vm_unacct_memory will be missed and leads to imbalanced account.

Fixes: 4f74d2c8e827 ("vm: remove 'nr_accounted' calculations from the unmap_vmas() interfaces")
Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
---
 mm/mmap.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/mm/mmap.c b/mm/mmap.c
index 315c3ca118cb..b5ab522f9f2b 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -2806,7 +2806,6 @@ unsigned long mmap_region(struct file *file, unsigned long addr,
 
 	/* Undo any partial mapping done by a device driver. */
 	unmap_region(mm, mas.tree, vma, prev, next, vma->vm_start, vma->vm_end);
-	charged = 0;
 	if (vm_flags & VM_SHARED)
 		mapping_unmap_writable(file->f_mapping);
 free_vma:
-- 
2.23.0