lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87350cbiv9.fsf@toke.dk>
Date:   Mon, 21 Aug 2023 15:55:06 +0200
From:   Toke Høiland-Jørgensen <toke@...e.dk>
To:     Kalle Valo <kvalo@...nel.org>
Cc:     Wang Ming <machel@...o.com>, linux-wireless@...r.kernel.org,
        linux-kernel@...r.kernel.org, opensource.kernel@...o.com
Subject: Re: [PATCH net-next v3] wifi: ath9k: Remove error checking for
 debugfs_create_dir()

Kalle Valo <kvalo@...nel.org> writes:

> Toke Høiland-Jørgensen <toke@...e.dk> writes:
>
>> Wang Ming <machel@...o.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@...o.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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ