Received: by 2002:a05:7412:31a9:b0:e2:908c:2ebd with SMTP id et41csp4550330rdb; Fri, 15 Sep 2023 05:54:49 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFAlqTzx3cGwBdzWjrtTrCLL9AznbqMPe0+TyKRyT8+RTA+uSiOwpnX+34V5NZez5fHraDQ X-Received: by 2002:a05:6358:9320:b0:134:fdfc:4319 with SMTP id x32-20020a056358932000b00134fdfc4319mr1992180rwa.20.1694782488934; Fri, 15 Sep 2023 05:54:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694782488; cv=none; d=google.com; s=arc-20160816; b=zxy2jf+8bWWmGmG+CxXvtOnRoOow1VB3cC88t9NPz8lbxspfHFkZCqWhJxkb9vu70s LrGt6dAzbQalPk4Iqf/m2cFkiJVmnyykwaciwcLZxFflgOqnMncUlzXk4q//UDIzQKNO CsqsxhJb/o9Gm9XEOchmR0/buyhRVAgk4e7CkNLWUetnznqByYQxHpqOJw76z/0BrsUl MXEtIaJFmJy0cmyFQWVxkdYk0e1Xt0EYdYeRbakcE2IRP8Lt0v3z4QlFv4OsG/RdW1fK PH+sDXzGq1NNuwmyPyktjQrTNKvQQbto7k2WKg6vQR8Nk++1dMknCO/3xVXgK+wq3141 wWCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:references :cc:to:content-language:subject:from:user-agent:mime-version:date :message-id:dkim-signature; bh=Qvr3LUTPCnlzdeJGe9jKxP+vA9Fp/a5KVBNv/Iu61xg=; fh=pBu2wn3bXdvXrzepYNQWZzIpz+stB6aXbliiNy6TwXw=; b=V507X4w3EcT+YlSE7QrEKqSIcKePyYq+Ulw2LQulswLTyNuXvJblL4lTRT4mkUEyC2 bayhuNX2qeJ5kIVeiY/DItwJfkrpx+HmqnVKgR63uz85qQePnDeTYDquvSHKSNTYWaaU kvVkx/bf7+6c+g1BXS5y7Z2O417mwx0dJ5HBPivuBN07g27xqnVSyIZkhyZn+EB8rxYJ YPhoJa+8zVnVFVdik0d/XdtzLtvNy/7SiKpY/M9tXh1Vg46Y3MeaTGalxKsrZG6HoyqR JHxcRFpUrAP+2NPb/UwvGdU/kzsBXVm7+1GkTyuuH3BSK8IoBtauEUPHxOh0N5oWpbkM +I2w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@citrix.com header.s=google header.b=dPizM96q; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=citrix.com Return-Path: Received: from groat.vger.email (groat.vger.email. [2620:137:e000::3:5]) by mx.google.com with ESMTPS id d20-20020a656214000000b00565aa20a07asi3058087pgv.683.2023.09.15.05.54.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Sep 2023 05:54:48 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) client-ip=2620:137:e000::3:5; Authentication-Results: mx.google.com; dkim=pass header.i=@citrix.com header.s=google header.b=dPizM96q; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=citrix.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 7D0EE836E1AB; Thu, 14 Sep 2023 17:33:29 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230523AbjIOAdW (ORCPT + 99 others); Thu, 14 Sep 2023 20:33:22 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53260 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230193AbjIOAdW (ORCPT ); Thu, 14 Sep 2023 20:33:22 -0400 Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com [IPv6:2a00:1450:4864:20::634]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AA8D726A4 for ; Thu, 14 Sep 2023 17:33:17 -0700 (PDT) Received: by mail-ej1-x634.google.com with SMTP id a640c23a62f3a-9a65f9147ccso206350666b.1 for ; Thu, 14 Sep 2023 17:33:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=citrix.com; s=google; t=1694737996; x=1695342796; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:references:cc:to :content-language:subject:from:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=Qvr3LUTPCnlzdeJGe9jKxP+vA9Fp/a5KVBNv/Iu61xg=; b=dPizM96qwGUo6ZwfI/O2/2F49Ck60Q1KeThW4F22LbZyWxuizHjiElHS8Liz1fFS1d TsbsNZJlblxaA/LVKE/pWh3jqWI891OgTNLOLhgAP0oBplv65JrFR3P2SRQhwmWePzFG d3LD4qT4VTGQNK74qcMuYA9mumqgoIEFMEGdk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694737996; x=1695342796; h=content-transfer-encoding:in-reply-to:references:cc:to :content-language:subject:from:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Qvr3LUTPCnlzdeJGe9jKxP+vA9Fp/a5KVBNv/Iu61xg=; b=ThWisoea0fTjV7EnYJ+BMchxIrNQdOmWrF8a9uInvgGm9+xiDx5aHX3SthTmQXHtg8 MqI7ZOtaV3VDnaw0tFj3WwP+6w9JUeqd9mn5byhR9kAlD/LbYPiPIOFrplwZgZsPIXMa mAkAgVUmwvraqglXshzL/AN7VeDTJZMuSN9d/bigXOkNEmKdB9dNugGRyWkB1X/fD6pN GMqvCOq0W2iS+ZzevZbgmH2L2T1l61TCpjvCMDYhsgqxOhoZ0tQqNldHn9WX/dWuZTeE lQIVHlMDYxDpxv4YXPByrlf8kdgI1vH0p9+PqqbidXctAlGeHlwGedr+gPm7r0GYIpdX gm8w== X-Gm-Message-State: AOJu0Yy4Isd1QQM2PkgZhX+smrmTltH9gOWr3PFD3XR+hXszE3Hszyu5 YD9OwfoaEL6hVamfQtvvjRcdaw== X-Received: by 2002:a17:906:5392:b0:9a2:23b:db60 with SMTP id g18-20020a170906539200b009a2023bdb60mr16582ejo.54.1694737996072; Thu, 14 Sep 2023 17:33:16 -0700 (PDT) Received: from [192.168.1.10] (host-92-12-44-130.as13285.net. [92.12.44.130]) by smtp.gmail.com with ESMTPSA id lc3-20020a170906dfe300b00982a352f078sm1657125ejc.124.2023.09.14.17.33.15 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 14 Sep 2023 17:33:15 -0700 (PDT) Message-ID: <50e96f85-66f8-2a4f-45c9-a685c757bb28@citrix.com> Date: Fri, 15 Sep 2023 01:33:14 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.15.1 From: andrew.cooper3@citrix.com Subject: Re: [PATCH v10 03/38] x86/msr: Add the WRMSRNS instruction support Content-Language: en-GB To: Thomas Gleixner , Xin Li , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org, kvm@vger.kernel.org, xen-devel@lists.xenproject.org Cc: mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, luto@kernel.org, pbonzini@redhat.com, seanjc@google.com, peterz@infradead.org, jgross@suse.com, ravi.v.shankar@intel.com, mhiramat@kernel.org, jiangshanlai@gmail.com References: <20230914044805.301390-1-xin3.li@intel.com> <20230914044805.301390-4-xin3.li@intel.com> <6f5678ff-f8b1-9ada-c8c7-f32cfb77263a@citrix.com> <87y1h81ht4.ffs@tglx> <7ba4ae3e-f75d-66a8-7669-b6eb17c1aa1c@citrix.com> <87v8cc1ehe.ffs@tglx> In-Reply-To: <87v8cc1ehe.ffs@tglx> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Thu, 14 Sep 2023 17:33:29 -0700 (PDT) X-Spam-Status: No, score=-2.3 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email On 15/09/2023 1:12 am, Thomas Gleixner wrote: > On Fri, Sep 15 2023 at 00:46, andrew wrote: >> On 15/09/2023 12:00 am, Thomas Gleixner wrote: >>> So no. I'm fundamentally disagreeing with your recommendation. The way >>> forward is: >>> >>> 1) Provide the native variant for wrmsrns(), i.e. rename the proposed >>> wrmsrns() to native_wrmsr_ns() and have the X86_FEATURE_WRMSRNS >>> safety net as you pointed out. >>> >>> That function can be used in code which is guaranteed to be not >>> affected by the PV_XXL madness. >>> >>> 2) Come up with a sensible solution for the PV_XXL horrorshow >>> >>> 3) Implement a sane general variant of wrmsr_ns() which handles >>> both X86_FEATURE_WRMSRNS and X86_MISFEATURE_PV_XXL >>> >>> 4) Convert other code which benefits from the non-serializing variant >>> to wrmsr_ns() >> Well - point 1 is mostly work that needs reverting as part of completing >> point 3, and point 2 clearly needs doing irrespective of anything else. > No. #1 has a value on its own independent of the general variant in #3. > >>> That function can be used in code which is guaranteed to be not >>> affected by the PV_XXL madness. > That makes a lot of sense because it's guaranteed to generate better > code than whatever we come up with for the PV_XXL nonsense. It's an assumption about what "definitely won't" be paravirt in the future. XenPV stack handling is almost-FRED-like and has been for the better part of two decades. You frequently complain that there's too much black magic holding XenPV together.  A paravirt-FRED will reduce the differences vs native substantially. ~Andrew