Re: [PATCH] spi-dw-core.c: Fix error checking for debugfs_create_dir

From: Serge Semin
Date: Wed May 17 2023 - 17:22:35 EST


Hi Osama

On Wed, May 17, 2023 at 10:31:02PM +0500, Osama Muhammad wrote:
> This patch fixes the error checking in spi-dw-core.c in
> debugfs_create_dir. The correct way to check if an error occurred
> is 'IS_ERR' inline function.

AFAICS a correct way to fix this would be to drop the errors check
from the implementation and convert the dw_spi_debugfs_init() function
to returning void. DebugFS kernel API is designed in a way for the
kernel to safely ignore the errors happening during the DebugFS nodes
creation. See
Link: https://elixir.bootlin.com/linux/latest/source/fs/debugfs/inode.c#L574
for details.

-Serge(y)

>
> Signed-off-by: Osama Muhammad <osmtendev@xxxxxxxxx>
> ---
> drivers/spi/spi-dw-core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/spi/spi-dw-core.c b/drivers/spi/spi-dw-core.c
> index ae3108c70f50..c9cdf6bbcd0e 100644
> --- a/drivers/spi/spi-dw-core.c
> +++ b/drivers/spi/spi-dw-core.c
> @@ -63,7 +63,7 @@ static int dw_spi_debugfs_init(struct dw_spi *dws)
>
> snprintf(name, 32, "dw_spi%d", dws->master->bus_num);
> dws->debugfs = debugfs_create_dir(name, NULL);
> - if (!dws->debugfs)
> + if (IS_ERR(dws->debugfs))
> return -ENOMEM;
>
> dws->regset.regs = dw_spi_dbgfs_regs;
> --
> 2.34.1
>