All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Danilo Krummrich" <dakr@kernel.org>
To: "Zijun Hu" <zijun_hu@icloud.com>
Cc: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Dave Ertman" <david.m.ertman@intel.com>,
	"Ira Weiny" <ira.weiny@intel.com>,
	"Leon Romanovsky" <leon@kernel.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	<linux-kernel@vger.kernel.org>,
	"Zijun Hu" <zijun.hu@oss.qualcomm.com>
Subject: Re: [PATCH v2] driver core: auxiliary bus: Optimize logic of auxiliary_match_id()
Date: Wed, 03 Sep 2025 13:46:58 +0200	[thread overview]
Message-ID: <DCJ52UB7OIXR.3MS54RJKMI4OK@kernel.org> (raw)
In-Reply-To: <20250903-fix_auxbus-v2-1-3eae8374fd65@oss.qualcomm.com>

On Wed Sep 3, 2025 at 1:37 PM CEST, Zijun Hu wrote:
> diff --git a/drivers/base/auxiliary.c b/drivers/base/auxiliary.c
> index 12ffdd8437567f282374bbf3775d9de7ca0dc4c7..ed2537cf3b048149e784e5a582631db549050734 100644
> --- a/drivers/base/auxiliary.c
> +++ b/drivers/base/auxiliary.c
> @@ -171,17 +171,18 @@
>  static const struct auxiliary_device_id *auxiliary_match_id(const struct auxiliary_device_id *id,
>  							    const struct auxiliary_device *auxdev)
>  {
> -	for (; id->name[0]; id++) {
> -		const char *p = strrchr(dev_name(&auxdev->dev), '.');
> -		int match_size;
> +	const char *auxdev_name = dev_name(&auxdev->dev);

I feel like this is a bit too ambitious. Using dev_name() directly for the calls
below seems more obvious to me.

Yes, dev_name() contains a branch, but I'm pretty sure the compiler optimizes
them away for subsequent calls anyways.

> +	const char *p = strrchr(auxdev_name, '.');
> +	int match_size;
>  
> -		if (!p)
> -			continue;
> -		match_size = p - dev_name(&auxdev->dev);
> +	if (!p)
> +		return NULL;
> +	match_size = p - auxdev_name;
>  
> +	for (; id->name[0]; id++) {
>  		/* use dev_name(&auxdev->dev) prefix before last '.' char to match to */
>  		if (strlen(id->name) == match_size &&
> -		    !strncmp(dev_name(&auxdev->dev), id->name, match_size))
> +		    !strncmp(auxdev_name, id->name, match_size))
>  			return id;
>  	}
>  	return NULL;
>
> ---
> base-commit: 1b237f190eb3d36f52dffe07a40b5eb210280e00
> change-id: 20250902-fix_auxbus-76bec91376db
>
> Best regards,
> -- 
> Zijun Hu <zijun.hu@oss.qualcomm.com>


  reply	other threads:[~2025-09-03 11:47 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-03 11:37 [PATCH v2] driver core: auxiliary bus: Optimize logic of auxiliary_match_id() Zijun Hu
2025-09-03 11:46 ` Danilo Krummrich [this message]
2025-09-03 23:00   ` Zijun Hu
2025-09-06 17:55     ` Greg Kroah-Hartman

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=DCJ52UB7OIXR.3MS54RJKMI4OK@kernel.org \
    --to=dakr@kernel.org \
    --cc=david.m.ertman@intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=ira.weiny@intel.com \
    --cc=leon@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rafael@kernel.org \
    --cc=zijun.hu@oss.qualcomm.com \
    --cc=zijun_hu@icloud.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.