2019-01-22 15:29:12

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH] block: aoe: no need to check return value of debugfs_create functions

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: "Ed L. Cashin" <[email protected]>
Cc: Jens Axboe <[email protected]>
Cc: [email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
drivers/block/aoe/aoeblk.c | 13 +------------
1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c
index e2c6aae2d636..b602646bfa04 100644
--- a/drivers/block/aoe/aoeblk.c
+++ b/drivers/block/aoe/aoeblk.c
@@ -207,14 +207,7 @@ aoedisk_add_debugfs(struct aoedev *d)
else
p++;
BUG_ON(*p == '\0');
- entry = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
- &aoe_debugfs_fops);
- if (IS_ERR_OR_NULL(entry)) {
- pr_info("aoe: cannot create debugfs file for %s\n",
- d->gd->disk_name);
- return;
- }
- BUG_ON(d->debugfs);
+ debugfs_create_file(p, 0444, aoe_debugfs_dir, d, &aoe_debugfs_fops);
d->debugfs = entry;
}
void
@@ -472,10 +465,6 @@ aoeblk_init(void)
if (buf_pool_cache == NULL)
return -ENOMEM;
aoe_debugfs_dir = debugfs_create_dir("aoe", NULL);
- if (IS_ERR_OR_NULL(aoe_debugfs_dir)) {
- pr_info("aoe: cannot create debugfs directory\n");
- aoe_debugfs_dir = NULL;
- }
return 0;
}

--
2.20.1



2019-01-22 23:31:00

by Omar Sandoval

[permalink] [raw]
Subject: Re: [PATCH] block: aoe: no need to check return value of debugfs_create functions

On Tue, Jan 22, 2019 at 04:21:04PM +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: "Ed L. Cashin" <[email protected]>
> Cc: Jens Axboe <[email protected]>
> Cc: [email protected]
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> ---
> drivers/block/aoe/aoeblk.c | 13 +------------
> 1 file changed, 1 insertion(+), 12 deletions(-)
>
> diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c
> index e2c6aae2d636..b602646bfa04 100644
> --- a/drivers/block/aoe/aoeblk.c
> +++ b/drivers/block/aoe/aoeblk.c
> @@ -207,14 +207,7 @@ aoedisk_add_debugfs(struct aoedev *d)
> else
> p++;
> BUG_ON(*p == '\0');
> - entry = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
> - &aoe_debugfs_fops);
> - if (IS_ERR_OR_NULL(entry)) {
> - pr_info("aoe: cannot create debugfs file for %s\n",
> - d->gd->disk_name);
> - return;
> - }
> - BUG_ON(d->debugfs);
> + debugfs_create_file(p, 0444, aoe_debugfs_dir, d, &aoe_debugfs_fops);
> d->debugfs = entry;

Now entry is uninitialized here when we assign it to d->debugfs.

> }
> void
> @@ -472,10 +465,6 @@ aoeblk_init(void)
> if (buf_pool_cache == NULL)
> return -ENOMEM;
> aoe_debugfs_dir = debugfs_create_dir("aoe", NULL);
> - if (IS_ERR_OR_NULL(aoe_debugfs_dir)) {
> - pr_info("aoe: cannot create debugfs directory\n");
> - aoe_debugfs_dir = NULL;
> - }
> return 0;
> }
>
> --
> 2.20.1
>

2019-01-23 00:33:09

by Ed Cashin

[permalink] [raw]
Subject: Re: [PATCH] block: aoe: no need to check return value of debugfs_create functions

On Tue, Jan 22, 2019 at 6:29 PM Omar Sandoval <[email protected]> wrote:
...
> Now entry is uninitialized here when we assign it to d->debugfs.

Thanks for noticing that.

2019-01-23 06:42:41

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] block: aoe: no need to check return value of debugfs_create functions

On Tue, Jan 22, 2019 at 03:29:33PM -0800, Omar Sandoval wrote:
> On Tue, Jan 22, 2019 at 04:21:04PM +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: "Ed L. Cashin" <[email protected]>
> > Cc: Jens Axboe <[email protected]>
> > Cc: [email protected]
> > Signed-off-by: Greg Kroah-Hartman <[email protected]>
> > ---
> > drivers/block/aoe/aoeblk.c | 13 +------------
> > 1 file changed, 1 insertion(+), 12 deletions(-)
> >
> > diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c
> > index e2c6aae2d636..b602646bfa04 100644
> > --- a/drivers/block/aoe/aoeblk.c
> > +++ b/drivers/block/aoe/aoeblk.c
> > @@ -207,14 +207,7 @@ aoedisk_add_debugfs(struct aoedev *d)
> > else
> > p++;
> > BUG_ON(*p == '\0');
> > - entry = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
> > - &aoe_debugfs_fops);
> > - if (IS_ERR_OR_NULL(entry)) {
> > - pr_info("aoe: cannot create debugfs file for %s\n",
> > - d->gd->disk_name);
> > - return;
> > - }
> > - BUG_ON(d->debugfs);
> > + debugfs_create_file(p, 0444, aoe_debugfs_dir, d, &aoe_debugfs_fops);
> > d->debugfs = entry;
>
> Now entry is uninitialized here when we assign it to d->debugfs.

Ah, good catch, I'll go fix this up and post a v2, sorry about that.

greg k-h

2019-06-03 14:29:22

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH v2] block: aoe: no need to check return value of debugfs_create functions

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: "Ed L. Cashin" <[email protected]>
Cc: Jens Axboe <[email protected]>
Cc: [email protected]
Cc: Omar Sandoval <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
v2: fix uninitialized entry issue found by Omar Sandoval

drivers/block/aoe/aoeblk.c | 16 ++--------------
1 file changed, 2 insertions(+), 14 deletions(-)

diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c
index e2c6aae2d636..bd19f8af950b 100644
--- a/drivers/block/aoe/aoeblk.c
+++ b/drivers/block/aoe/aoeblk.c
@@ -196,7 +196,6 @@ static const struct file_operations aoe_debugfs_fops = {
static void
aoedisk_add_debugfs(struct aoedev *d)
{
- struct dentry *entry;
char *p;

if (aoe_debugfs_dir == NULL)
@@ -207,15 +206,8 @@ aoedisk_add_debugfs(struct aoedev *d)
else
p++;
BUG_ON(*p == '\0');
- entry = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
- &aoe_debugfs_fops);
- if (IS_ERR_OR_NULL(entry)) {
- pr_info("aoe: cannot create debugfs file for %s\n",
- d->gd->disk_name);
- return;
- }
- BUG_ON(d->debugfs);
- d->debugfs = entry;
+ d->debugfs = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
+ &aoe_debugfs_fops);
}
void
aoedisk_rm_debugfs(struct aoedev *d)
@@ -472,10 +464,6 @@ aoeblk_init(void)
if (buf_pool_cache == NULL)
return -ENOMEM;
aoe_debugfs_dir = debugfs_create_dir("aoe", NULL);
- if (IS_ERR_OR_NULL(aoe_debugfs_dir)) {
- pr_info("aoe: cannot create debugfs directory\n");
- aoe_debugfs_dir = NULL;
- }
return 0;
}

--
2.21.0

2019-06-03 19:49:57

by Greg Kroah-Hartman

[permalink] [raw]
Subject: [PATCH v3] block: aoe: no need to check return value of debugfs_create functions

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: "Ed L. Cashin" <[email protected]>
Cc: Jens Axboe <[email protected]>
Cc: [email protected]
Cc: Omar Sandoval <[email protected]>
Cc: Justin Sanders <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
v3: Justin is now the maintainer of this driver, properly send it to
him.
v2: fix uninitialized entry issue found by Omar Sandoval

drivers/block/aoe/aoeblk.c | 16 ++--------------
1 file changed, 2 insertions(+), 14 deletions(-)

diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c
index e2c6aae2d636..bd19f8af950b 100644
--- a/drivers/block/aoe/aoeblk.c
+++ b/drivers/block/aoe/aoeblk.c
@@ -196,7 +196,6 @@ static const struct file_operations aoe_debugfs_fops = {
static void
aoedisk_add_debugfs(struct aoedev *d)
{
- struct dentry *entry;
char *p;

if (aoe_debugfs_dir == NULL)
@@ -207,15 +206,8 @@ aoedisk_add_debugfs(struct aoedev *d)
else
p++;
BUG_ON(*p == '\0');
- entry = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
- &aoe_debugfs_fops);
- if (IS_ERR_OR_NULL(entry)) {
- pr_info("aoe: cannot create debugfs file for %s\n",
- d->gd->disk_name);
- return;
- }
- BUG_ON(d->debugfs);
- d->debugfs = entry;
+ d->debugfs = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
+ &aoe_debugfs_fops);
}
void
aoedisk_rm_debugfs(struct aoedev *d)
@@ -472,10 +464,6 @@ aoeblk_init(void)
if (buf_pool_cache == NULL)
return -ENOMEM;
aoe_debugfs_dir = debugfs_create_dir("aoe", NULL);
- if (IS_ERR_OR_NULL(aoe_debugfs_dir)) {
- pr_info("aoe: cannot create debugfs directory\n");
- aoe_debugfs_dir = NULL;
- }
return 0;
}

--
2.21.0

2019-06-04 18:26:17

by Justin Sanders

[permalink] [raw]
Subject: Re: [PATCH v3] block: aoe: no need to check return value of debugfs_create functions

Hi,

> On Jun 3, 2019, at 3:47 PM, Greg Kroah-Hartman <[email protected]> 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: "Ed L. Cashin" <[email protected]>
> Cc: Jens Axboe <[email protected]>
> Cc: [email protected]
> Cc: Omar Sandoval <[email protected]>
> Cc: Justin Sanders <[email protected]>
> Signed-off-by: Greg Kroah-Hartman <[email protected]>
> ---
> v3: Justin is now the maintainer of this driver, properly send it to
> him.
> v2: fix uninitialized entry issue found by Omar Sandoval
>
> drivers/block/aoe/aoeblk.c | 16 ++--------------
> 1 file changed, 2 insertions(+), 14 deletions(-)
>
> diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c
> index e2c6aae2d636..bd19f8af950b 100644
> --- a/drivers/block/aoe/aoeblk.c
> +++ b/drivers/block/aoe/aoeblk.c
> @@ -196,7 +196,6 @@ static const struct file_operations aoe_debugfs_fops = {
> static void
> aoedisk_add_debugfs(struct aoedev *d)
> {
> - struct dentry *entry;
> char *p;
>
> if (aoe_debugfs_dir == NULL)
> @@ -207,15 +206,8 @@ aoedisk_add_debugfs(struct aoedev *d)
> else
> p++;
> BUG_ON(*p == '\0');
> - entry = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
> - &aoe_debugfs_fops);
> - if (IS_ERR_OR_NULL(entry)) {
> - pr_info("aoe: cannot create debugfs file for %s\n",
> - d->gd->disk_name);
> - return;
> - }
> - BUG_ON(d->debugfs);
> - d->debugfs = entry;
> + d->debugfs = debugfs_create_file(p, 0444, aoe_debugfs_dir, d,
> + &aoe_debugfs_fops);
> }
> void
> aoedisk_rm_debugfs(struct aoedev *d)
> @@ -472,10 +464,6 @@ aoeblk_init(void)
> if (buf_pool_cache == NULL)
> return -ENOMEM;
> aoe_debugfs_dir = debugfs_create_dir("aoe", NULL);
> - if (IS_ERR_OR_NULL(aoe_debugfs_dir)) {
> - pr_info("aoe: cannot create debugfs directory\n");
> - aoe_debugfs_dir = NULL;
> - }
> return 0;
> }
>
> --
> 2.21.0
>
>

This looks good to me, thanks.

Acked-by: Justin Sanders <[email protected]>

Cheers,
Justin


2019-06-04 19:40:18

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH v3] block: aoe: no need to check return value of debugfs_create functions

On 6/3/19 1:47 PM, 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.

Applied, thanks.

--
Jens Axboe