From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F3F33C35263 for ; Wed, 16 Sep 2020 07:54:27 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id AC14321D90 for ; Wed, 16 Sep 2020 07:54:27 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=walle.cc header.i=@walle.cc header.b="hZYcEooi" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726385AbgIPHyW (ORCPT ); Wed, 16 Sep 2020 03:54:22 -0400 Received: from ssl.serverraum.org ([176.9.125.105]:49189 "EHLO ssl.serverraum.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726196AbgIPHyW (ORCPT ); Wed, 16 Sep 2020 03:54:22 -0400 Received: from ssl.serverraum.org (web.serverraum.org [172.16.0.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ssl.serverraum.org (Postfix) with ESMTPSA id DFEDB22F00; Wed, 16 Sep 2020 09:54:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=walle.cc; s=mail2016061301; t=1600242857; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=/mrV4ooFGnJh2/RwC1ApcYKUUoJS8TkPIKcSBJOevMI=; b=hZYcEooibPlvGYZsIy6M1JnuIGdhF2nyPQr1geOw5eoiHM1PLx4w1uqnELsVgZaNK9oHSm J6p7MyQNttvX9ylL+BtvV4J5f43XLjVJl9to5980o1I2bsOOnMfHmjEWfJQwKTEZ7audCW GI7REFPaQWuDo39bLZ59wHfcBEUMegs= MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Wed, 16 Sep 2020 09:54:10 +0200 From: Michael Walle To: Rob Herring Cc: "Gross, Andy" , Bjorn Helgaas , Bjorn Andersson , Dilip Kota , Fabio Estevam , Gustavo Pimentel , Kunihiko Hayashi , Richard Zhu , Jerome Brunet , Jesper Nilsson , Jingoo Han , Jon Hunter , Jonathan Chocron , Sascha Hauer , Kukjin Kim , Kevin Hilman , Kishon Vijay Abraham I , Krzysztof Kozlowski , Lucas Stach , "open list:ARM/Amlogic Meson..." , linux-arm-kernel@axis.com, linux-arm-kernel , linux-arm-msm , NXP Linux Team , linux-omap , PCI , linux-samsung-soc , linux-tegra , Lorenzo Pieralisi , Murali Karicheri , Martin Blumenstingl , Marc Zyngier , Neil Armstrong , Pratyush Anand , Sascha Hauer , Shawn Guo , Shawn Guo , Song Xiaowei , Stanimir Varbanov , Thierry Reding , Wangbinghui , Masahiro Yamada , Yue Wang Subject: Re: [PATCH v2 00/40] PCI: dwc: Driver clean-ups In-Reply-To: References: <20200821035420.380495-1-robh@kernel.org> <20200915091218.28737-1-michael@walle.cc> User-Agent: Roundcube Webmail/1.4.8 Message-ID: <346b694e43b1b6b86e4f3164e6589d25@walle.cc> X-Sender: michael@walle.cc Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Am 2020-09-16 00:02, schrieb Rob Herring: > Can you try this? The link up check seemed unnecessary as it is racy. > What happens if the link goes down right after checking? That's the > only thing in the change that sticks out. > > diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c > b/drivers/pci/controller/dwc/pcie-designware-host.c > index 317ff512f8df..afee1a0e8883 100644 > --- a/drivers/pci/controller/dwc/pcie-designware-host.c > +++ b/drivers/pci/controller/dwc/pcie-designware-host.c > @@ -441,6 +441,9 @@ static void __iomem > *dw_pcie_other_conf_map_bus(struct pci_bus *bus, > struct pcie_port *pp = bus->sysdata; > struct dw_pcie *pci = to_dw_pcie_from_pp(pp); > > + if (!dw_pcie_link_up(pci)) > + return NULL; > + > busdev = PCIE_ATU_BUS(bus->number) | > PCIE_ATU_DEV(PCI_SLOT(devfn)) | > PCIE_ATU_FUNC(PCI_FUNC(devfn)); This will fix the issue. -michael