Re: [PATCH v4 2/3] x86: pmc_atom: don't check for NULL twice

From: Thomas Gleixner
Date: Wed Nov 19 2014 - 06:36:20 EST


On Wed, 12 Nov 2014, Andy Shevchenko wrote:

> debugfs_remove_recursive() is NULL-aware, thus, we may safely remove the check
> here. There is no need to assing NULL to variable since it will be not used
> anywhere.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> Acked-by: Aubrey Li <aubrey.li@xxxxxxxxxxxxxxx>
> ---
> arch/x86/kernel/pmc_atom.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/arch/x86/kernel/pmc_atom.c b/arch/x86/kernel/pmc_atom.c
> index 19b8efa..bcc91ea 100644
> --- a/arch/x86/kernel/pmc_atom.c
> +++ b/arch/x86/kernel/pmc_atom.c
> @@ -202,11 +202,7 @@ static const struct file_operations pmc_sleep_tmr_ops = {
>
> static void pmc_dbgfs_unregister(struct pmc_dev *pmc)
> {
> - if (!pmc->dbgfs_dir)
> - return;
> -
> debugfs_remove_recursive(pmc->dbgfs_dir);
> - pmc->dbgfs_dir = NULL;
> }

So while the patch is correct per se, the whole function is useless.

pmc_dbgfs_register()

dir = debugfs_create_dir("pmc_atom", NULL);

....
if (!f)
goto err;

pmc->dbgfs_dir = dir;
return 0;
err:
pmc_dbgfs_unregister(pmc);

So pmc->dbgfs_dir is always NULL when this is called....

Aside of that, if DEBUGFS=n the code keeps pmc->regmap ioremapped for
no reason.

Looking deeper:

The pmc_power_off function is installed _BEFORE_ pmc_hw_reg_setup() is
called, which might not be called if the ioremap fails ....

Thanks,

tglx


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/