Received: by 2002:ab2:6857:0:b0:1ef:ffd0:ce49 with SMTP id l23csp2951902lqp; Mon, 25 Mar 2024 14:17:36 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCWNqf/eYFnYmzbtvCg7lo2XxuBJwOkjNEmeCUm1yYnYuQjh9Wo4O4+xc2KzUoSbIcUWhPRJ0SUPsMTNGQz2Nh9B1j1CXROLVmpc5qcc7Q== X-Google-Smtp-Source: AGHT+IGinOyokUEhhixNo3gxFkzZluhfZHXCTcdXl2LAPcd+YAxlqxEpOkBNM3OADEgCYZPZw1Hp X-Received: by 2002:a05:6808:3026:b0:3c3:6ca2:70b with SMTP id ay38-20020a056808302600b003c36ca2070bmr10719748oib.37.1711401456533; Mon, 25 Mar 2024 14:17:36 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1711401456; cv=pass; d=google.com; s=arc-20160816; b=qZfHemaD+Hmnp6QzxKi8rJPO44Ggb+oceD9paLdog2RLtf95wiw9SHH59cR5AKKB6i Rq0TgFTy6yfU//PULnW5U6Zx9P0HnzYcEUgHxUFChjRBbT8oud1lPgoosHqJdfcL5Lsc P4ezxoIw8vUZTW9x87UHFJHP38Ke6EXSEY7RWANKzgvs6eKmKIdTLdf4BbYc0ma2FWa8 1ERr4mH+c7/34S14V+HRfqPZQjNrY7ZEL0VKa32g62LY9MSGm+Lmm20BpbC8mCdSUXmt enO+ROw7JdyuMU7BjcsK3Vn12dS3chH7VLenj8qLKT9ryThyZZNpgKlal1ok0+q10Qdx JE8w== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:list-unsubscribe:list-subscribe:list-id:precedence :references:message-id:subject:cc:to:from:date:dkim-signature; bh=QMZmeNao4BL4rEO5fYzrAUMAv3kkRmz05hoWcK9ihEY=; fh=wcqKxI0FdVMarVvr2oFhKsNz42gGqOxT0hTrhUTLFcI=; b=d/TXcRU2tnAMdprp0seprLIJ9Pkv3sKmI8T1yLoa7WXpvkc2p3sIUBLCozxckZ3Von RYKY7YYO1IoMBa7gcWEJNUAPRREjGu9YBM9lWTWzTB96lxM7Tl/0ztazqwc6S0Mt6h2z SYdLZOOKT8otGHwdQeoM4ITo5a/jYZt7CQEwjv/A8XiZgIYlerymFaWnh/krhVS2MF9T +NLUtUuKkgHciZelOFDzRBOCCEd6fh5pTdP/Eiyd69V4sCLu1qe8skiTK022Vt5FB5s+ zquDNzOvZak3s/N4CDWItE0aR8Us52Im5N+59Bvv1rhxymD2jcDXzK/NOuwiQMIjmHah hNRA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=D8gI9Afh; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel+bounces-118024-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-118024-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id br12-20020a05622a1e0c00b004310903f2f5si6304376qtb.742.2024.03.25.14.17.36 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Mar 2024 14:17:36 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-118024-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) client-ip=147.75.199.223; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=D8gI9Afh; arc=pass (i=1 spf=pass spfdomain=intel.com dkim=pass dkdomain=intel.com dmarc=pass fromdomain=intel.com); spf=pass (google.com: domain of linux-kernel+bounces-118024-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-118024-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 365F81C2D548 for ; Mon, 25 Mar 2024 21:17:36 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 2BC5A6D1A7; Mon, 25 Mar 2024 21:17:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="D8gI9Afh" Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AE4226CDA8; Mon, 25 Mar 2024 21:17:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.9 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711401447; cv=none; b=XrrQ4s3QoD1QPNcTuf4JkBG/Bpb2T2qB9tkYUSrevUa+Mc6Baf1pxLO87uJvdrD3EuXu+0Cvn0tV5na2Dyz66gWMKilyB5rTy/lNNKsWALECNHMcxtz57FCoAJ/Yn9fFY9tR8E6htJ0ZawrWQ2D0ZFVEaPN6X64bshS2Os1MnEo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711401447; c=relaxed/simple; bh=liQpZznPmxJSTYEPb0Eg7dXTRfDNwgyeGuWMxlxmPcI=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=Iwdftf8vc89cVnsG16GVY2xgx4p5PAOId++DpMcIQfAD1wPtFpYZ5onfTyuy1rDqImdqn+ARcXZcmbjNOq2YGM9ERktC4NZVhNSpe1e6MKJORMbik9pk86cBBTAhpR9LqVtUomqAGnice/XRvnbDrNpwCztAJuKwsipb8fQS+Ww= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=D8gI9Afh; arc=none smtp.client-ip=192.198.163.9 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1711401445; x=1742937445; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=liQpZznPmxJSTYEPb0Eg7dXTRfDNwgyeGuWMxlxmPcI=; b=D8gI9AfhAvJTPQnUMYgW/FQXaFICf6MPbVnGfPt7W5+Eq3v+/x0Hh+9T 6InSd0s1BX97Fyq16we5C6totFA+gR2x8p1Ftyx/iZb628f5hQMnMI53x Oomdi9bY55Cd15Cm5sXlfMaH3/0douN7E2ReS2ZnS15vYbEI7yQdn+oVD 6yqYbEEhUWbyOKf/EUl8Qv14GM+42TvCSxRcBTzprwztmOZunQLHcNIqv swxm8ACDcLMnQhTCjziGSf4Q4c5KV0K0tebk7AzUSlAUF3Sdhc8hEyFJS NtnMYpBxByXofV6SbjDoIgnADKhMrJlBdVgfGvEnCIcgjpl3JnOeCDh0B g==; X-IronPort-AV: E=McAfee;i="6600,9927,11024"; a="17161036" X-IronPort-AV: E=Sophos;i="6.07,154,1708416000"; d="scan'208";a="17161036" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Mar 2024 14:17:24 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,154,1708416000"; d="scan'208";a="16129744" Received: from ls.sc.intel.com (HELO localhost) ([172.25.112.31]) by orviesa007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Mar 2024 14:17:23 -0700 Date: Mon, 25 Mar 2024 14:17:23 -0700 From: Isaku Yamahata To: "Edgecombe, Rick P" Cc: "kvm@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "Huang, Kai" , "Yamahata, Isaku" , "Zhang, Tina" , "seanjc@google.com" , "Yuan, Hang" , "Chen, Bo2" , "sagis@google.com" , "isaku.yamahata@gmail.com" , "Aktas, Erdem" , "pbonzini@redhat.com" , isaku.yamahata@linux.intel.com Subject: Re: [PATCH v19 130/130] RFC: KVM: x86, TDX: Add check for KVM_SET_CPUID2 Message-ID: <20240325211723.GJ2357401@ls.amr.corp.intel.com> References: <1f463eb3ae517ee8f68986ee4781a29dea3c5a89.camel@intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1f463eb3ae517ee8f68986ee4781a29dea3c5a89.camel@intel.com> On Mon, Mar 25, 2024 at 03:32:59PM +0000, "Edgecombe, Rick P" wrote: > On Mon, 2024-03-25 at 11:14 +0000, Huang, Kai wrote: > > To confirm, I mean you want to simply make KVM_SET_CPUID2 return error for TDX > > guest? > > > > It is acceptable to me, and I don't see any conflict with Sean's comments. > > > > But I don't know Sean's perference.  As he said, I think  the consistency > > checking is quite straight-forward: > > > > " > > It's not complicated at all.  Walk through the leafs defined during > > TDH.MNG.INIT, reject KVM_SET_CPUID if a leaf isn't present or doesn't match > > exactly. > > " > > > Yea, I'm just thinking if we could take two patches down to one small one it might be a way to > essentially break off this work to another series without affecting the ability to boot a TD. It > *seems* to be the way things are going. > > > So to me it's not a big deal. > > > > Either way, we need a patch to handle SET_CPUID2: > > > > 1) if we go option 1) -- that is reject SET_CPUID2 completely -- we need to make > > vcpu's CPUID point to KVM's saved CPUID during TDH.MNG.INIT. > > Ah, I missed this part. Can you elaborate? By dropping these two patches it doesn't prevent a TD > boot. If we then reject SET_CPUID, this will break things unless we make other changes? And they are > not small? If we go forthis, the extended topology enumeration (cpuid[0xb or 0x1f]) would need special handling because it's per-vcpu. not TD wide. -- Isaku Yamahata