> 
> From: Dave Hansen <dave.han...@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.han...@linux.intel.com>
> Cc: Minchan Kim <minc...@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:
> _
> 


Reply via email to