All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Nícolas F. R. A. Prado" <nfraprado@collabora.com>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	 "Rafael J. Wysocki" <rafael@kernel.org>,
	 Saravana Kannan <saravanak@google.com>
Cc: kernel@collabora.com, linux-kernel@vger.kernel.org,
	"Jon Hunter" <jonathanh@nvidia.com>,
	"Nícolas F. R. A. Prado" <nfraprado@collabora.com>
Subject: [PATCH v2 2/2] driver core: Don't log intentional skip of device link creation as error
Date: Tue, 15 Oct 2024 17:27:18 -0400	[thread overview]
Message-ID: <20241015-fwdevlink-probed-no-err-v2-2-756c5e9cf55c@collabora.com> (raw)
In-Reply-To: <20241015-fwdevlink-probed-no-err-v2-0-756c5e9cf55c@collabora.com>

Commit ac66c5bbb437 ("driver core: Allow only unprobed consumers for
SYNC_STATE_ONLY device links") introduced an early return in
device_link_add() to prevent useless links from being created. However
the calling function fw_devlink_create_devlink() unconditionally prints
an error if device_link_add() didn't create a link, even in this case
where it is intentionally skipping the link creation.

Add a check to detect if the link wasn't created intentionally and in
that case don't log an error.

Fixes: ac66c5bbb437 ("driver core: Allow only unprobed consumers for SYNC_STATE_ONLY device links")
Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
---
 drivers/base/core.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/base/core.c b/drivers/base/core.c
index 88a47a6e26d69aacbaeb094c42be4fcf9dde4a6b..fc992b5a2f295d6bb23f50d32e5fddc59b32b840 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -2189,8 +2189,11 @@ static int fw_devlink_create_devlink(struct device *con,
 		}
 
 		if (con != sup_dev && !device_link_add(con, sup_dev, flags)) {
-			dev_err(con, "Failed to create device link (0x%x) with %s\n",
-				flags, dev_name(sup_dev));
+			if (device_link_is_useless(flags, con))
+				dev_dbg(con, "Skipping device link creation for probed device\n");
+			else
+				dev_err(con, "Failed to create device link (0x%x) with %s\n",
+					flags, dev_name(sup_dev));
 			ret = -EINVAL;
 		}
 

-- 
2.47.0


  parent reply	other threads:[~2024-10-15 21:27 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-15 21:27 [PATCH v2 0/2] driver core: Avoid false-positive errors for intentionally skipped links Nícolas F. R. A. Prado
2024-10-15 21:27 ` [PATCH v2 1/2] driver core: Create device_link_is_useless() helper Nícolas F. R. A. Prado
2024-10-15 21:27 ` Nícolas F. R. A. Prado [this message]
2024-10-16  5:37   ` [PATCH v2 2/2] driver core: Don't log intentional skip of device link creation as error Greg Kroah-Hartman
2024-10-16 11:19 ` [PATCH v2 0/2] driver core: Avoid false-positive errors for intentionally skipped links Jon Hunter
2024-10-23 20:03 ` Nícolas F. R. A. Prado

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241015-fwdevlink-probed-no-err-v2-2-756c5e9cf55c@collabora.com \
    --to=nfraprado@collabora.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jonathanh@nvidia.com \
    --cc=kernel@collabora.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rafael@kernel.org \
    --cc=saravanak@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.