Received: by 2002:a05:7412:d1aa:b0:fc:a2b0:25d7 with SMTP id ba42csp1952104rdb; Wed, 31 Jan 2024 14:34:12 -0800 (PST) X-Google-Smtp-Source: AGHT+IGfPDV9jGgYa9Jf1xSly14L5MjfZtgFGkqYAxSm9/WbIzVz67dEvT7USrFnW1GQ/ve2cuAb X-Received: by 2002:a17:903:11d1:b0:1d4:47d4:82b4 with SMTP id q17-20020a17090311d100b001d447d482b4mr2724651plh.15.1706740451934; Wed, 31 Jan 2024 14:34:11 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1706740451; cv=pass; d=google.com; s=arc-20160816; b=xyj0iLOCegR++37vAMbmjvha1y8mTqqrAH2gVB27OjxpAwHJ6K5vGwk75OPV67EOZs g7142JHfflzVPCgDjiq1dWO56Y74spMDV9NqRPHOqfG2tG43W6IW2o3xA8necNnRu4yW ng/0TuQO34qOKosnBfZqyO6QACM8FegHH41aVBNyG1rVJrwCV4jIrjRv+tYJiPW8NBqM MyLC7MYRYCTvZWsva9Elih86JmFp4E0KFm5aPmeklJ8POfQEJeVMIn/KMwVwaDrE6XLa wENvBoYNI+4hEevv2mWVCaQH6VO7fKiBtuyKJyQVdYfP13U0Z50XpV2JIGs3zMbwdt9I gcgg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:from:subject:message-id:references:mime-version :list-unsubscribe:list-subscribe:list-id:precedence:in-reply-to:date :dkim-signature; bh=bw10OTGUzfIt3yMJ/JYelZQmmsijYp7LFaUSBetq8KM=; fh=cKOW7a9ajBSDpazCb3JUX/MO3bjTlRLgfSTM74q99rs=; b=CqRIppXgwAFwlkU1Df0Ah6WWv7b6cIUSWTVBzXlRN/ou6BSNudQzinljv615f91cij cycltDnt9c69aZ/tP2NCGSdkm8G7PFDLb7m4Al9PsbCCthVeQRZoDFVuX32ezZv1QsIY XWvAHFjO3Hm+X2nSdbiTfTX7McyMHyhxqTcNNjWMZ/ygwRoDEK9L141aFcxcAZwJQ+3C a0SKeD+WqSNoiQgCPYbtL0BuJvkA7Q40XbEfQx88dC971DcANpG3Qap7chylFwi2llJ2 wET5CZOrvSzjyIcK7sqI+5NHm7j/fWkpvmOtzTAhhAxzpx8zJJR9enlZNBzFmFYbtTpY 2qbg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=qbtjbIzz; arc=pass (i=1 spf=pass spfdomain=flex--seanjc.bounces.google.com dkim=pass dkdomain=google.com dmarc=pass fromdomain=google.com); spf=pass (google.com: domain of linux-kernel+bounces-47236-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-47236-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com X-Forwarded-Encrypted: i=1; AJvYcCX8uDVBPeZNzj8e9dHlMW7hQf+mXZXFwtDV5VGLC+SLfbrwAmdfb0ii0fWWc2Ay3mk4S4QIgEnt51JVl4WPog2MMG2TSHh6d1G3WArgPw== Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [2604:1380:40f1:3f00::1]) by mx.google.com with ESMTPS id g11-20020a170902c98b00b001d8dd430616si6464847plc.478.2024.01.31.14.34.11 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 Jan 2024 14:34:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-47236-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) client-ip=2604:1380:40f1:3f00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=qbtjbIzz; arc=pass (i=1 spf=pass spfdomain=flex--seanjc.bounces.google.com dkim=pass dkdomain=google.com dmarc=pass fromdomain=google.com); spf=pass (google.com: domain of linux-kernel+bounces-47236-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:40f1:3f00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-47236-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.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 sy.mirrors.kernel.org (Postfix) with ESMTPS id 6080DB21D91 for ; Wed, 31 Jan 2024 22:15:22 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 60B8E39861; Wed, 31 Jan 2024 22:15:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="qbtjbIzz" Received: from mail-pg1-f201.google.com (mail-pg1-f201.google.com [209.85.215.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3253A38FB5 for ; Wed, 31 Jan 2024 22:15:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706739312; cv=none; b=WHdSyYKJ7qpfjXlmnMqzXmXp5W1MUWpDEiWy4jYE8HOv1SguNeDdYezSE2uqQuc6k+OOONoa8Tx7cI9EjSBRiJyDBbn1oahe/tzWH4/Rm2WQ1oNWTwjnTXQDtJLVuvIbd4VV762OiN6dF0pIgaviNnyZHqVpscjeqlN6QhBv/b0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706739312; c=relaxed/simple; bh=LbAU2QOSUO4G2w7KXKLwqZIy9v04ComU9ZUQlJty5nc=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=Y7LIl5IKIwn/hVmtXF9TDaz2Z93Q7xV9OOz3XONJgV3y8upz3Vs8YT4wFwgIzw9qO84+yzV2Dv90q9h1+wNGYdEhGqz7WDhCQJxaj8X+2yLULmTUnptP/452fmMwwlQZsQ1axhaiWl2tb5FRmwb5pOJ6sMJiIE8/ItK++T1mcpI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--seanjc.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=qbtjbIzz; arc=none smtp.client-ip=209.85.215.201 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--seanjc.bounces.google.com Received: by mail-pg1-f201.google.com with SMTP id 41be03b00d2f7-5cfda2f4716so273488a12.3 for ; Wed, 31 Jan 2024 14:15:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1706739310; x=1707344110; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=bw10OTGUzfIt3yMJ/JYelZQmmsijYp7LFaUSBetq8KM=; b=qbtjbIzzKii+/LAwUeXZSONTG5ZfHFFBCPyYAEb3jsnWHFp5nkZc83JEtdtQAumK+F AcyBMzj12DfcmUECL0wqomwpO41E5xqeektYLCl+hrLvA7n9PATZtMuUEWOdDFS9eMbN jQk4GpQO67+WdxjgDadjEbb5AvY0f90tgFmerVSXCtdD2xCqdgepEfVLgAQRUZVwPqZX XCEm/90s2cbMFBOqcRHi3xMcZQIUaVhFzrcmCEtEMnmxv1B6xTw0ls8MaSzseybEa5up 8IE1TLUA9rIUtKx8tmN1m85mA1AD+n0Me2FygwkfwwfRWM7Vx960CUG4Qc6cMCa9+NlM W4Eg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706739310; x=1707344110; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=bw10OTGUzfIt3yMJ/JYelZQmmsijYp7LFaUSBetq8KM=; b=GAvb6R+V7VX/VeLcjxvg/v34iVSm4LzJImjaQc53y3+7BEsbK5ESjY4jSl1o+DybXs pvQseehtH7urz1rpuctKZ4+RiQxJQBNsP5eHrwGKTSkXda1FQ3CUCeyTXtIsNc+xAXHL D0heS6aJH+6yealtpC75iMYaxeXGshpoOvYAoDx5/c3FveJ/jxzYVJeKNYHWh+nY52Ag 1R9G4l2Wvak6w2PZf7Bzib+CURjOTm29flMTMBvqu/mq5mcr02K94hsoDjjNC3FMBCXq C7el6vncn4QUyx6q5qsoukmwubolbBPG8ZXlPyJr0JiTH/vLL3a1atSqJ4X02Hn1UOVN VOWA== X-Gm-Message-State: AOJu0YyBKOpxoPQlxieEy3m+XCYepAL0iRQjKz4jp5nA3z9BlLPy7rHG ZBA0C08jLE7IYXlgVWTBCjgCdCGI9ZpT2BsMl0yfklvn4ugHVrNBMD55LyiA1wwtRLvmnT9PSRv SwQ== X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a65:68d3:0:b0:5d8:be91:930d with SMTP id k19-20020a6568d3000000b005d8be91930dmr18124pgt.0.1706739310357; Wed, 31 Jan 2024 14:15:10 -0800 (PST) Date: Wed, 31 Jan 2024 14:15:08 -0800 In-Reply-To: <20240104190520.62510-1-Ashish.Kalra@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20240104190520.62510-1-Ashish.Kalra@amd.com> Message-ID: Subject: Re: [PATCH v3] x86/sev: Add support for allowing zero SEV ASIDs. From: Sean Christopherson To: Ashish Kalra Cc: pbonzini@redhat.com, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com, thomas.lendacky@amd.com, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, joro@8bytes.org Content-Type: text/plain; charset="us-ascii" On Thu, Jan 04, 2024, Ashish Kalra wrote: > From: Ashish Kalra > > Some BIOSes allow the end user to set the minimum SEV ASID value > (CPUID 0x8000001F_EDX) to be greater than the maximum number of > encrypted guests, or maximum SEV ASID value (CPUID 0x8000001F_ECX) > in order to dedicate all the SEV ASIDs to SEV-ES or SEV-SNP. > > The SEV support, as coded, does not handle the case where the minimum > SEV ASID value can be greater than the maximum SEV ASID value. > As a result, the following confusing message is issued: > > [ 30.715724] kvm_amd: SEV enabled (ASIDs 1007 - 1006) > > Fix the support to properly handle this case. > > Fixes: 916391a2d1dc ("KVM: SVM: Add support for SEV-ES capability in KVM") > Suggested-by: Sean Christopherson > Signed-off-by: Ashish Kalra > Cc: stable@vger.kernel.org > --- > arch/x86/kvm/svm/sev.c | 40 ++++++++++++++++++++++++---------------- This should be ~3 patches: 1. Convert ASID variables/params to unsigned integers. 2. Return -EINVAL instead of -EBUSY 3. The actual fix here E.g if #2 breaks userspace (extremely unlikely) then bisection should point at exactly that, not at a commit with a whole pile of unrelated things going on. I'll send a v4, #1 should also be accompanied by a cleanup of sev_asid_new() to not multiplex the ASID with the return code. It can simply set sev->asid directly, which as a bonus makes sev_asid_new() and sev_asid_free() more symmetric.