]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
fs/proc/task_mmu.c: assume non-NULL vma in pagemap_hugetlb()
authorNaoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Thu, 22 May 2014 00:42:42 +0000 (10:42 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Thu, 22 May 2014 00:42:42 +0000 (10:42 +1000)
Fengguang reported smatch error about potential NULL pointer access.

In updated page table walker, we never run ->hugetlb_entry() callback
on the address without vma. This is because __walk_page_range() checks
it in advance. So we can assume non-NULL vma in pagemap_hugetlb().

Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/proc/task_mmu.c

index 1e84ed4e4b74182fb942f5287a03268646d0df78..b3fe1b6b0f807910d23a3cf09446eec88012f87e 100644 (file)
@@ -1033,9 +1033,9 @@ static int pagemap_hugetlb(pte_t *pte, unsigned long addr, unsigned long end,
        pagemap_entry_t pme;
        unsigned long hmask;
 
-       WARN_ON_ONCE(!vma);
+       BUG_ON(!vma);
 
-       if (vma && (vma->vm_flags & VM_SOFTDIRTY))
+       if (vma->vm_flags & VM_SOFTDIRTY)
                flags2 = __PM_SOFT_DIRTY;
        else
                flags2 = 0;