2008-10-17 11:26:53

by Zhao Lei

[permalink] [raw]
Subject: [PATCH] Fix debugfs_create_file's error checking method for arch/sh/mm/

Hi,

debugfs_create_file() returns NULL if an error occurs, returns -ENODEV
when debugfs is not enabled in the kernel.

Signed-off-by: Zhao Lei <[email protected]>
---
arch/sh/mm/cache-debugfs.c | 6 ++++++
arch/sh/mm/pmb.c | 2 ++
2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/arch/sh/mm/cache-debugfs.c b/arch/sh/mm/cache-debugfs.c
index 0e189cc..5ba067b 100644
--- a/arch/sh/mm/cache-debugfs.c
+++ b/arch/sh/mm/cache-debugfs.c
@@ -130,12 +130,18 @@ static int __init cache_debugfs_init(void)
dcache_dentry = debugfs_create_file("dcache", S_IRUSR, sh_debugfs_root,
(unsigned int *)CACHE_TYPE_DCACHE,
&cache_debugfs_fops);
+ if (!dcache_dentry)
+ return -ENOMEM;
if (IS_ERR(dcache_dentry))
return PTR_ERR(dcache_dentry);

icache_dentry = debugfs_create_file("icache", S_IRUSR, sh_debugfs_root,
(unsigned int *)CACHE_TYPE_ICACHE,
&cache_debugfs_fops);
+ if (!icache_dentry) {
+ debugfs_remove(dcache_dentry);
+ return -ENOMEM;
+ }
if (IS_ERR(icache_dentry)) {
debugfs_remove(dcache_dentry);
return PTR_ERR(icache_dentry);
diff --git a/arch/sh/mm/pmb.c b/arch/sh/mm/pmb.c
index cef7276..8424167 100644
--- a/arch/sh/mm/pmb.c
+++ b/arch/sh/mm/pmb.c
@@ -394,6 +394,8 @@ static int __init pmb_debugfs_init(void)

dentry = debugfs_create_file("pmb", S_IFREG | S_IRUGO,
sh_debugfs_root, NULL, &pmb_debugfs_fops);
+ if (!dentry)
+ return -ENOMEM;
if (IS_ERR(dentry))
return PTR_ERR(dentry);

--
1.5.5.3


2008-10-20 02:41:47

by Paul Mundt

[permalink] [raw]
Subject: Re: [PATCH] Fix debugfs_create_dir's error checking method for arch/sh/kernel/

On Fri, Oct 17, 2008 at 07:25:03PM +0800, Zhaolei wrote:
> debugfs_create_dir() returns NULL if an error occurs, returns -ENODEV
> when debugfs is not enabled in the kernel.
>
> Signed-off-by: Zhao Lei <[email protected]>

On Fri, Oct 17, 2008 at 07:25:09PM +0800, Zhaolei wrote:
> debugfs_create_file() returns NULL if an error occurs, returns -ENODEV
> when debugfs is not enabled in the kernel.
>
> Signed-off-by: Zhao Lei <[email protected]>

Applied, thanks.