Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp1600736ybx; Sat, 2 Nov 2019 02:57:40 -0700 (PDT) X-Google-Smtp-Source: APXvYqw0LddTWpNPP4IcCRAqRy137Qni2CyB5wCXI/LMXfV4LIVU+6xwXnL4e/FrGHFooHFwgLoc X-Received: by 2002:a05:6402:124b:: with SMTP id l11mr861827edw.220.1572688660573; Sat, 02 Nov 2019 02:57:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572688660; cv=none; d=google.com; s=arc-20160816; b=NVJTDg0zOP8U5eGtklyf9TaSPbRyaNOfI3HX8qoAspi6neVurJeQF2PqnQ2vz9Vh6d Z2mco6FN6L84UzSCn+UYmORWRLu5B9HhZ6bMyNCN20bTHQsiN0W+n7T49vX5FZaUaRTw dv9gPv2nS/Ev8bQ6ndY3RH2WvuHdSuv/taXTpGWFSJNbD7lU2oWVB0HTU0Hvo1CxDkeg MjrSdqoLLDeRUfwEFmpd4fxR8vSXGxdym7Csn77obbIiSG5mOWo+XgcQ6/MHAKiaSP/e vtGlx2iWBiW0za9CVrHVo9eiR2ikZ6ZeMEMKROQ3Ulr8lM7VSviB2dx3+jhj7IrLjoU6 DG7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:openpgp:from:references:cc:to:subject; bh=O/01Bc12yc4dFzpfMPeRY3Tp+1jvvcBFHG+c/3yZA0A=; b=D3/uploOTm8zh5vJtdKRRJoCCbfUHsbblLiKqosY9nS7fHBtU5zKN5Y/TznAtn+t3j O8iR5PukrBjTk+DDwxUZPsMc+aBhZ1Rds3L0S4MusAPhrQjBNAROL8NooMxBdx0Ktewl 9DqAThHtqTxubU2Vd8gc14Us0F5KnMA+gxXW1uC1PkPfyIkVSjoTEEZemteT8183c1Tg uEgg1i1GQI0kTFpGSpzTCx/keVQ3ihVitVDQw3ALxae2Cc4HE3eLyL6aAwYe/i5LA0Td NBMRXuleQ7mr8hNp/rMceoDCWI9I4T7+sbYnpEgoQwX34Azr0VvMhQFxGvu+tYkG/YDh d2rA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u9si2794274edl.273.2019.11.02.02.57.17; Sat, 02 Nov 2019 02:57:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727806AbfKBJwZ (ORCPT + 99 others); Sat, 2 Nov 2019 05:52:25 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46220 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726670AbfKBJwZ (ORCPT ); Sat, 2 Nov 2019 05:52:25 -0400 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B0297C057EC6 for ; Sat, 2 Nov 2019 09:52:24 +0000 (UTC) Received: by mail-wr1-f71.google.com with SMTP id f16so6711517wrr.16 for ; Sat, 02 Nov 2019 02:52:24 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:openpgp:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=O/01Bc12yc4dFzpfMPeRY3Tp+1jvvcBFHG+c/3yZA0A=; b=lIxunjpIXSkYgwPC6vKGOr6XjkZkRZeLgE5qYO6LqWXxoP2MNFbwinKQK8dw8pImk5 KFQf2xF/uw1iE/Sc7pNPnqzfTNM2hNLYdOvNpgpb3dIrx+9zYHqNBQxDhSC/nCCLvljq taWWL02bwvoBpfZRnyfJkjLc0OJBHoB8v0sR9FghfPFfqTqYdJrW0VotT+lJiVm451Y3 CTghe1eihYMqTU1qFShR5xT+ZWNrtcYCPVWv7qbGnswERcFl9YDP1u01oD7h9YavGv+n 5EmNEFjOkKUBFHFgyEYX3KkNGOjJ/H0dkcAwJQefnysYcGC08CBjyH4x5/D91v4Q63RM EOew== X-Gm-Message-State: APjAAAVd5dOCWNg80EJFQZaqq2OczAGBi97gS8bHHdENQKXLn72W2504 J2Z84T7WHZTWbJCJt4B4pRfml76WLyL1TDosTb1Wf3zrrF2eX4h4zild7+05277NMXjvveYBi0v JOCaRk1cWl3gYeAwOrd+uBstr X-Received: by 2002:adf:e68d:: with SMTP id r13mr425101wrm.199.1572688343384; Sat, 02 Nov 2019 02:52:23 -0700 (PDT) X-Received: by 2002:adf:e68d:: with SMTP id r13mr425079wrm.199.1572688343050; Sat, 02 Nov 2019 02:52:23 -0700 (PDT) Received: from [192.168.42.35] (mob-31-159-163-247.net.vodafone.it. [31.159.163.247]) by smtp.gmail.com with ESMTPSA id y2sm10531537wmy.2.2019.11.02.02.52.21 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 02 Nov 2019 02:52:22 -0700 (PDT) Subject: Re: [PATCH v4 04/17] kvm: x86: Add support for activate/de-activate APICv at runtime To: "Suthikulpanit, Suravee" , "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" Cc: "rkrcmar@redhat.com" , "joro@8bytes.org" , "vkuznets@redhat.com" , "rkagan@virtuozzo.com" , "graf@amazon.com" , "jschoenh@amazon.de" , "karahmed@amazon.de" , "rimasluk@amazon.com" , "Grimm, Jon" References: <1572648072-84536-1-git-send-email-suravee.suthikulpanit@amd.com> <1572648072-84536-5-git-send-email-suravee.suthikulpanit@amd.com> From: Paolo Bonzini Openpgp: preference=signencrypt Message-ID: Date: Sat, 2 Nov 2019 10:52:18 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <1572648072-84536-5-git-send-email-suravee.suthikulpanit@amd.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 01/11/19 23:41, Suthikulpanit, Suravee wrote: > +void kvm_request_apicv_update(struct kvm *kvm, bool activate, ulong bit) > +{ > + if (activate) { > + if (!test_and_clear_bit(bit, &kvm->arch.apicv_deact_msk) || > + !kvm_apicv_activated(kvm)) > + return; > + } else { > + if (test_and_set_bit(bit, &kvm->arch.apicv_deact_msk) || > + kvm_apicv_activated(kvm)) > + return; > + } > + > + kvm_make_all_cpus_request(kvm, KVM_REQ_APICV_UPDATE); > +} > +EXPORT_SYMBOL_GPL(kvm_request_apicv_update); > + It's worth documenting the locking requirements of kvm_request_apicv_update (it can also be negative requirements, such as "don't hold any lock"), because kvm_make_all_cpus_request is a somewhat deadlock-prone API. Again, something I'll check after a more thorough review. Paolo