2022-11-10 03:39:21

by Miaoqian Lin

[permalink] [raw]
Subject: [PATCH] ceph: Fix NULL vs IS_ERR checking in ceph_getattr

The ceph_lookup_inode() function return error pointers on error
instead of NULL.
Use IS_ERR() to check the return value to fix this.

Fixes: aa87052dd965 ("ceph: fix incorrectly showing the .snap size for stat")
Signed-off-by: Miaoqian Lin <[email protected]>
---
fs/ceph/inode.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/ceph/inode.c b/fs/ceph/inode.c
index 4af5e55abc15..bad9eeb6a1a5 100644
--- a/fs/ceph/inode.c
+++ b/fs/ceph/inode.c
@@ -2492,7 +2492,7 @@ int ceph_getattr(struct user_namespace *mnt_userns, const struct path *path,
struct inode *parent;

parent = ceph_lookup_inode(sb, ceph_ino(inode));
- if (!parent)
+ if (IS_ERR(parent))
return PTR_ERR(parent);

pci = ceph_inode(parent);
--
2.37.3.671.ge2130fe6da78.dirty



2022-11-10 06:38:01

by Xiubo Li

[permalink] [raw]
Subject: Re: [PATCH] ceph: Fix NULL vs IS_ERR checking in ceph_getattr

Hi Miaoqian,

Thanks for your patch. This has already been fixed by Dan Carpenter
weeks ago and already in the ceph-client's testing branch, please see [1]:

[1]
https://github.com/ceph/ceph-client/commit/ffc4d66a34bb5bd76d0a3f83bebf500d96a8e37c

BRs

- Xiubo

On 10/11/2022 11:13, Miaoqian Lin wrote:
> The ceph_lookup_inode() function return error pointers on error
> instead of NULL.
> Use IS_ERR() to check the return value to fix this.
>
> Fixes: aa87052dd965 ("ceph: fix incorrectly showing the .snap size for stat")
> Signed-off-by: Miaoqian Lin <[email protected]>
> ---
> fs/ceph/inode.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/ceph/inode.c b/fs/ceph/inode.c
> index 4af5e55abc15..bad9eeb6a1a5 100644
> --- a/fs/ceph/inode.c
> +++ b/fs/ceph/inode.c
> @@ -2492,7 +2492,7 @@ int ceph_getattr(struct user_namespace *mnt_userns, const struct path *path,
> struct inode *parent;
>
> parent = ceph_lookup_inode(sb, ceph_ino(inode));
> - if (!parent)
> + if (IS_ERR(parent))
> return PTR_ERR(parent);
>
> pci = ceph_inode(parent);


2022-11-10 12:01:58

by Ilya Dryomov

[permalink] [raw]
Subject: Re: [PATCH] ceph: Fix NULL vs IS_ERR checking in ceph_getattr

On Thu, Nov 10, 2022 at 6:45 AM Xiubo Li <[email protected]> wrote:
>
> Hi Miaoqian,
>
> Thanks for your patch. This has already been fixed by Dan Carpenter
> weeks ago and already in the ceph-client's testing branch, please see [1]:
>
> [1]
> https://github.com/ceph/ceph-client/commit/ffc4d66a34bb5bd76d0a3f83bebf500d96a8e37c

It's also present in linux-next:

https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=ffc4d66a34bb5bd76d0a3f83bebf500d96a8e37c

Thanks,

Ilya