Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp2197121yba; Thu, 25 Apr 2019 12:13:49 -0700 (PDT) X-Google-Smtp-Source: APXvYqyPfmE5w2cadbhTKACjBT7Pf365nA75k2d4XBzPPC/oiZ3zAUuCJGo7uFpMytdO7DLM+JeP X-Received: by 2002:aa7:9389:: with SMTP id t9mr42251798pfe.60.1556219629871; Thu, 25 Apr 2019 12:13:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556219629; cv=none; d=google.com; s=arc-20160816; b=RO9Pa6ihuXspjS8RM8zt80aZEQhDiQft6yHlUSrCBDrArPLfYJ0jTsFp8wZ2ZGAuf0 EK3yzkxwzNam3hrzDQ2xfWmHMU8ZDnV1TNodluhdxqSJ/QSYn1b4XeT1UGsinQPmq6lE LPUNkxjO5pJNmYJgtLldmNT7cJU6fAtxSZtzyVGG3QkAz9BKzHh2kIIQZf+/kaS6MebM NM0DvxVJ40XGY2jY66Qssd+Cv6wzLlgfmyRqQgUfffz3naKVWI9dwP7d4+qHpaaNNWfg iPv5OOWk1YRB9BKJ57hHn+JfZOUaflEqejcBwpeh5Kjv414z3DPlwKJi0JkK0Gvf3Bwh ugJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=qxF/lXiqo6cG/57oiaUteES7Mb3jGcT9riQl/ZNu7G0=; b=C7NeKGDfR8F9pVMSG8iZhonLO2ttbeWuXUheHWa8YIJlv5I7+upexey2vkECPFiSBR YP0Tj/oOGOSQe8qvVeFJ2aqufzQaIM3GQ1GjPHxD9Dp/fAP6DeM5w4I+7Sz+QxfpUlr8 s+uQHVxyrCmVbnil8kkYODLYyjDyun3CXxFTCv0COyGaxfU7w7+P9NXv7Ht8x+muYS5o 6QHi6xme8WUub6lEO1m3iEN8qBcQCpXfctKEtL3M0QnxgPR8oykjMjgO3oz4fgfLgXOx GvrjFPkCCtllvalaFk8s9jWbLHz6RXqcAWsaA0okjk4kpqJf07r7bpiPcGy10o8MR4EW mTUw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=B80m5djW; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s145si21806836pgs.228.2019.04.25.12.13.34; Thu, 25 Apr 2019 12:13:49 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=B80m5djW; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729084AbfDYSus (ORCPT + 99 others); Thu, 25 Apr 2019 14:50:48 -0400 Received: from mail.kernel.org ([198.145.29.99]:45688 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726039AbfDYSur (ORCPT ); Thu, 25 Apr 2019 14:50:47 -0400 Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 553E42146E for ; Thu, 25 Apr 2019 18:50:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1556218247; bh=qxF/lXiqo6cG/57oiaUteES7Mb3jGcT9riQl/ZNu7G0=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=B80m5djWcvM7FGaP9bH9idT/TL1WS/EHA4jDB/C7IhZYKiFdAU/tL5dCTYG4mDLCC FmVlwVFYbPgQubjIzVfut7u2Nlev8TV0PaxqR/vZeywXp3Gv9GrW04uP+MKzsAO/CM eDqIZ/o8Hs2Y2Q27kvf8uMZURy9vktZA7OmI+eRI= Received: by mail-wm1-f41.google.com with SMTP id n25so659811wmk.4 for ; Thu, 25 Apr 2019 11:50:46 -0700 (PDT) X-Gm-Message-State: APjAAAVyhnOHDAS/7+VsHLP7PahPAF3Tm3KG75SREMOfNk4Zx9HUXaBw pUh4rxyv/yCrXa39J6Oh5pglb3v+k7PsHe4f6CQFdw== X-Received: by 2002:a1c:eb18:: with SMTP id j24mr4882651wmh.32.1556218245380; Thu, 25 Apr 2019 11:50:45 -0700 (PDT) MIME-Version: 1.0 References: <20190425180828.24959-1-namit@vmware.com> In-Reply-To: <20190425180828.24959-1-namit@vmware.com> From: Andy Lutomirski Date: Thu, 25 Apr 2019 11:50:32 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v2] x86/mm/tlb: Remove flush_tlb_info from the stack To: Nadav Amit Cc: Peter Zijlstra , Borislav Petkov , Andy Lutomirski , Ingo Molnar , Thomas Gleixner , X86 ML , LKML , Dave Hansen Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Apr 25, 2019 at 11:08 AM Nadav Amit wrote: > > Move flush_tlb_info variables off the stack. This allows to align > flush_tlb_info to cache-line and avoid potentially unnecessary cache > line movements. It also allows to have a fixed virtual-to-physical > translation of the variables, which reduces TLB misses. > > Use per-CPU struct for flush_tlb_mm_range() and > flush_tlb_kernel_range(). Add debug assertions to ensure there are > no nested TLB flushes that might overwrite the per-CPU data. For > arch_tlbbatch_flush() use a const struct. > I like this version of the patch.