From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753750AbcFOUEx (ORCPT ); Wed, 15 Jun 2016 16:04:53 -0400 Received: from mail-pf0-f194.google.com ([209.85.192.194]:33686 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932084AbcFOUEv convert rfc822-to-8bit (ORCPT ); Wed, 15 Jun 2016 16:04:51 -0400 Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Subject: Re: [PATCH v2] Linux VM workaround for Knights Landing A/D leak From: Nadav Amit In-Reply-To: Date: Wed, 15 Jun 2016 13:04:48 -0700 Cc: LKML , "linux-mm@kvack.org" , Thomas Gleixner , Ingo Molnar , Dave Hansen , "ak@linux.intel.com" , "kirill.shutemov@linux.intel.com" , "mhocko@suse.com" , Andrew Morton , "H. Peter Anvin" , "Srinivasappa, Harish" , "Odzioba, Lukasz" , "Andrejczuk, Grzegorz" , "Daniluk, Lukasz" Content-Transfer-Encoding: 8BIT Message-Id: <613007E2-2A88-4934-9364-A5A66A555305@gmail.com> References: <7FB15233-B347-4A87-9506-A9E10D331292@gmail.com> <1465923672-14232-1-git-send-email-lukasz.anaczkowski@intel.com> <76F6D5F2-6723-441B-BD63-52628731F1FF@gmail.com> To: "Anaczkowski, Lukasz" X-Mailer: Apple Mail (2.3124) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Lukasz wrote: > From: Nadav Amit [mailto:nadav.amit@gmail.com] > Sent: Tuesday, June 14, 2016 8:38 PM > >>> + pte_t pte = ptep_get_and_clear(mm, addr, ptep); >>> + >>> + if (boot_cpu_has_bug(X86_BUG_PTE_LEAK)) >>> + fix_pte_leak(mm, addr, ptep); >>> + return pte; >>> } >> >> I missed it on the previous iteration: ptep_get_and_clear already calls >> fix_pte_leak when needed. So do you need to call it again here? > > You're right, Nadav. Not needing this. Will be removed in next version of the patch. Be careful here. According to the SDM when invalidating a huge-page, each 4KB page needs to be invalidated separately. In practice, when Linux invalidates 2MB/1GB pages it performs a full TLB flush. The full flush may not be required on knights landing, and specifically for the workaround, but you should check. Regards, Nadav