All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Toke Høiland-Jørgensen" <toke@toke.dk>
To: Kalle Valo <kvalo@kernel.org>
Cc: Wang Ming <machel@vivo.com>,
	linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org,
	opensource.kernel@vivo.com
Subject: Re: [PATCH net-next v3] wifi: ath9k: Remove error checking for debugfs_create_dir()
Date: Mon, 21 Aug 2023 15:55:06 +0200	[thread overview]
Message-ID: <87350cbiv9.fsf@toke.dk> (raw)
In-Reply-To: <87bkf0k1rt.fsf@kernel.org>

Kalle Valo <kvalo@kernel.org> writes:

> Toke Høiland-Jørgensen <toke@toke.dk> writes:
>
>> Wang Ming <machel@vivo.com> writes:
>>
>>> It is expected that most callers should _ignore_ the errors
>>> return by debugfs_create_dir() in ath9k_htc_init_debug().
>>>
>>> Signed-off-by: Wang Ming <machel@vivo.com>
>>> ---
>>>  drivers/net/wireless/ath/ath9k/htc_drv_debug.c | 2 --
>>>  1 file changed, 2 deletions(-)
>>>
>>> diff --git a/drivers/net/wireless/ath/ath9k/htc_drv_debug.c b/drivers/net/wireless/ath/ath9k/htc_drv_debug.c
>>> index b3ed65e5c4da..85ad45771b44 100644
>>> --- a/drivers/net/wireless/ath/ath9k/htc_drv_debug.c
>>> +++ b/drivers/net/wireless/ath/ath9k/htc_drv_debug.c
>>> @@ -491,8 +491,6 @@ int ath9k_htc_init_debug(struct ath_hw *ah)
>>>  
>>>  	priv->debug.debugfs_phy = debugfs_create_dir(KBUILD_MODNAME,
>>>  					     priv->hw->wiphy->debugfsdir);
>>> -	if (!priv->debug.debugfs_phy)
>>> -		return -ENOMEM;
>>
>> Hmm, so it's true that all the debugfs_create* functions deal correctly
>> with the dir pointer being an error pointer, which means that it's
>> possible to just ignore the return value of debugfs_create_dir() without
>> anything breaking.
>
> The comment in debugfs_create_dir() states:
>
>  * NOTE: it's expected that most callers should _ignore_ the errors returned
>  * by this function. Other debugfs functions handle the fact that the "dentry"
>  * passed to them could be an error and they don't crash in that case.
>  * Drivers should generally work fine even if debugfs fails to init anyway.
>
>> However, it also seems kinda pointless to have all those calls if we
>> know they're going to fail, so I prefer v1 of this patch that just
>> fixed the IS_ERR check. No need to resend, we can just apply v1
>> instead...
>
> Because of the comment I'm leaning towards v3.

Well, the comment says "most callers" :)

I think having an early return like this is perfectly valid
optimisation, even if it doesn't really make any performance difference.
I don't feel incredibly strongly about it (given that the current check
is broken I guess the early return has never actually worked), so if you
feel like overriding your submaintainer on this, feel free ;)

-Toke

  reply	other threads:[~2023-08-21 13:55 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-26 11:07 [PATCH net-next v3] wifi: ath9k: Remove error checking for debugfs_create_dir() Wang Ming
2023-07-27 15:55 ` Kalle Valo
2023-08-08 13:28 ` Toke Høiland-Jørgensen
2023-08-21 12:39   ` Kalle Valo
2023-08-21 13:55     ` Toke Høiland-Jørgensen [this message]
2023-08-22  5:44       ` Kalle Valo
2023-08-22  8:01         ` Toke Høiland-Jørgensen

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=87350cbiv9.fsf@toke.dk \
    --to=toke@toke.dk \
    --cc=kvalo@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=machel@vivo.com \
    --cc=opensource.kernel@vivo.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.