[PATCH 3/3] pagewalk: use lockdep_assert_held for locking validation

From: Christoph Hellwig
Date: Wed Aug 28 2019 - 10:20:13 EST


Use lockdep to check for held locks instead of using home grown
asserts.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
Reviewed-by: Steven Price <steven.price@xxxxxxx>
---
mm/pagewalk.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/pagewalk.c b/mm/pagewalk.c
index b8762b673a3d..d48c2a986ea3 100644
--- a/mm/pagewalk.c
+++ b/mm/pagewalk.c
@@ -317,7 +317,7 @@ int walk_page_range(struct mm_struct *mm, unsigned long start,
if (!walk.mm)
return -EINVAL;

- VM_BUG_ON_MM(!rwsem_is_locked(&walk.mm->mmap_sem), walk.mm);
+ lockdep_assert_held(&walk.mm->mmap_sem);

vma = find_vma(walk.mm, start);
do {
@@ -367,7 +367,7 @@ int walk_page_vma(struct vm_area_struct *vma, const struct mm_walk_ops *ops,
if (!walk.mm)
return -EINVAL;

- VM_BUG_ON(!rwsem_is_locked(&vma->vm_mm->mmap_sem));
+ lockdep_assert_held(&walk.mm->mmap_sem);

err = walk_page_test(vma->vm_start, vma->vm_end, &walk);
if (err > 0)
--
2.20.1