From patchwork Wed Jul 27 18:50:09 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Saravana Kannan X-Patchwork-Id: 12930730 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 42E15C19F21 for ; Wed, 27 Jul 2022 19:09:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235866AbiG0TJs (ORCPT ); Wed, 27 Jul 2022 15:09:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53700 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236723AbiG0TJQ (ORCPT ); Wed, 27 Jul 2022 15:09:16 -0400 Received: from mail-yw1-x114a.google.com (mail-yw1-x114a.google.com [IPv6:2607:f8b0:4864:20::114a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2034F62A47 for ; Wed, 27 Jul 2022 11:50:22 -0700 (PDT) Received: by mail-yw1-x114a.google.com with SMTP id 00721157ae682-3225b644be1so1676397b3.1 for ; Wed, 27 Jul 2022 11:50:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=6PMRC4+7ETZ6O5YvP3kBSLPeIUc34qIh1gO+2nFmWRo=; b=STPIcS3r2zaNxA7E/SkB84p7lfSdY7kdH/9tNvpaMzSSN00NwQMg3GYOWYlnYHebEw dMGQ1J91PpKVadenfIq5DclEZf4jsu47mwqHouONe7IY3flpoZWcwtOuipCkUgIuZhit d9tl/VwTZN/CWPNwrUx1oVGm8T+biHUfabWMcje4C0ng/f+uTVzgzBY+P6pNDRHyky9K kqzdmm5tt3M6Tp+rfLhRO5SQbGfAr/n/qnU0fenyBvchdXCGJUm/TymA34EiXmuTozO3 e3oiIP1EfCw1k4mCbjWkHYNKvdurnAKnXrpUFX1+Ch77LTzGUqubaU9RSw6tzBsHMZDr S5sw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=6PMRC4+7ETZ6O5YvP3kBSLPeIUc34qIh1gO+2nFmWRo=; b=Ymz8mI0ZAufCRap+4gynhvjc7XahlPYg01lp55KeYRF47x3erlmEpwQk1/XU2o8ttX nUbs2HeuR5o94gWVRO+fr1tHwV4hykVKEQUv3NmXeJ4SeZeuUXAS8qYiqIgm9p+vdVWG RrH/qQM895uKFT4ARvejGo7gxS4od4d1SIOmWns6jN9lnKluUxmnH5asMh2m0Kb92S1P cNJ7Kwwqg8zika//+XXeHb0UPwVZePYghzQV0ffcjxo957cx8xzonfKezLPR25lm5AF/ mAPXVpBI2EcJjEEHVugXLH+syn65cfBILQ+wGWy3kEE31u1Pb+APIkSCvu2KheKg5Ad9 VYSw== X-Gm-Message-State: AJIora9hteQafdW51Kf2Pv3/Q75+0VXrtyAej9gv3QEiC8GgjQ4sOaqR gA6G7YXICeye6jC9igNxwh352QV7IUiI0iQ= X-Google-Smtp-Source: AGRyM1t0kGe85rVKFJazceKwp/HRO3A1D57nD2R5Pm6B9VnNjAno0gRxgXRubEdu4HVVOcO/HvgmF9kn46gj2PM= X-Received: from saravanak.san.corp.google.com ([2620:15c:2d:3:40ee:bae0:a4fd:c75b]) (user=saravanak job=sendgmr) by 2002:a25:d4a:0:b0:671:6d11:d14e with SMTP id 71-20020a250d4a000000b006716d11d14emr9175171ybn.479.1658947821364; Wed, 27 Jul 2022 11:50:21 -0700 (PDT) Date: Wed, 27 Jul 2022 11:50:09 -0700 In-Reply-To: <20220727185012.3255200-1-saravanak@google.com> Message-Id: <20220727185012.3255200-2-saravanak@google.com> Mime-Version: 1.0 References: <20220727185012.3255200-1-saravanak@google.com> X-Mailer: git-send-email 2.37.1.359.gd136c6c3e2-goog Subject: [PATCH v1 1/3] Revert "driver core: Delete driver_deferred_probe_check_state()" From: Saravana Kannan To: Greg Kroah-Hartman , "Rafael J. Wysocki" , Kevin Hilman , Ulf Hansson , Pavel Machek , Len Brown , Andrew Lunn , Heiner Kallweit , Russell King , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: Saravana Kannan , naresh.kamboju@linaro.org, kernel-team@android.com, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, netdev@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org This reverts commit 9cbffc7a59561be950ecc675d19a3d2b45202b2b. There are a few more issues to fix that have been reported in the thread for the original series [1]. We'll need to fix those before this will work. So, revert it for now. [1] - https://lore.kernel.org/lkml/20220601070707.3946847-1-saravanak@google.com/ Signed-off-by: Saravana Kannan Reviewed-by: Tony Lindgren Tested-by: Tony Lindgren --- drivers/base/dd.c | 30 ++++++++++++++++++++++++++++++ include/linux/device/driver.h | 1 + 2 files changed, 31 insertions(+) diff --git a/drivers/base/dd.c b/drivers/base/dd.c index 70f79fc71539..a8916d1bfdcb 100644 --- a/drivers/base/dd.c +++ b/drivers/base/dd.c @@ -274,12 +274,42 @@ static int __init deferred_probe_timeout_setup(char *str) } __setup("deferred_probe_timeout=", deferred_probe_timeout_setup); +/** + * driver_deferred_probe_check_state() - Check deferred probe state + * @dev: device to check + * + * Return: + * * -ENODEV if initcalls have completed and modules are disabled. + * * -ETIMEDOUT if the deferred probe timeout was set and has expired + * and modules are enabled. + * * -EPROBE_DEFER in other cases. + * + * Drivers or subsystems can opt-in to calling this function instead of directly + * returning -EPROBE_DEFER. + */ +int driver_deferred_probe_check_state(struct device *dev) +{ + if (!IS_ENABLED(CONFIG_MODULES) && initcalls_done) { + dev_warn(dev, "ignoring dependency for device, assuming no driver\n"); + return -ENODEV; + } + + if (!driver_deferred_probe_timeout && initcalls_done) { + dev_warn(dev, "deferred probe timeout, ignoring dependency\n"); + return -ETIMEDOUT; + } + + return -EPROBE_DEFER; +} +EXPORT_SYMBOL_GPL(driver_deferred_probe_check_state); + static void deferred_probe_timeout_work_func(struct work_struct *work) { struct device_private *p; fw_devlink_drivers_done(); + driver_deferred_probe_timeout = 0; driver_deferred_probe_trigger(); flush_work(&deferred_probe_work); diff --git a/include/linux/device/driver.h b/include/linux/device/driver.h index 7acaabde5396..2114d65b862f 100644 --- a/include/linux/device/driver.h +++ b/include/linux/device/driver.h @@ -242,6 +242,7 @@ driver_find_device_by_acpi_dev(struct device_driver *drv, const void *adev) extern int driver_deferred_probe_timeout; void driver_deferred_probe_add(struct device *dev); +int driver_deferred_probe_check_state(struct device *dev); void driver_init(void); /** From patchwork Wed Jul 27 18:50:10 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Saravana Kannan X-Patchwork-Id: 12930731 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id CA3C3C19F21 for ; Wed, 27 Jul 2022 19:09:51 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236038AbiG0TJt (ORCPT ); Wed, 27 Jul 2022 15:09:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51128 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236844AbiG0TJR (ORCPT ); Wed, 27 Jul 2022 15:09:17 -0400 Received: from mail-yb1-xb49.google.com (mail-yb1-xb49.google.com [IPv6:2607:f8b0:4864:20::b49]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BE7DD6AA2C for ; Wed, 27 Jul 2022 11:50:24 -0700 (PDT) Received: by mail-yb1-xb49.google.com with SMTP id s6-20020a25c206000000b0066ebb148de6so14008196ybf.15 for ; Wed, 27 Jul 2022 11:50:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=0gBJh1/DX5M6n5W65xmbWPerC4xN3qFPSKf5chwOdiw=; b=bg8ph5OtD7AxG1zxeIOzd4c3YvuKJJwgTI0Hgqzl0BLzrOKqjOjkJROWso5PVvlwaw SKFanteSKc7afiyOqABcwFH+hyZFpEQAOqasHcqh2f7L+Bdn+8xIYU+sBCOKIrfuO6vp FADBwkrq/HXNQGrAFEpCfdTvNxN8H4jPOptrzVphWdjRaTQHxjniaTf7OmRYFPnKFrO/ zUbzV2HK8KGT3gR4BAIFqQtcSk3OB5PIqZkQQLX3UNakY3l4kaXGHklmrW+5TWobbdBt SQhKYvoAqOFXhYx6Xbyj2YbePvXd9wsyZwbIquWXadlDeNtWsPMCAFj+S5VHWE/2enUi JMQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=0gBJh1/DX5M6n5W65xmbWPerC4xN3qFPSKf5chwOdiw=; b=X/+NSttWoGSpHs6rXflH1CpjYcRw1M8G7efEgtXFx+gcdcxCDoDJI1O6UsX7vCRbbK CBqUDFgUNaDA3d1NP+vjVOU+s323naQXOwq/qKF3QGQR2ZlaSJXyaiwKtPSzUm0oFQ/C YIgnVDdA/2TmMrXfFW6HugMVy6UZQYBMrcmZYeYEAGsjkAZEacCzhH9zmqgl0ZlNafcj reH14v4jd5NZHBJZLVYTQE1Ryi5HriedcXXNG+dTMobomrkU81PAeowD3O1Lo0YR6xvg xNIurtW4aDbfB192ohomc2xfdrALuPamHjvQXjNe/pX4c0tcM691p55gTKtcfd13M1K/ qKmw== X-Gm-Message-State: AJIora+2t9EawTedcEV0iKDBKQ2GPtofKaeQy8jQCdLGwDlyjOhlIYts ngTTR1TbZEP+qRD9CldXBbe8nOqipKZzQc0= X-Google-Smtp-Source: AGRyM1vw9acn4WN7zKTrz4jHGTc3N/jAqDblTKq2t1lpN8G1rUtuPz0iWs9j4VcBcTn0CpXqkKAHxpdMjKm+bSs= X-Received: from saravanak.san.corp.google.com ([2620:15c:2d:3:40ee:bae0:a4fd:c75b]) (user=saravanak job=sendgmr) by 2002:a81:54c5:0:b0:31c:7731:e1ac with SMTP id i188-20020a8154c5000000b0031c7731e1acmr20280110ywb.190.1658947823995; Wed, 27 Jul 2022 11:50:23 -0700 (PDT) Date: Wed, 27 Jul 2022 11:50:10 -0700 In-Reply-To: <20220727185012.3255200-1-saravanak@google.com> Message-Id: <20220727185012.3255200-3-saravanak@google.com> Mime-Version: 1.0 References: <20220727185012.3255200-1-saravanak@google.com> X-Mailer: git-send-email 2.37.1.359.gd136c6c3e2-goog Subject: [PATCH v1 2/3] Revert "net: mdio: Delete usage of driver_deferred_probe_check_state()" From: Saravana Kannan To: Greg Kroah-Hartman , "Rafael J. Wysocki" , Kevin Hilman , Ulf Hansson , Pavel Machek , Len Brown , Andrew Lunn , Heiner Kallweit , Russell King , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: Saravana Kannan , naresh.kamboju@linaro.org, kernel-team@android.com, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, netdev@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org This reverts commit f8217275b57aa48d98cc42051c2aac34152718d6. There are a few more issues to fix that have been reported in the thread for the original series [1]. We'll need to fix those before this will work. So, revert it for now. [1] - https://lore.kernel.org/lkml/20220601070707.3946847-1-saravanak@google.com/ Signed-off-by: Saravana Kannan Reviewed-by: Tony Lindgren --- drivers/net/mdio/fwnode_mdio.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/mdio/fwnode_mdio.c b/drivers/net/mdio/fwnode_mdio.c index 3e79c2c51929..1c1584fca632 100644 --- a/drivers/net/mdio/fwnode_mdio.c +++ b/drivers/net/mdio/fwnode_mdio.c @@ -47,7 +47,9 @@ int fwnode_mdiobus_phy_device_register(struct mii_bus *mdio, * just fall back to poll mode */ if (rc == -EPROBE_DEFER) - rc = -ENODEV; + rc = driver_deferred_probe_check_state(&phy->mdio.dev); + if (rc == -EPROBE_DEFER) + return rc; if (rc > 0) { phy->irq = rc; From patchwork Wed Jul 27 18:50:11 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Saravana Kannan X-Patchwork-Id: 12930732 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id E3E9BC04A68 for ; Wed, 27 Jul 2022 19:09:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236109AbiG0TJu (ORCPT ); Wed, 27 Jul 2022 15:09:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52336 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236888AbiG0TJS (ORCPT ); Wed, 27 Jul 2022 15:09:18 -0400 Received: from mail-yb1-xb4a.google.com (mail-yb1-xb4a.google.com [IPv6:2607:f8b0:4864:20::b4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 252ED67C86 for ; Wed, 27 Jul 2022 11:50:27 -0700 (PDT) Received: by mail-yb1-xb4a.google.com with SMTP id u6-20020a25b7c6000000b00670862c5b16so13994307ybj.12 for ; Wed, 27 Jul 2022 11:50:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=BEk69dNG70BOHgb0SXLFWzzFpDyu+7tq1YolDhZdyzE=; b=B7uDYX/Cr97zFSRCvB7/fn1gKg5skiOo3orS627VXpMcYo8QEZ7oIrvYBjLdXKLvyw oxhx2F1iCRsyE1gIZ2hQTPsAZ46+3sYZ0ox/pMmaN1heCLPhTeZtrSP1HwOFBi+LY5w+ O36Puictr1H9b2lkfo4jRR0Mo/xQr3nN7QsINYg+iKLGVrHaFtsRNdO2iKXWdHOJB+yI aOHHjRJdiN1hTtvuovOpKu1BWxPbokvLEXrXizIHGlzJb61Z0JET3FdTJLeRJ+YjUkgx ZtsTrJIP/RTGLKgls6kpdVgkFafVspj0h5Ad++NOeAflXkUYcUYlzfpi2vBLdxNvt1Jf 7KOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=BEk69dNG70BOHgb0SXLFWzzFpDyu+7tq1YolDhZdyzE=; b=tT5t3XumiK8xhjum8FAbgNeBWUD2hG9qSKqjOy/9lKQeB4SEWH/euyBnrZKofztgZP 1fEGripyQbjvm9/PSnmlBYI7WBbisXzsfmL5i6lTuv04rijo62ANX5JJbCGhFgz/Cr0p WHEtbq3Y96pO0ldIGFzraTbAAALbevdk70PkHNH11c6AN6iUY8Kdc9Oj23Ppk8c80+2D msqlFRje9uRpro+sCF3EwGozMhvzN93nfUiBBLb35TE8dwfxwC8sgM0RfmIbPOiJaMHL m5oyXNILojbEO1gH4thIf02gECT/NbUdL6DoSXoaPgchuNDp5+URRY/HK/pSWaYWgdpp DcGQ== X-Gm-Message-State: AJIora/JpC3611P482jWqZc4EMDz8BtFREmW80cEtBtNm4O+i8qfejNS 5O6T1bQM1BpDNH9i2TM+5XLx9ve43K+sSIE= X-Google-Smtp-Source: AGRyM1vBbGCvhJnuNcqNxmyfgvBqU63X92ObJ+fmmE6nsBM1EgRJPhCmvWH4pzIt7pOBmOkC8sjtqMGkHE01FH0= X-Received: from saravanak.san.corp.google.com ([2620:15c:2d:3:40ee:bae0:a4fd:c75b]) (user=saravanak job=sendgmr) by 2002:a5b:502:0:b0:66e:206d:15f6 with SMTP id o2-20020a5b0502000000b0066e206d15f6mr18796823ybp.160.1658947826888; Wed, 27 Jul 2022 11:50:26 -0700 (PDT) Date: Wed, 27 Jul 2022 11:50:11 -0700 In-Reply-To: <20220727185012.3255200-1-saravanak@google.com> Message-Id: <20220727185012.3255200-4-saravanak@google.com> Mime-Version: 1.0 References: <20220727185012.3255200-1-saravanak@google.com> X-Mailer: git-send-email 2.37.1.359.gd136c6c3e2-goog Subject: [PATCH v1 3/3] Revert "PM: domains: Delete usage of driver_deferred_probe_check_state()" From: Saravana Kannan To: Greg Kroah-Hartman , "Rafael J. Wysocki" , Kevin Hilman , Ulf Hansson , Pavel Machek , Len Brown , Andrew Lunn , Heiner Kallweit , Russell King , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: Saravana Kannan , naresh.kamboju@linaro.org, kernel-team@android.com, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, netdev@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org This reverts commit 5a46079a96451cfb15e4f5f01f73f7ba24ef851a. There are a few more issues to fix that have been reported in the thread for the original series [1]. We'll need to fix those before this will work. So, revert it for now. [1] - https://lore.kernel.org/lkml/20220601070707.3946847-1-saravanak@google.com/ Signed-off-by: Saravana Kannan Acked-by: Ulf Hansson Reviewed-by: Tony Lindgren Tested-by: Tony Lindgren --- drivers/base/power/domain.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c index 3e86772d5fac..739e52cd4aba 100644 --- a/drivers/base/power/domain.c +++ b/drivers/base/power/domain.c @@ -2730,7 +2730,7 @@ static int __genpd_dev_pm_attach(struct device *dev, struct device *base_dev, mutex_unlock(&gpd_list_lock); dev_dbg(dev, "%s() failed to find PM domain: %ld\n", __func__, PTR_ERR(pd)); - return -ENODEV; + return driver_deferred_probe_check_state(base_dev); } dev_dbg(dev, "adding to PM domain %s\n", pd->name);