[bug report] mm/damon: add access checking for hugetlb pages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Baolin Wang,

The patch 86522923bb29: "mm/damon: add access checking for hugetlb
pages" from Dec 30, 2021, leads to the following Smatch static
checker warning:

	mm/damon/vaddr.c:405 damon_hugetlb_mkold()
	warn: 'page' can't be NULL.

mm/damon/vaddr.c
    398 static void damon_hugetlb_mkold(pte_t *pte, struct mm_struct *mm,
    399                                 struct vm_area_struct *vma, unsigned long addr)
    400 {
    401         bool referenced = false;
    402         pte_t entry = huge_ptep_get(pte);
    403         struct page *page = pte_page(entry);
    404 
--> 405         if (!page)

I don't think it makes sense to check "page" because we're already dead
if pte_page() starts returning NULL.  Maybe check "entry"?

    406                 return;
    407 
    408         get_page(page);
    409 
    410         if (pte_young(entry)) {
    411                 referenced = true;
    412                 entry = pte_mkold(entry);
    413                 huge_ptep_set_access_flags(vma, addr, pte, entry,
    414                                            vma->vm_flags & VM_WRITE);
    415         }

regards,
dan carpenter




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux