From: Manas Date: Fri, 4 Oct 2024 17:42:16 +0000 (+0530) Subject: mm/memory.c: simplify pfnmap_lockdep_assert X-Git-Tag: v6.13-rc1~99^2~111 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=722376934b6c0b8692f32784d7755bbe5be67529;p=thirdparty%2Flinux.git mm/memory.c: simplify pfnmap_lockdep_assert Use local `mapping' to reduce the pointer chasing. akpm: extracted from a bugfix which Linus fixed with b1b46751671be ("mm: fix follow_pfnmap API lockdep assert"). Link: https://lkml.kernel.org/r/20241004-fix-null-deref-v4-1-d0a8ec01ac85@iiitd.ac.in Signed-off-by: Manas Reviewed-by: Peter Xu Cc: Anup Sharma Cc: Shuah Khan Cc: Matthew Wilcox Signed-off-by: Andrew Morton --- diff --git a/mm/memory.c b/mm/memory.c index 68e57b33363b4..2d32023d4eb87 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -6388,7 +6388,7 @@ static inline void pfnmap_lockdep_assert(struct vm_area_struct *vma) struct address_space *mapping = file ? file->f_mapping : NULL; if (mapping) - lockdep_assert(lockdep_is_held(&vma->vm_file->f_mapping->i_mmap_rwsem) || + lockdep_assert(lockdep_is_held(&mapping->i_mmap_rwsem) || lockdep_is_held(&vma->vm_mm->mmap_lock)); else lockdep_assert(lockdep_is_held(&vma->vm_mm->mmap_lock));