[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190513023701.83056-1-swkhack@gmail.com>
Date: Mon, 13 May 2019 10:37:01 +0800
From: Weikang shi <swkhack@...il.com>
To: linux-mm@...ck.org
Cc: linux-kernel@...r.kernel.org, swkhack <swkhack@...il.com>
Subject: [PATCH] mm: Change count_mm_mlocked_page_nr return type
From: swkhack <swkhack@...il.com>
In 64-bit machine,the value of "vma->vm_end - vma->vm_start"
maybe negative in 32bit int and the "count >> PAGE_SHIFT"'s result
will be wrong.So change the local variable and return
value to unsigned long will fix the problem.
Signed-off-by: swkhack <swkhack@...il.com>
---
mm/mlock.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/mlock.c b/mm/mlock.c
index 080f3b364..d614163f5 100644
--- a/mm/mlock.c
+++ b/mm/mlock.c
@@ -636,11 +636,11 @@ static int apply_vma_lock_flags(unsigned long start, size_t len,
* is also counted.
* Return value: previously mlocked page counts
*/
-static int count_mm_mlocked_page_nr(struct mm_struct *mm,
+static unsigned long count_mm_mlocked_page_nr(struct mm_struct *mm,
unsigned long start, size_t len)
{
struct vm_area_struct *vma;
- int count = 0;
+ unsigned long count = 0;
if (mm == NULL)
mm = current->mm;
--
2.17.1
Powered by blists - more mailing lists