From patchwork Mon Mar 25 13:16:17 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 13602187 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 88238C54E58 for ; Mon, 25 Mar 2024 13:18:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=CTs/ynF28tWsC4bHIlkWxxPfcLHFUjuGD10CHlWAkbs=; b=fS3nOc1yQ9Vz9t 45RREjMFzMPn2/aq/i3RNDics8EZP+8kTVtYC2la9gzaMRnzdXb3Su2IKd0JWdUeBDLYLwco8nCk8 hS67he63WJ1WTjyiFs8QqCp2oaaOrfdEHCsHCiO/nF8do5eM0dOSdWf1mB0NZfr0OW87vZoefdgjJ 0Ift4NiBVULQYQfD9H6jY7Py57icBUThuGR+NDUi5iXws2f0qisrcGPbXKGGTqaCSsqNRF5P0Z/DT 1B/rY6QTneQkUE1ASb3xp8KPnXnTkdnZoONR+QKsy1yydTvoUkF5xEgJby6gXhQ57xgqTJ0XlQWs4 UCgoRnJH6HHKr82Q+d7Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rokD4-0000000HUrn-230C; Mon, 25 Mar 2024 13:17:54 +0000 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rokCN-0000000HUUc-3pjo for linux-arm-kernel@lists.infradead.org; Mon, 25 Mar 2024 13:17:13 +0000 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-341cf77b86dso627363f8f.2 for ; Mon, 25 Mar 2024 06:17:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1711372630; x=1711977430; darn=lists.infradead.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Y3Qk/DJ4ryR6XkF1VG+aVefQinCL6xUnkD758p4/AkE=; b=yiByVMkHs8xx6RLvq2jX7Nsli6xuwb1xxV2/v6auffHhTe/wATrQ65aQw26+tA9aqy 34XgPSt0QYF70rji6rGd0JNSxC+q5emgFx8HV2QS8Fjn03CIqZOTyU3EC/AKv5dgZqlz WZmn46HTKFNDpgms2vQlC4A0tEuz3rzQL78P2nF+tbqheKyF1Wm3RSVqXT4ebVp544Hz +Grub0iNa55Au1kHR5h/sOQ96+WhGwBAVZVYl4vJgPEUAk+RNHhcyJl/5Sw0CWGY4kHC DTW2JPJRUsHGvO7at3++tKaFoLsb1GfIxkGJq64Bx0wFSQMCvVUy+Vi4Fs0DbS/1/PdY MwMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711372630; x=1711977430; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Y3Qk/DJ4ryR6XkF1VG+aVefQinCL6xUnkD758p4/AkE=; b=fHEjVtgiIMlxmPm4gM+dJXHWXKzNGh9VDBux5suCy+nJSALLr0lnHUSKdCK7Owjvl1 rEm+SOct/2LEnicnOiMYD4T2OzrO5JnFlVAt4bQoLSqe/tWpDk2kIW08GdwDlkWueO6B zz8SdrEHT2nlWn0MQIq5QW0XgRZznuDNBTngq70s2bW4cLab8psJC7OkeHmAN/2sAcih GMEvvcIgac+fcR6gt2EaTS/nnuORV/yaA8ChcJwkDrhcuCIKcO1bWMEfE14m8nT2bXqH 4oDnx1QWVTyNY/aKyM6KzV5SRk+pDu1SVedQ4oCFqjs65Od7FTkesCZ/5cMbKR/7ITkC Woow== X-Forwarded-Encrypted: i=1; AJvYcCVR9t3TVHo2wBsilGQumzoWVjThxrYGzn9Szvw1OMJgxrO9+HY+qbBTK4loPAaqM0IlW4dalmSQ1seFEorczl5Bd2t9j+C7tUrxzDjgz3ImjtqaLVg= X-Gm-Message-State: AOJu0YxnalL879tVemyNoe7KpMBkW82sbF0RrFQp1Jq3ZKpAF+P7knUt M1CAe4urs1cZBw6z/C3y74EksWlrfHgu1MSIwcIwqqql16WwZ/peDn87PRSpyF4= X-Google-Smtp-Source: AGHT+IEM3mk7LpxC1e488PCakNoryx3p0VkwguQJKJ4VUTxIHuAPloCmFrFt9hJMR52EAvFfq4y+Pg== X-Received: by 2002:a5d:604e:0:b0:33e:bfd0:335c with SMTP id j14-20020a5d604e000000b0033ebfd0335cmr6384163wrt.51.1711372630645; Mon, 25 Mar 2024 06:17:10 -0700 (PDT) Received: from brgl-uxlite.home ([2a01:cb1d:75a:e000:861d:8b72:a859:4ce9]) by smtp.gmail.com with ESMTPSA id p11-20020a056000018b00b0033e75e5f280sm9485245wrx.113.2024.03.25.06.17.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 Mar 2024 06:17:10 -0700 (PDT) From: Bartosz Golaszewski To: Marcel Holtmann , Luiz Augusto von Dentz , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Kalle Valo , Bjorn Andersson , Konrad Dybcio , Liam Girdwood , Mark Brown , Catalin Marinas , Will Deacon , Bjorn Helgaas , Bartosz Golaszewski , Saravana Kannan , Geert Uytterhoeven , Arnd Bergmann , Neil Armstrong , Marek Szyprowski , Alex Elder , Srini Kandagatla , Greg Kroah-Hartman , Abel Vesa , Manivannan Sadhasivam , Lukas Wunner , Dmitry Baryshkov Cc: linux-bluetooth@vger.kernel.org, netdev@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-wireless@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org, linux-pm@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH v6 09/16] PCI: hold the rescan mutex when scanning for the first time Date: Mon, 25 Mar 2024 14:16:17 +0100 Message-Id: <20240325131624.26023-10-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20240325131624.26023-1-brgl@bgdev.pl> References: <20240325131624.26023-1-brgl@bgdev.pl> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240325_061712_059768_0CA6F152 X-CRM114-Status: GOOD ( 12.83 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org From: Bartosz Golaszewski With the introduction of PCI device power control drivers that will be able to trigger the port rescan when probing, we need to hold the rescan mutex during the initial pci_host_probe() too or the two could get in each other's way. Signed-off-by: Bartosz Golaszewski --- drivers/pci/probe.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index 1325fbae2f28..1802900328a0 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -3066,7 +3066,9 @@ int pci_host_probe(struct pci_host_bridge *bridge) struct pci_bus *bus, *child; int ret; + pci_lock_rescan_remove(); ret = pci_scan_root_bus_bridge(bridge); + pci_unlock_rescan_remove(); if (ret < 0) { dev_err(bridge->dev.parent, "Scanning root bridge failed"); return ret;