lkml.org 
[lkml]   [2016]   [Jul]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH 4/6] mm: move flush in madvise_free_pte_range()
Date
> 
> From: Dave Hansen <dave.hansen@linux.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@linux.intel.com>
> Cc: Minchan Kim <minchan@kernel.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:
> _
>


\
 
 \ /
  Last update: 2016-07-01 11:21    [W:0.035 / U:0.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site