From patchwork Tue Jan 17 14:21:56 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marc Zyngier X-Patchwork-Id: 716207 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3v2sk611cNz9sR9 for ; Wed, 18 Jan 2017 01:22:06 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750849AbdAQOWE (ORCPT ); Tue, 17 Jan 2017 09:22:04 -0500 Received: from foss.arm.com ([217.140.101.70]:53296 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750913AbdAQOWD (ORCPT ); Tue, 17 Jan 2017 09:22:03 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id BF4E7707; Tue, 17 Jan 2017 06:22:02 -0800 (PST) Received: from approximate.cambridge.arm.com (approximate.cambridge.arm.com [10.1.207.16]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 9C3A83F24D; Tue, 17 Jan 2017 06:22:01 -0800 (PST) From: Marc Zyngier To: linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org Cc: Bjorn Helgaas , Thomas Gleixner , stable@vger.kernel.org, Sebastian Andrzej Siewior , Duc Dang Subject: [PATCH v2] PCI/MSI: pci-xgene-msi: Fix CPU hotplug registration handling Date: Tue, 17 Jan 2017 14:21:56 +0000 Message-Id: <1484662916-9549-1-git-send-email-marc.zyngier@arm.com> X-Mailer: git-send-email 2.1.4 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org The conversion to the new hotplug state machine introduced a regression where a successful hotplug registration would be treated as an error, effectively disabling the MSI driver forever. Fix it by doing the proper check on the return value. Cc: Bjorn Helgaas Cc: Thomas Gleixner Cc: stable@vger.kernel.org Fixes: 9c248f8896e6 ("PCI/xgene-msi: Convert to hotplug state machine") Acked-by: Sebastian Andrzej Siewior Tested-by: Duc Dang Signed-off-by: Marc Zyngier --- * From v1: added Sebastian's Ack and Duc's Tested-by, cc'ing linux-pci drivers/pci/host/pci-xgene-msi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/host/pci-xgene-msi.c b/drivers/pci/host/pci-xgene-msi.c index 1f38d08..f1b633b 100644 --- a/drivers/pci/host/pci-xgene-msi.c +++ b/drivers/pci/host/pci-xgene-msi.c @@ -517,7 +517,7 @@ static int xgene_msi_probe(struct platform_device *pdev) rc = cpuhp_setup_state(CPUHP_AP_ONLINE_DYN, "pci/xgene:online", xgene_msi_hwirq_alloc, NULL); - if (rc) + if (rc < 0) goto err_cpuhp; pci_xgene_online = rc; rc = cpuhp_setup_state(CPUHP_PCI_XGENE_DEAD, "pci/xgene:dead", NULL,