public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3] xen/debugfs: Check debugfs initialization before using it
@ 2013-12-09  9:56 Ethan Zhao
  2013-12-09  9:59 ` Ethan Zhao
  2013-12-09 11:19 ` Greg KH
  0 siblings, 2 replies; 5+ messages in thread
From: Ethan Zhao @ 2013-12-09  9:56 UTC (permalink / raw)
  To: gregkh, konrad.wilk, raghavendra.kt; +Cc: linux-kernel, ethan.zhao

From: "ethan.zhao" <ethan.kernel@gmail.com>

Should check debugfs initialization with debugfs_initialized() before using it,
Because if it isn't initialized, the return value of fake debugfs_create_dir() etc
functions would be ERR_PTR(-ENODEV), checking with NULL will not work.

V3: add warning message when debugfs not configured or disabled.

Signed-off-by: ethan.zhao <ethan.kernel@gmail.com>
---
 arch/x86/xen/debugfs.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/x86/xen/debugfs.c b/arch/x86/xen/debugfs.c
index c8377fb..85c0e0e 100644
--- a/arch/x86/xen/debugfs.c
+++ b/arch/x86/xen/debugfs.c
@@ -9,12 +9,18 @@ static struct dentry *d_xen_debug;
 
 struct dentry * __init xen_init_debugfs(void)
 {
+	if (!debugfs_initialized()) {
+		d_xen_debug = NULL;
+		goto nodebugfs;
+	}
+
 	if (!d_xen_debug) {
 		d_xen_debug = debugfs_create_dir("xen", NULL);
 
 		if (!d_xen_debug)
 			pr_warning("Could not create 'xen' debugfs directory\n");
 	}
+nodebugfs:
 
 	return d_xen_debug;
 }
-- 
1.8.3.4 (Apple Git-47)


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH v3] xen/debugfs: Check debugfs initialization before using it
  2013-12-09  9:56 [PATCH v3] xen/debugfs: Check debugfs initialization before using it Ethan Zhao
@ 2013-12-09  9:59 ` Ethan Zhao
  2013-12-09 11:19 ` Greg KH
  1 sibling, 0 replies; 5+ messages in thread
From: Ethan Zhao @ 2013-12-09  9:59 UTC (permalink / raw)
  To: Greg KH, konrad.wilk, raghavendra.kt; +Cc: LKML, ethan.zhao

Greg,

    How about the V3 ?


Thanks,
Ethan

On Mon, Dec 9, 2013 at 5:56 PM, Ethan Zhao <ethan.kernel@gmail.com> wrote:
> From: "ethan.zhao" <ethan.kernel@gmail.com>
>
> Should check debugfs initialization with debugfs_initialized() before using it,
> Because if it isn't initialized, the return value of fake debugfs_create_dir() etc
> functions would be ERR_PTR(-ENODEV), checking with NULL will not work.
>
> V3: add warning message when debugfs not configured or disabled.
>
> Signed-off-by: ethan.zhao <ethan.kernel@gmail.com>
> ---
>  arch/x86/xen/debugfs.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/arch/x86/xen/debugfs.c b/arch/x86/xen/debugfs.c
> index c8377fb..85c0e0e 100644
> --- a/arch/x86/xen/debugfs.c
> +++ b/arch/x86/xen/debugfs.c
> @@ -9,12 +9,18 @@ static struct dentry *d_xen_debug;
>
>  struct dentry * __init xen_init_debugfs(void)
>  {
> +       if (!debugfs_initialized()) {
> +               d_xen_debug = NULL;
> +               goto nodebugfs;
> +       }
> +
>         if (!d_xen_debug) {
>                 d_xen_debug = debugfs_create_dir("xen", NULL);
>
>                 if (!d_xen_debug)
>                         pr_warning("Could not create 'xen' debugfs directory\n");
>         }
> +nodebugfs:
>
>         return d_xen_debug;
>  }
> --
> 1.8.3.4 (Apple Git-47)
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v3] xen/debugfs: Check debugfs initialization before using it
  2013-12-09  9:56 [PATCH v3] xen/debugfs: Check debugfs initialization before using it Ethan Zhao
  2013-12-09  9:59 ` Ethan Zhao
@ 2013-12-09 11:19 ` Greg KH
  2013-12-09 13:49   ` Ethan Zhao
  1 sibling, 1 reply; 5+ messages in thread
From: Greg KH @ 2013-12-09 11:19 UTC (permalink / raw)
  To: Ethan Zhao; +Cc: konrad.wilk, raghavendra.kt, linux-kernel

On Mon, Dec 09, 2013 at 05:56:52PM +0800, Ethan Zhao wrote:
> From: "ethan.zhao" <ethan.kernel@gmail.com>
> 
> Should check debugfs initialization with debugfs_initialized() before using it,
> Because if it isn't initialized, the return value of fake debugfs_create_dir() etc
> functions would be ERR_PTR(-ENODEV), checking with NULL will not work.
> 
> V3: add warning message when debugfs not configured or disabled.

That's not what this patch does...

> Signed-off-by: ethan.zhao <ethan.kernel@gmail.com>
> ---
>  arch/x86/xen/debugfs.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/arch/x86/xen/debugfs.c b/arch/x86/xen/debugfs.c
> index c8377fb..85c0e0e 100644
> --- a/arch/x86/xen/debugfs.c
> +++ b/arch/x86/xen/debugfs.c
> @@ -9,12 +9,18 @@ static struct dentry *d_xen_debug;
>  
>  struct dentry * __init xen_init_debugfs(void)
>  {
> +	if (!debugfs_initialized()) {
> +		d_xen_debug = NULL;
> +		goto nodebugfs;
> +	}

Again, why is this even needed?

What problem in the existing code are you trying to solve?


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v3] xen/debugfs: Check debugfs initialization before using it
  2013-12-09 11:19 ` Greg KH
@ 2013-12-09 13:49   ` Ethan Zhao
  2013-12-09 18:39     ` Greg KH
  0 siblings, 1 reply; 5+ messages in thread
From: Ethan Zhao @ 2013-12-09 13:49 UTC (permalink / raw)
  To: Greg KH; +Cc: konrad.wilk, raghavendra.kt, LKML

On Mon, Dec 9, 2013 at 7:19 PM, Greg KH <gregkh@linuxfoundation.org> wrote:
> On Mon, Dec 09, 2013 at 05:56:52PM +0800, Ethan Zhao wrote:
>> From: "ethan.zhao" <ethan.kernel@gmail.com>
>>
>> Should check debugfs initialization with debugfs_initialized() before using it,
>> Because if it isn't initialized, the return value of fake debugfs_create_dir() etc
>> functions would be ERR_PTR(-ENODEV), checking with NULL will not work.
>>
>> V3: add warning message when debugfs not configured or disabled.
>
> That's not what this patch does...
>
>> Signed-off-by: ethan.zhao <ethan.kernel@gmail.com>
>> ---
>>  arch/x86/xen/debugfs.c | 6 ++++++
>>  1 file changed, 6 insertions(+)
>>
>> diff --git a/arch/x86/xen/debugfs.c b/arch/x86/xen/debugfs.c
>> index c8377fb..85c0e0e 100644
>> --- a/arch/x86/xen/debugfs.c
>> +++ b/arch/x86/xen/debugfs.c
>> @@ -9,12 +9,18 @@ static struct dentry *d_xen_debug;
>>
>>  struct dentry * __init xen_init_debugfs(void)
>>  {
>> +     if (!debugfs_initialized()) {
>> +             d_xen_debug = NULL;
>> +             goto nodebugfs;
>> +     }
>
> Again, why is this even needed?
>
> What problem in the existing code are you trying to solve?
>
What I want to ask who is so smart and fake some many functions when
CONFIG_DEBUG_FS is not configured/defined and the build could pass
without any error ? What is the motive make him wrote some many fake
function and why he wrote the debugfs_initialized() function seem
'useless' at all ?

Thanks,
Ethan

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v3] xen/debugfs: Check debugfs initialization before using it
  2013-12-09 13:49   ` Ethan Zhao
@ 2013-12-09 18:39     ` Greg KH
  0 siblings, 0 replies; 5+ messages in thread
From: Greg KH @ 2013-12-09 18:39 UTC (permalink / raw)
  To: Ethan Zhao; +Cc: konrad.wilk, raghavendra.kt, LKML

On Mon, Dec 09, 2013 at 09:49:36PM +0800, Ethan Zhao wrote:
> On Mon, Dec 9, 2013 at 7:19 PM, Greg KH <gregkh@linuxfoundation.org> wrote:
> > On Mon, Dec 09, 2013 at 05:56:52PM +0800, Ethan Zhao wrote:
> >> From: "ethan.zhao" <ethan.kernel@gmail.com>
> >>
> >> Should check debugfs initialization with debugfs_initialized() before using it,
> >> Because if it isn't initialized, the return value of fake debugfs_create_dir() etc
> >> functions would be ERR_PTR(-ENODEV), checking with NULL will not work.
> >>
> >> V3: add warning message when debugfs not configured or disabled.
> >
> > That's not what this patch does...
> >
> >> Signed-off-by: ethan.zhao <ethan.kernel@gmail.com>
> >> ---
> >>  arch/x86/xen/debugfs.c | 6 ++++++
> >>  1 file changed, 6 insertions(+)
> >>
> >> diff --git a/arch/x86/xen/debugfs.c b/arch/x86/xen/debugfs.c
> >> index c8377fb..85c0e0e 100644
> >> --- a/arch/x86/xen/debugfs.c
> >> +++ b/arch/x86/xen/debugfs.c
> >> @@ -9,12 +9,18 @@ static struct dentry *d_xen_debug;
> >>
> >>  struct dentry * __init xen_init_debugfs(void)
> >>  {
> >> +     if (!debugfs_initialized()) {
> >> +             d_xen_debug = NULL;
> >> +             goto nodebugfs;
> >> +     }
> >
> > Again, why is this even needed?
> >
> > What problem in the existing code are you trying to solve?
> >
> What I want to ask who is so smart and fake some many functions when
> CONFIG_DEBUG_FS is not configured/defined and the build could pass
> without any error ?

That's the way this has always worked.

> What is the motive make him wrote some many fake function and why he
> wrote the debugfs_initialized() function seem 'useless' at all ?

To make the caller code easier, and smaller, and to not care if debugfs
is enabled in the kernel build or not at all.

Ok, I answered your questions, now care to answer mine?

greg k-h

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2013-12-09 18:38 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-09  9:56 [PATCH v3] xen/debugfs: Check debugfs initialization before using it Ethan Zhao
2013-12-09  9:59 ` Ethan Zhao
2013-12-09 11:19 ` Greg KH
2013-12-09 13:49   ` Ethan Zhao
2013-12-09 18:39     ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox