回复: [PATCH net v1] bna:Fix error checking for debugfs_create_dir()

From: 王明-软件底层技术部
Date: Thu Jul 13 2023 - 05:07:28 EST


Ok, so I think we should delete the check operation. What do you think? If it is consistent, I will submit it again
: )
Ming
-----邮件原件-----
发件人: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
发送时间: 2023年7月13日 13:50
收件人: 王明-软件底层技术部 <machel@xxxxxxxx>; Rasesh Mody <rmody@xxxxxxxxxxx>; Sudarsana Kalluru <skalluru@xxxxxxxxxxx>; GR-Linux-NIC-Dev@xxxxxxxxxxx; David S. Miller <davem@xxxxxxxxxxxxx>; Eric Dumazet <edumazet@xxxxxxxxxx>; Jakub Kicinski <kuba@xxxxxxxxxx>; Paolo Abeni <pabeni@xxxxxxxxxx>; Krishna Gudipati <kgudipat@xxxxxxxxxxx>; netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
抄送: opensource.kernel <opensource.kernel@xxxxxxxx>
主题: Re: [PATCH net v1] bna:Fix error checking for debugfs_create_dir()

[Some people who received this message don't often get email from rdunlap@xxxxxxxxxxxxx. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]

Hi--

On 7/12/23 22:38, Wang Ming wrote:
> The debugfs_create_dir() function returns error pointers, it never
> returns NULL. Most incorrect error checks were fixed, but the one in
> bnad_debugfs_init() was forgotten.
>
> Fix the remaining error check.
>
> Signed-off-by: Wang Ming <machel@xxxxxxxx>
>
> Fixes: 7afc5dbde091 ("bna: Add debugfs interface.")

Comment from fs/debugfs/inode.c:

* 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.

so no, drivers should not usually care about debugfs function call results.
Is there some special case here?

> ---
> drivers/net/ethernet/brocade/bna/bnad_debugfs.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/brocade/bna/bnad_debugfs.c
> b/drivers/net/ethernet/brocade/bna/bnad_debugfs.c
> index 04ad0f2b9677..678a3668a041 100644
> --- a/drivers/net/ethernet/brocade/bna/bnad_debugfs.c
> +++ b/drivers/net/ethernet/brocade/bna/bnad_debugfs.c
> @@ -512,7 +512,7 @@ bnad_debugfs_init(struct bnad *bnad)
> if (!bnad->port_debugfs_root) {
> bnad->port_debugfs_root =
> debugfs_create_dir(name, bna_debugfs_root);
> - if (!bnad->port_debugfs_root) {
> + if (IS_ERR(bnad->port_debugfs_root)) {
> netdev_warn(bnad->netdev,
> "debugfs root dir creation failed\n");
> return;

--
~Randy