lkml.org 
[lkml]   [2016]   [Jun]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] mm: fix account pmd page to the process
    Date
    From: zhong jiang <zhongjiang@huawei.com>

    when a process acquire a pmd table shared by other process, we
    increase the account to current process. otherwise, a race result
    in other tasks have set the pud entry. so it no need to increase it.

    Signed-off-by: zhong jiang <zhongjiang@huawei.com>
    ---
    mm/hugetlb.c | 5 ++---
    1 file changed, 2 insertions(+), 3 deletions(-)

    diff --git a/mm/hugetlb.c b/mm/hugetlb.c
    index 19d0d08..3b025c5 100644
    --- a/mm/hugetlb.c
    +++ b/mm/hugetlb.c
    @@ -4189,10 +4189,9 @@ pte_t *huge_pmd_share(struct mm_struct *mm, unsigned long addr, pud_t *pud)
    if (pud_none(*pud)) {
    pud_populate(mm, pud,
    (pmd_t *)((unsigned long)spte & PAGE_MASK));
    - } else {
    + } else
    put_page(virt_to_page(spte));
    - mm_inc_nr_pmds(mm);
    - }
    +
    spin_unlock(ptl);
    out:
    pte = (pte_t *)pmd_alloc(mm, pud, addr);
    --
    1.8.3.1
    \
     
     \ /
      Last update: 2016-06-16 14:01    [W:21.935 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site