Received: by 2002:a05:6359:c8b:b0:c7:702f:21d4 with SMTP id go11csp4647266rwb; Tue, 20 Sep 2022 17:51:10 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4L/V+aCvLHefHDnAAIP2b3AXsSBTSRRvRnEHBFddBey4XFIz74zMOQ3sRoZeI+hVHaW+tN X-Received: by 2002:a05:6402:5112:b0:451:cb1d:c46f with SMTP id m18-20020a056402511200b00451cb1dc46fmr22117976edd.35.1663721470153; Tue, 20 Sep 2022 17:51:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1663721470; cv=none; d=google.com; s=arc-20160816; b=Yi+W6+wXPE2aU6Dx/CzvYyO8BFmAbEzuAeDOVwaOJtIXY+3rEwZ+Cfa1TQKoYvQolr wHBb1ZvqG6xnp2pf+xd5lc8bexfrsBt9U7KTlpHCET3R+vhhky6QH4i8crx71j2asOAg AoFjAw9IeIStBVZajs2/q6Iujk7obKb3CgUEWIsn6m4yb8AE058lfMLcKtSotKPwGr+z z3KuKltHkbP/m8liq7Hdt7bLTCJjtRbwpPkubJzhAhwLnnqhG6gqpQOBFfNjFBL+hTF5 wdl7fyW6EWQZp5aTJNcCCGJn/tIKBhBWO0RPTX3OXOeXlDxzv7crQ8pysQuZKPbLqlGd FA+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:reply-to:dkim-signature; bh=VSS9P4anBFtLf4B9B5LJylk6y1/+T/yH5E3Gi46su5c=; b=YHSz5HyjEhiTI1b7HESX0lyn5OQmXTjAs2EWmdJTjnwQpjOYUcJ2MW/gjzGhFv0w+d g9r3aiUMqXnX14qB3b2xWSqLYQ0sJz/Nj2W/VgcAwYVtJyWY4xZ0GeOPMVNX89ojbrTi ddJqg/oYvl2GT/T0Ly4zBniKpuzbqjP5WT5tyn6YI8exckzj0FwLUhaKWk8nnO546g8Q sSgK9HyTYOmajIS0TkeicxTaZ73njeu/wi21P2Q6qckauLUha6VCSD7xV94qDRIpcY2i 0gFMc+Ja7aP6RlnNfB6MCi4FQfyWensN5GOxPK04q8gnnaomRvRckGmOKNRXspRW9Lvg OVKQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=dzsAR999; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d10-20020a50ea8a000000b0044e5fd7cb20si1020470edo.145.2022.09.20.17.50.45; Tue, 20 Sep 2022 17:51:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=dzsAR999; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231620AbiITXeu (ORCPT + 99 others); Tue, 20 Sep 2022 19:34:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46780 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231440AbiITXeS (ORCPT ); Tue, 20 Sep 2022 19:34:18 -0400 Received: from mail-pf1-x44a.google.com (mail-pf1-x44a.google.com [IPv6:2607:f8b0:4864:20::44a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C2D39786E8 for ; Tue, 20 Sep 2022 16:32:45 -0700 (PDT) Received: by mail-pf1-x44a.google.com with SMTP id y22-20020a626416000000b0054769104b0cso2502098pfb.20 for ; Tue, 20 Sep 2022 16:32:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:reply-to:from:to:cc:subject:date; bh=VSS9P4anBFtLf4B9B5LJylk6y1/+T/yH5E3Gi46su5c=; b=dzsAR999gAs5GI60MjtbEHw4Ha/P3CgSWfoPQo+P1oGkQfkJGxCOO8KVHK+jiDCOip Dq5472xUqeafNkymSqfry21kzntpgn2WKqFC3+REW0Wx64ayEeTgGLzEULjQOS1DrggQ erpBK+2sNCkvu3XVL/M99PwZkjL4NwLAKqGtpoi7WOuRWsw60fxIPvCXn/tZVBvoqHf9 YtArUePHaI/K2gcgIlT166ynrxbeS2KYNMXZ+hVw4ch9X7wv+1mTki606d+Ky0Pho56C v0EgLgu/uRuWd5TYowHX3TVLuamYHv2sUrWVDMEwWK9NIFbgxBeDE+2zzGSEYx7pgs2Z g62Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:reply-to:x-gm-message-state:from:to:cc:subject:date; bh=VSS9P4anBFtLf4B9B5LJylk6y1/+T/yH5E3Gi46su5c=; b=IrxI8BxIM9KjRScnd2w9veAwCDDHGQaQLrouLdfTSSXvFH+UVpiZ/RYA0x+kMLx1aK 7If9thtXGfGa0qjBRHkfhhZh4wETmeIbUJWHGJ90l7aC41K/JI4V4sF2PFOUg6VytZ/N UsiW4QdOnRm3+noNEjXcx8GmDryLxRI90Ya75obgsd8NfPIf+SMnMVTnUSDnAdiykjuT M8iu7vL9/aKEnix63X6y5fOiIfP0Gmun5kj7RFliwYasCZc5J+XRgG/1Q+2VAfzCVYoO 1UEaD/jPKR+MBJfzUId/uvcB4v3g6jBwIbTMaGaTf5JeZng3Wzvrhbyuo8U5y9JrDzFL msNw== X-Gm-Message-State: ACrzQf3tH5Z2Ce1Idp1dPlLKmyDSrEMQF4zFOlE/nPezkNbwH4O2YL5j +/wPqilRegXPxgv7KNOQpVvatPasWao= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a05:6a00:10cf:b0:528:48c3:79e0 with SMTP id d15-20020a056a0010cf00b0052848c379e0mr25917775pfu.18.1663716744442; Tue, 20 Sep 2022 16:32:24 -0700 (PDT) Reply-To: Sean Christopherson Date: Tue, 20 Sep 2022 23:31:34 +0000 In-Reply-To: <20220920233134.940511-1-seanjc@google.com> Mime-Version: 1.0 References: <20220920233134.940511-1-seanjc@google.com> X-Mailer: git-send-email 2.37.3.968.ga6b4b080e4-goog Message-ID: <20220920233134.940511-29-seanjc@google.com> Subject: [PATCH v3 28/28] Revert "KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu" From: Sean Christopherson To: Sean Christopherson , Paolo Bonzini Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Alejandro Jimenez , Suravee Suthikulpanit , Maxim Levitsky , Li RongQing Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Turns out that some warnings exist for good reasons. Restore the warning in avic_vcpu_load() that guards against calling avic_vcpu_load() on a running vCPU now that KVM avoids doing so when switching between x2APIC and xAPIC. The entire point of the WARN is to highlight that KVM should not be reloading an AVIC. Opportunistically convert the WARN_ON() to WARN_ON_ONCE() to avoid spamming the kernel if it does fire. This reverts commit c0caeee65af3944b7b8abbf566e7cc1fae15c775. Signed-off-by: Sean Christopherson --- arch/x86/kvm/svm/avic.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/x86/kvm/svm/avic.c b/arch/x86/kvm/svm/avic.c index 953b1fd14b6d..35b0ef877e53 100644 --- a/arch/x86/kvm/svm/avic.c +++ b/arch/x86/kvm/svm/avic.c @@ -1038,6 +1038,7 @@ void avic_vcpu_load(struct kvm_vcpu *vcpu, int cpu) return; entry = READ_ONCE(*(svm->avic_physical_id_cache)); + WARN_ON_ONCE(entry & AVIC_PHYSICAL_ID_ENTRY_IS_RUNNING_MASK); entry &= ~AVIC_PHYSICAL_ID_ENTRY_HOST_PHYSICAL_ID_MASK; entry |= (h_physical_id & AVIC_PHYSICAL_ID_ENTRY_HOST_PHYSICAL_ID_MASK); -- 2.37.3.968.ga6b4b080e4-goog