Message ID | 1350501196-5632-1-git-send-email-devendra.aaru@gmail.com |
---|---|
State | Rejected, archived |
Headers | show |
On Wed, Oct 17, 2012 at 03:13:16PM -0400, Devendra Naga wrote: > if debugfs is not enabled in kernel it returns -ENODEV, check it > with IS_ERR_OR_NULL along with the null return if it fails to > create a file in debugfs. > > Signed-off-by: Devendra Naga <devendra.aaru@gmail.com> > --- > arch/arm/mach-tegra/powergate.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm/mach-tegra/powergate.c b/arch/arm/mach-tegra/powergate.c > index de0662d..1809b91d 100644 > --- a/arch/arm/mach-tegra/powergate.c > +++ b/arch/arm/mach-tegra/powergate.c > @@ -269,7 +269,7 @@ int __init tegra_powergate_debugfs_init(void) > if (powergate_name) { > d = debugfs_create_file("powergate", S_IRUGO, NULL, NULL, > &powergate_fops); > - if (!d) > + if (IS_ERR_OR_NULL(d)) > return -ENOMEM; So, you want to make this function hard-fail if a debugfs error occurs _or_ debugfs is not configured? That doesn't seem to be a clever thing to do. -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Oct 17, 2012 at 4:12 PM, Russell King - ARM Linux <linux@arm.linux.org.uk> wrote: > > So, you want to make this function hard-fail if a debugfs error occurs > _or_ debugfs is not configured? That doesn't seem to be a clever thing > to do. I was seeing some places where the check is only for the pointer null or valid one that is returned by the debugfs_create_file, and fixed it up using this macro by failing out even if we dont have debugfs enabled in kernel. I am sure that i really dont' know any part of the ARM stuff, tried to fix this too, because this function also checks for the null pointer if debugfs_create_file failed to create a file in debugfs and fails out if it can't be able to create that, but it wont check for whether we have debugfs enabled in kernel. thanks, -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 10/17/2012 02:12 PM, Russell King - ARM Linux wrote: > On Wed, Oct 17, 2012 at 03:13:16PM -0400, Devendra Naga wrote: >> if debugfs is not enabled in kernel it returns -ENODEV, check it >> with IS_ERR_OR_NULL along with the null return if it fails to >> create a file in debugfs. >> >> Signed-off-by: Devendra Naga <devendra.aaru@gmail.com> >> --- >> arch/arm/mach-tegra/powergate.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/arm/mach-tegra/powergate.c b/arch/arm/mach-tegra/powergate.c >> index de0662d..1809b91d 100644 >> --- a/arch/arm/mach-tegra/powergate.c >> +++ b/arch/arm/mach-tegra/powergate.c >> @@ -269,7 +269,7 @@ int __init tegra_powergate_debugfs_init(void) >> if (powergate_name) { >> d = debugfs_create_file("powergate", S_IRUGO, NULL, NULL, >> &powergate_fops); >> - if (!d) >> + if (IS_ERR_OR_NULL(d)) >> return -ENOMEM; > > So, you want to make this function hard-fail if a debugfs error occurs > _or_ debugfs is not configured? That doesn't seem to be a clever thing > to do. In practice, that quoted chunk of code is inside an #ifdef CONFIG_DEBUG_FS, so according to the documentation for debugfs_create_file(), the IS_ERR case of IS_ERR_OR_NULL cannot happen here. So, the above change is a no-op, so there's not much point applying it. -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Oct 17, 2012 at 03:22:13PM -0600, Stephen Warren wrote: > On 10/17/2012 02:12 PM, Russell King - ARM Linux wrote: > > On Wed, Oct 17, 2012 at 03:13:16PM -0400, Devendra Naga wrote: > >> if debugfs is not enabled in kernel it returns -ENODEV, check it > >> with IS_ERR_OR_NULL along with the null return if it fails to > >> create a file in debugfs. > >> > >> Signed-off-by: Devendra Naga <devendra.aaru@gmail.com> > >> --- > >> arch/arm/mach-tegra/powergate.c | 2 +- > >> 1 file changed, 1 insertion(+), 1 deletion(-) > >> > >> diff --git a/arch/arm/mach-tegra/powergate.c b/arch/arm/mach-tegra/powergate.c > >> index de0662d..1809b91d 100644 > >> --- a/arch/arm/mach-tegra/powergate.c > >> +++ b/arch/arm/mach-tegra/powergate.c > >> @@ -269,7 +269,7 @@ int __init tegra_powergate_debugfs_init(void) > >> if (powergate_name) { > >> d = debugfs_create_file("powergate", S_IRUGO, NULL, NULL, > >> &powergate_fops); > >> - if (!d) > >> + if (IS_ERR_OR_NULL(d)) > >> return -ENOMEM; > > > > So, you want to make this function hard-fail if a debugfs error occurs > > _or_ debugfs is not configured? That doesn't seem to be a clever thing > > to do. > > In practice, that quoted chunk of code is inside an #ifdef > CONFIG_DEBUG_FS, so according to the documentation for > debugfs_create_file(), the IS_ERR case of IS_ERR_OR_NULL cannot happen > here. So, the above change is a no-op, so there's not much point > applying it. Ok. Another reason not to apply it is that should the ifdefs get removed, it'll start failing when debugfs is disabled with -ENOMEM, which isn't bright. A further reason is it's another place that'd need reviewing for bad usage of the IS_ERR_OR_NULL() problem I've pointed out this evening. -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/arm/mach-tegra/powergate.c b/arch/arm/mach-tegra/powergate.c index de0662d..1809b91d 100644 --- a/arch/arm/mach-tegra/powergate.c +++ b/arch/arm/mach-tegra/powergate.c @@ -269,7 +269,7 @@ int __init tegra_powergate_debugfs_init(void) if (powergate_name) { d = debugfs_create_file("powergate", S_IRUGO, NULL, NULL, &powergate_fops); - if (!d) + if (IS_ERR_OR_NULL(d)) return -ENOMEM; }
if debugfs is not enabled in kernel it returns -ENODEV, check it with IS_ERR_OR_NULL along with the null return if it fails to create a file in debugfs. Signed-off-by: Devendra Naga <devendra.aaru@gmail.com> --- arch/arm/mach-tegra/powergate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)