Re: [PATCH] kprobes: no need to check return value of debugfs_create functions

2019-01-23 Thread Masami Hiramatsu
On Wed, 23 Jan 2019 07:54:22 +0100
Greg Kroah-Hartman  wrote:

> On Wed, Jan 23, 2019 at 11:15:16AM +0900, Masami Hiramatsu wrote:
> > On Tue, 22 Jan 2019 16:21:46 +0100
> > Greg Kroah-Hartman  wrote:
> > 
> > > When calling debugfs functions, there is no need to ever check the
> > > return value.  The function can work or not, but the code logic should
> > > never do something different based on this.
> > > 
> > > Cc: "Naveen N. Rao" 
> > > Cc: Anil S Keshavamurthy 
> > > Cc: "David S. Miller" 
> > > Cc: Masami Hiramatsu 
> > > Signed-off-by: Greg Kroah-Hartman 
> > > ---
> > >  kernel/kprobes.c | 25 ++---
> > >  1 file changed, 6 insertions(+), 19 deletions(-)
> > > 
> > > diff --git a/kernel/kprobes.c b/kernel/kprobes.c
> > > index f4ddfdd2d07e..7287e7de2350 100644
> > > --- a/kernel/kprobes.c
> > > +++ b/kernel/kprobes.c
> > > @@ -2566,33 +2566,20 @@ static const struct file_operations fops_kp = {
> > >  
> > >  static int __init debugfs_kprobe_init(void)
> > >  {
> > > - struct dentry *dir, *file;
> > > + struct dentry *dir;
> > >   unsigned int value = 1;
> > >  
> > >   dir = debugfs_create_dir("kprobes", NULL);
> > > - if (!dir)
> > > - return -ENOMEM;
> > 
> > Here, I think IS_ERR(dir) is OK for debugfs_create_file(),
> > but dir == NULL has different meaning. I think we'd better
> > keep this check. (I see, -ENOMEM will be no good...)
> 
> dir == NULL means the system is out of memory.  Which I'll change and
> just make it return an error, so it is fine to ignore this value.

Got it! Thanks!

Acked-by: Masami Hiramatsu 




> 
> thanks,
> 
> greg k-h


-- 
Masami Hiramatsu 


Re: [PATCH] kprobes: no need to check return value of debugfs_create functions

2019-01-22 Thread Greg Kroah-Hartman
On Wed, Jan 23, 2019 at 11:15:16AM +0900, Masami Hiramatsu wrote:
> On Tue, 22 Jan 2019 16:21:46 +0100
> Greg Kroah-Hartman  wrote:
> 
> > When calling debugfs functions, there is no need to ever check the
> > return value.  The function can work or not, but the code logic should
> > never do something different based on this.
> > 
> > Cc: "Naveen N. Rao" 
> > Cc: Anil S Keshavamurthy 
> > Cc: "David S. Miller" 
> > Cc: Masami Hiramatsu 
> > Signed-off-by: Greg Kroah-Hartman 
> > ---
> >  kernel/kprobes.c | 25 ++---
> >  1 file changed, 6 insertions(+), 19 deletions(-)
> > 
> > diff --git a/kernel/kprobes.c b/kernel/kprobes.c
> > index f4ddfdd2d07e..7287e7de2350 100644
> > --- a/kernel/kprobes.c
> > +++ b/kernel/kprobes.c
> > @@ -2566,33 +2566,20 @@ static const struct file_operations fops_kp = {
> >  
> >  static int __init debugfs_kprobe_init(void)
> >  {
> > -   struct dentry *dir, *file;
> > +   struct dentry *dir;
> > unsigned int value = 1;
> >  
> > dir = debugfs_create_dir("kprobes", NULL);
> > -   if (!dir)
> > -   return -ENOMEM;
> 
> Here, I think IS_ERR(dir) is OK for debugfs_create_file(),
> but dir == NULL has different meaning. I think we'd better
> keep this check. (I see, -ENOMEM will be no good...)

dir == NULL means the system is out of memory.  Which I'll change and
just make it return an error, so it is fine to ignore this value.

thanks,

greg k-h


Re: [PATCH] kprobes: no need to check return value of debugfs_create functions

2019-01-22 Thread Masami Hiramatsu
On Tue, 22 Jan 2019 16:21:46 +0100
Greg Kroah-Hartman  wrote:

> When calling debugfs functions, there is no need to ever check the
> return value.  The function can work or not, but the code logic should
> never do something different based on this.
> 
> Cc: "Naveen N. Rao" 
> Cc: Anil S Keshavamurthy 
> Cc: "David S. Miller" 
> Cc: Masami Hiramatsu 
> Signed-off-by: Greg Kroah-Hartman 
> ---
>  kernel/kprobes.c | 25 ++---
>  1 file changed, 6 insertions(+), 19 deletions(-)
> 
> diff --git a/kernel/kprobes.c b/kernel/kprobes.c
> index f4ddfdd2d07e..7287e7de2350 100644
> --- a/kernel/kprobes.c
> +++ b/kernel/kprobes.c
> @@ -2566,33 +2566,20 @@ static const struct file_operations fops_kp = {
>  
>  static int __init debugfs_kprobe_init(void)
>  {
> - struct dentry *dir, *file;
> + struct dentry *dir;
>   unsigned int value = 1;
>  
>   dir = debugfs_create_dir("kprobes", NULL);
> - if (!dir)
> - return -ENOMEM;

Here, I think IS_ERR(dir) is OK for debugfs_create_file(),
but dir == NULL has different meaning. I think we'd better
keep this check. (I see, -ENOMEM will be no good...)

Thank you,

>  
> - file = debugfs_create_file("list", 0400, dir, NULL,
> - _kprobes_operations);
> - if (!file)
> - goto error;
> + debugfs_create_file("list", 0400, dir, NULL,
> + _kprobes_operations);
>  
> - file = debugfs_create_file("enabled", 0600, dir,
> - , _kp);
> - if (!file)
> - goto error;
> + debugfs_create_file("enabled", 0600, dir, , _kp);
>  
> - file = debugfs_create_file("blacklist", 0400, dir, NULL,
> - _kprobe_blacklist_ops);
> - if (!file)
> - goto error;
> + debugfs_create_file("blacklist", 0400, dir, NULL,
> + _kprobe_blacklist_ops);
>  
>   return 0;
> -
> -error:
> - debugfs_remove(dir);
> - return -ENOMEM;
>  }
>  
>  late_initcall(debugfs_kprobe_init);
> -- 
> 2.20.1
> 


-- 
Masami Hiramatsu 


[PATCH] kprobes: no need to check return value of debugfs_create functions

2019-01-22 Thread Greg Kroah-Hartman
When calling debugfs functions, there is no need to ever check the
return value.  The function can work or not, but the code logic should
never do something different based on this.

Cc: "Naveen N. Rao" 
Cc: Anil S Keshavamurthy 
Cc: "David S. Miller" 
Cc: Masami Hiramatsu 
Signed-off-by: Greg Kroah-Hartman 
---
 kernel/kprobes.c | 25 ++---
 1 file changed, 6 insertions(+), 19 deletions(-)

diff --git a/kernel/kprobes.c b/kernel/kprobes.c
index f4ddfdd2d07e..7287e7de2350 100644
--- a/kernel/kprobes.c
+++ b/kernel/kprobes.c
@@ -2566,33 +2566,20 @@ static const struct file_operations fops_kp = {
 
 static int __init debugfs_kprobe_init(void)
 {
-   struct dentry *dir, *file;
+   struct dentry *dir;
unsigned int value = 1;
 
dir = debugfs_create_dir("kprobes", NULL);
-   if (!dir)
-   return -ENOMEM;
 
-   file = debugfs_create_file("list", 0400, dir, NULL,
-   _kprobes_operations);
-   if (!file)
-   goto error;
+   debugfs_create_file("list", 0400, dir, NULL,
+   _kprobes_operations);
 
-   file = debugfs_create_file("enabled", 0600, dir,
-   , _kp);
-   if (!file)
-   goto error;
+   debugfs_create_file("enabled", 0600, dir, , _kp);
 
-   file = debugfs_create_file("blacklist", 0400, dir, NULL,
-   _kprobe_blacklist_ops);
-   if (!file)
-   goto error;
+   debugfs_create_file("blacklist", 0400, dir, NULL,
+   _kprobe_blacklist_ops);
 
return 0;
-
-error:
-   debugfs_remove(dir);
-   return -ENOMEM;
 }
 
 late_initcall(debugfs_kprobe_init);
-- 
2.20.1