On 1/15/20 4:08 AM, Li Xinhai wrote:
On 2020-01-15 at 14:09 Yang Shi wrote:
The VM_BUG_ON() is already used by queue_pages_test_walk(), it sounds
better to dump more debug information by using VM_BUG_ON_VMA() to help
debugging.
Signed-off-by: Yang Shi <yang.shi@xxxxxxxxxxxxxxxxx>
The .test_walk() is to be called from pagewalk with the rule that 'start'
and 'end' must within range of vma, in case the rule is broke, we detect
it. This is not quite relevant to a bug of particular vma.
But when you run into VMA range check failure, isn't it helpful to dump
the VMA range information to ease debugging? And, VM_BUG_ON is already
used in the code, I'm supposed the users may prefer more debug
information dumped for debug kernel.
---
mm/mempolicy.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/mm/mempolicy.c b/mm/mempolicy.c
index 067cf7d..801d45d 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -621,7 +621,7 @@ static int queue_pages_test_walk(unsigned long start, unsigned long end,
unsigned long flags = qp->flags;
/* range check first */
- VM_BUG_ON((vma->vm_start > start) || (vma->vm_end < end));
+ VM_BUG_ON_VMA((vma->vm_start > start) || (vma->vm_end < end), vma);
if (!qp->first) {
qp->first = vma;
--
1.8.3.1
>