[<prev] [next>] [day] [month] [year] [list]
Message-ID: <016101d1d372$d0317650$709462f0$@alibaba-inc.com>
Date: Fri, 01 Jul 2016 16:30:23 +0800
From: "Hillf Danton" <hillf.zj@...baba-inc.com>
To: "'Dave Hansen'" <dave@...1.net>,
"Dave Hansen" <dave.hansen@...ux.intel.com>
Cc: "Minchan Kim" <minchan@...nel.org>,
"linux-kernel" <linux-kernel@...r.kernel.org>, <linux-mm@...ck.org>
Subject: Re: [PATCH 4/6] mm: move flush in madvise_free_pte_range()
>
> From: Dave Hansen <dave.hansen@...ux.intel.com>
>
> I think this code is OK and does not *need* to be patched. We
> are just rewriting the PTE without the Accessed and Dirty bits.
> The hardware could come along and set them at any time with or
> without the erratum that this series addresses
>
> But this does make the ptep_get_and_clear_full() and
> tlb_remove_tlb_entry() calls here more consistent with the other
> places they are used together and look *obviously* the same
> between call-sites.
>
> Signed-off-by: Dave Hansen <dave.hansen@...ux.intel.com>
> Cc: Minchan Kim <minchan@...nel.org>
> ---
>
> b/mm/madvise.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff -puN mm/madvise.c~knl-leak-40-madvise_free_pte_range-move-flush mm/madvise.c
> --- a/mm/madvise.c~knl-leak-40-madvise_free_pte_range-move-flush 2016-06-30 17:10:42.557246755 -0700
> +++ b/mm/madvise.c 2016-06-30 17:10:42.561246936 -0700
> @@ -369,13 +369,13 @@ static int madvise_free_pte_range(pmd_t
> */
> ptent = ptep_get_and_clear_full(mm, addr, pte,
> tlb->fullmm);
> + tlb_remove_tlb_entry(tlb, pte, addr);
>
Then the current comment has to be updated, no?-/
thanks
Hillf
> ptent = pte_mkold(ptent);
> ptent = pte_mkclean(ptent);
> set_pte_at(mm, addr, pte, ptent);
> if (PageActive(page))
> deactivate_page(page);
> - tlb_remove_tlb_entry(tlb, pte, addr);
> }
> }
> out:
> _
>
Powered by blists - more mailing lists