Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp596382ybk; Wed, 13 May 2020 08:07:21 -0700 (PDT) X-Google-Smtp-Source: APiQypLipw1TtF1a7YA5nGWjzh2F+6ZlQB6cN+xpfYz5yTukdGlmBMAtfluhOXOFjjzU5cS79Xm3 X-Received: by 2002:a17:906:784c:: with SMTP id p12mr23267555ejm.346.1589382440799; Wed, 13 May 2020 08:07:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589382440; cv=none; d=google.com; s=arc-20160816; b=NW2NtxNH9zpjRrwTVJNPCgItCS4/S/xVULL3xG/SldiZf3lZH1XtcLvDoZtqbK3w+h ptD8l/wXZXToZCY+8vmb5Z/+na1/YjpyWe8pm3lNDOfK6TLfj0SEyj/zJ4f+XmU06lFm 2qAOnEsi5veyjZAzcJgszqcdQkt3R36Fd29oMryJ+HuDAYjWLl2DKB2KpfyuirA8s3kW wz5ZaRTMHZxzFWjgMjbWgw1rgv+3gC5KX+WaQMlabh/SrQSwGANr7jLTlxFeW089Kzta 7PtKi/SidT4sNiYDd91svPDLRNQVOpmstfGwguoBK3C4qQuFKom+y1KrlrdIJD6murfy w3jQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:references :in-reply-to:subject:cc:to:from; bh=EWBNz9CCbDAKMh4XIw6+WRXePEPCS5W1ypeRItsvDfU=; b=iP1Au55nAwpDyOJhMibY9Se4ibrVgREiv2eC8sZj3tTANNyh0GikahxnAYEcbeabHl Pphv0U/7Py9iRFzfIhWWCzAmu5kPmLzS+vGAazWslsBKNcuErxGePkQuNgZQM2dmoIVJ iLVhPgKJsbOXbErQhBLhccciYQDtEnspHgjIvENBJdEPHhYqRZXx0S/osh5l2SLEQ/gR sFCw7w7G1N8/fIjSRp1tGChzvLsAh0cC1JkxKRHtQYOFdtRFWL7zzNhSoodMSC7CG6wz MRu3Lcm/xdlrLyBDuAsOJLv1dHqwpRZ8Bn82ZvDRDBEWkr7tyU9M4KIljJSsPq4whoJp of5w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z6si9506209ejb.147.2020.05.13.08.06.57; Wed, 13 May 2020 08:07:20 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729258AbgEMPFJ (ORCPT + 99 others); Wed, 13 May 2020 11:05:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42110 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728881AbgEMPFJ (ORCPT ); Wed, 13 May 2020 11:05:09 -0400 Received: from Galois.linutronix.de (Galois.linutronix.de [IPv6:2a0a:51c0:0:12e:550::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 694DFC061A0C for ; Wed, 13 May 2020 08:05:09 -0700 (PDT) Received: from p5de0bf0b.dip0.t-ipconnect.de ([93.224.191.11] helo=nanos.tec.linutronix.de) by Galois.linutronix.de with esmtpsa (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from ) id 1jYswJ-0006J4-Pg; Wed, 13 May 2020 17:04:55 +0200 Received: by nanos.tec.linutronix.de (Postfix, from userid 1000) id 15344100605; Wed, 13 May 2020 17:04:55 +0200 (CEST) From: Thomas Gleixner To: Balbir Singh , linux-kernel@vger.kernel.org Cc: jpoimboe@redhat.com, tony.luck@intel.com, keescook@chromium.org, benh@kernel.crashing.org, x86@kernel.org, dave.hansen@intel.com, thomas.lendacky@amd.com, Balbir Singh Subject: Re: [PATCH v6 5/6] Optionally flush L1D on context switch In-Reply-To: <20200510014803.12190-6-sblbir@amazon.com> References: <20200510014803.12190-1-sblbir@amazon.com> <20200510014803.12190-6-sblbir@amazon.com> Date: Wed, 13 May 2020 17:04:55 +0200 Message-ID: <87d0773mg8.fsf@nanos.tec.linutronix.de> MIME-Version: 1.0 Content-Type: text/plain X-Linutronix-Spam-Score: -1.0 X-Linutronix-Spam-Level: - X-Linutronix-Spam-Status: No , -1.0 points, 5.0 required, ALL_TRUSTED=-1,SHORTCIRCUIT=-0.0001 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Balbir Singh writes: > > + if (prev_mm & LAST_USER_MM_L1D_FLUSH) > + arch_l1d_flush(0); /* Just flush, don't populate the TLB */ Bah. I fundamentally hate tail comments. They are just disturbing the reading flow. Aside of that, this states the WHAT but not the WHY. And if you add that explanation then you need more than 20 characters and end up with if (prev_mm & LAST_USER_MM_L1D_FLUSH) { /* * Proper comment explaining why this is flushing * without prepopulating the TLB. */ arch_l1d_flush(0); } anyway. And even for a short comment which fits after the function call it's way better to have: if (prev_mm & LAST_USER_MM_L1D_FLUSH) { /* Short explanation */ arch_l1d_flush(0); } Hmm? > + /* > + * Leave last_user_mm_spec at LAST_USER_MM_IBPB, we don't > + * want to set LAST_USER_MM_L1D_FLUSH and force a flush before > + * we've allocated the flush pages. Ah here is the comment. I still like the explicit define for the (re) init.