Received: by 2002:a05:6358:d09b:b0:dc:cd0c:909e with SMTP id jc27csp2034361rwb; Thu, 17 Nov 2022 05:48:50 -0800 (PST) X-Google-Smtp-Source: AA0mqf7ZyYsPp2m8DXgC0I15jlhNRsxaNnM9OlhR+oIi75V07BflzxuHrvRfgXU3dchn7gsMTDmt X-Received: by 2002:a17:906:2896:b0:7a1:e4c2:fb0a with SMTP id o22-20020a170906289600b007a1e4c2fb0amr2252210ejd.101.1668692930351; Thu, 17 Nov 2022 05:48:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1668692930; cv=none; d=google.com; s=arc-20160816; b=BQO3+L6VgDfyCG3FsSKWen55ntLWkFYXvx/XmOEq6EZTCHHisklM4fGk+YEFQBcGkK 8VD9fXJHBdXiCtg6s3PWILkCcSMrN4kBFnYpJmDZRdLr7FqGx3R9AUWM2cNCyWFpk/18 e8ENIjyZgD5C8uYiR5JcIf0CmMMLMJT76LaoqjmPRTnxMz2sDT4gO1XP75YElS3Rh8Ht akYQdpWDg2PhbqclxHQbQGP/YI3sMhOKbWhrFFFwQSuzA6CGF/HhK70Akjo/bg6EU5Rg 2OVXezun9ApMT/q301eJv9H+G3Bae+fIbQQvhxEmQh+bWrQVZP5sQ2qsWKZ9s1PnIjak cs3A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:feedback-id:subject:content-transfer-encoding :in-reply-to:from:references:cc:to:content-language:user-agent :mime-version:date:message-id; bh=u90r3IBVvDglNfzYGf2kgZRdfOQksvUAcdUEaHWPNCQ=; b=DSolM1LU6mUxNaQ33kJ0WYaeNdcwgFszmGCEfn53w1JtT8vnlJ690r6PmQysNBoL9r cQkzUyrwBDi4gFohgc1RxUS282+Vi1xowMGDSVrqhhOy/PZ/sGNMUgk5QjX0Qoql1QAH yn8MGvryAzV1b9ORmC6t+oYdW2lg+w4ml5ElZKIsl1ZnoCdDXdKcplwB8m2YbZgQ7QWJ kPRks7Wl12EJtX44jeDGJLJFxOksNGn/0mrPjB6/ozw58yswoZqkYyXpKM4Lx0K9XVUy Nu+ktYMy/38n+46/uC2FFHDcKvXGQJkGUVTC8vvi9PIQ/bt3/xTvs0iMNv5kxm/GWpTN gs9g== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=cantab.net Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y2-20020a056402440200b00457205ae2b5si1006625eda.358.2022.11.17.05.48.28; Thu, 17 Nov 2022 05:48:50 -0800 (PST) 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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=cantab.net Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239415AbiKQNK0 (ORCPT + 92 others); Thu, 17 Nov 2022 08:10:26 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60228 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234533AbiKQNKY (ORCPT ); Thu, 17 Nov 2022 08:10:24 -0500 X-Greylist: delayed 907 seconds by postgrey-1.37 at lindbergh.monkeyblade.net; Thu, 17 Nov 2022 05:10:24 PST Received: from queue02b.mail.zen.net.uk (queue02b.mail.zen.net.uk [212.23.3.237]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 09540686AE for ; Thu, 17 Nov 2022 05:10:23 -0800 (PST) Received: from [212.23.1.3] (helo=smarthost01b.sbp.mail.zen.net.uk) by queue02b.mail.zen.net.uk with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oveQF-00052j-5S for linux-kernel@vger.kernel.org; Thu, 17 Nov 2022 12:55:15 +0000 Received: from [82.70.146.41] (helo=pear.davidvrabel.org.uk) by smarthost01b.sbp.mail.zen.net.uk with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oveQ0-0003J5-PK; Thu, 17 Nov 2022 12:55:00 +0000 Received: from apple.davidvrabel.org.uk ([82.70.146.43]) by pear.davidvrabel.org.uk with esmtp (Exim 4.94.2) (envelope-from ) id 1ovePr-001FlP-Bo; Thu, 17 Nov 2022 12:55:00 +0000 Message-ID: <0afe3f35-1b25-d1c6-89bb-8dae7a4070e9@cantab.net> Date: Thu, 17 Nov 2022 12:54:51 +0000 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Content-Language: en-GB To: =?UTF-8?Q?Marek_Marczykowski-G=c3=b3recki?= , linux-kernel@vger.kernel.org Cc: Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Jan Beulich , "moderated list:XEN HYPERVISOR INTERFACE" References: <20221117114122.1588338-1-marmarek@invisiblethingslab.com> From: David Vrabel In-Reply-To: <20221117114122.1588338-1-marmarek@invisiblethingslab.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-SA-Exim-Connect-IP: 82.70.146.43 X-SA-Exim-Mail-From: dvrabel@cantab.net X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,NICE_REPLY_A, RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS, SPF_SOFTFAIL autolearn=no autolearn_force=no version=3.4.6 Subject: Re: [PATCH] xen-pciback: Consider MSI-X enabled only when MASKALL bit is cleared X-SA-Exim-Version: 4.2.1 (built Sat, 13 Feb 2021 17:57:42 +0000) X-SA-Exim-Scanned: Yes (on pear.davidvrabel.org.uk) X-Originating-smarthost01b-IP: [82.70.146.41] Feedback-ID: 82.70.146.41 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 17/11/2022 11:41, Marek Marczykowski-Górecki wrote: > Linux enables MSI-X before disabling INTx, but keeps MSI-X masked until > the table is filled. Then it disables INTx just before clearing MASKALL > bit. Currently this approach is rejected by xen-pciback. > Allow setting PCI_MSIX_FLAGS_ENABLE while INTx is still enabled as long > as PCI_MSIX_FLAGS_MASKALL is set too. The use of MSI-X interrupts is conditional on only the MSI-X Enable bit. Setting MSI-X Enable effectively overrides the Interrupt Disable bit in the Command register. PCIe 6.0.1 section 7.7.2.2. "MSI-X Enable ... is prohibited from using INTx interrupts (if implemented)." And there is similar wording for MSI Enable. I think you need to shuffle the checks for MSI/MSI-X in xen_pcibk_get_interrupt_type() so they are _before_ the check of the Interrupt Disable bit in the Command register. David