All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: jiri@resnulli.us
Cc: Jakub Kicinski <kuba@kernel.org>,
	jiri@nvidia.com, andrew+netdev@lunn.ch, tariqt@nvidia.com,
	matttbe@kernel.org, leon@kernel.org, daniel.zahka@gmail.com,
	mhiramat@kernel.org, skhan@linuxfoundation.org,
	pabeni@redhat.com, chuck.lever@oracle.com, mbloch@nvidia.com,
	netdev@vger.kernel.org, przemyslaw.kitszel@intel.com,
	davem@davemloft.net, horms@kernel.org, donald.hunter@gmail.com,
	mschmidt@redhat.com, corbet@lwn.net, saeedm@nvidia.com,
	edumazet@google.com, cjubran@nvidia.com, rostedt@goodmis.org,
	mathieu.desnoyers@efficios.com
Subject: Re: [net-next,05/10] devlink: support index-based lookup via bus_name/dev_name handle
Date: Tue, 24 Feb 2026 18:23:17 -0800	[thread overview]
Message-ID: <20260225022317.997901-1-kuba@kernel.org> (raw)
In-Reply-To: <20260223145557.248679-6-jiri@resnulli.us>

This is an AI-generated review of your patch. The human sending this
email says "FYI"

For local reproduction steps see https://netdev-ai.bots.linux.dev/ai-local.html
---
devlink: support index-based lookup via bus_name/dev_name handle

Devlink instances without a backing device use bus_name
"devlink_index" and dev_name set to the decimal index string.
When user space sends this handle, detect the pattern and perform
a direct xarray lookup by index instead of iterating all instances.

> diff --git a/net/devlink/netlink.c b/net/devlink/netlink.c
> index b73cec31089f..127f337489c0 100644
> --- a/net/devlink/netlink.c
> +++ b/net/devlink/netlink.c
> @@ -200,6 +200,15 @@ devlink_get_from_attrs_lock(struct net *net, struct nlattr **attrs,
>  	busname = nla_data(attrs[DEVLINK_ATTR_BUS_NAME]);
>  	devname = nla_data(attrs[DEVLINK_ATTR_DEV_NAME]);
>
> +	if (!strcmp(busname, DEVLINK_INDEX_BUS_NAME)) {
                                  ^^^^^^^^^^^^^^^^^^^^^^^^

Where is DEVLINK_INDEX_BUS_NAME defined? This constant is referenced
here but doesn't appear to be defined anywhere in the codebase.

I searched include/net/, include/uapi/, and net/devlink/ directories and
couldn't find this symbol defined. This will cause a compilation failure.

Based on the commit message mentioning 'devlink_index' as the bus_name
pattern, should this constant be defined somewhere like:

    #define DEVLINK_INDEX_BUS_NAME "devlink_index"

or was it intended to be defined in a previous commit in the series?

> +		if (kstrtoul(devname, 10, &index))
> +			return ERR_PTR(-EINVAL);
> +		devlink = devlinks_xa_lookup_get(net, index);
> +		if (!devlink)
> +			return ERR_PTR(-ENODEV);
> +		goto found;
> +	}
> +
>  	devlinks_xa_for_each_registered_get(net, index, devlink) {
>  		if (strcmp(devlink->bus_name, busname) == 0 &&
>  		    strcmp(devlink->dev_name, devname) == 0)

  parent reply	other threads:[~2026-02-25  2:23 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-23 14:55 [PATCH net-next 00/10] devlink: introduce shared devlink instance for PFs on same chip Jiri Pirko
2026-02-23 14:55 ` [PATCH net-next 01/10] devlink: expose devlink instance index over netlink Jiri Pirko
2026-02-23 14:55 ` [PATCH net-next 02/10] devlink: store bus_name and dev_name pointers in struct devlink Jiri Pirko
2026-02-23 14:55 ` [PATCH net-next 03/10] devlink: avoid extra iterations when found devlink is not registered Jiri Pirko
2026-02-23 14:55 ` [PATCH net-next 04/10] devlink: allow to use devlink index as a command handle Jiri Pirko
2026-02-23 14:55 ` [PATCH net-next 05/10] devlink: support index-based lookup via bus_name/dev_name handle Jiri Pirko
2026-02-25  2:22   ` Jakub Kicinski
2026-02-25  2:23   ` Jakub Kicinski [this message]
2026-02-23 14:55 ` [PATCH net-next 06/10] devlink: add devlink_dev_driver_name() helper and use it in trace events Jiri Pirko
2026-02-25  2:23   ` [net-next,06/10] " Jakub Kicinski
2026-02-23 14:55 ` [PATCH net-next 07/10] devlink: allow devlink instance allocation without a backing device Jiri Pirko
2026-02-25  2:23   ` [net-next,07/10] " Jakub Kicinski
2026-02-23 14:55 ` [PATCH net-next 08/10] devlink: introduce shared devlink instance for PFs on same chip Jiri Pirko
2026-02-25  2:23   ` [net-next,08/10] " Jakub Kicinski
2026-02-23 14:55 ` [PATCH net-next 09/10] documentation: networking: add shared devlink documentation Jiri Pirko
2026-02-25  2:23   ` [net-next,09/10] " Jakub Kicinski
2026-02-23 14:55 ` [PATCH net-next 10/10] net/mlx5: Add a shared devlink instance for PFs on same chip Jiri Pirko

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=20260225022317.997901-1-kuba@kernel.org \
    --to=kuba@kernel.org \
    --cc=andrew+netdev@lunn.ch \
    --cc=chuck.lever@oracle.com \
    --cc=cjubran@nvidia.com \
    --cc=corbet@lwn.net \
    --cc=daniel.zahka@gmail.com \
    --cc=davem@davemloft.net \
    --cc=donald.hunter@gmail.com \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=jiri@nvidia.com \
    --cc=jiri@resnulli.us \
    --cc=leon@kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=matttbe@kernel.org \
    --cc=mbloch@nvidia.com \
    --cc=mhiramat@kernel.org \
    --cc=mschmidt@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=przemyslaw.kitszel@intel.com \
    --cc=rostedt@goodmis.org \
    --cc=saeedm@nvidia.com \
    --cc=skhan@linuxfoundation.org \
    --cc=tariqt@nvidia.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.