* [PATCH v2] fs: lockd: avoid possible wrong NULL parameter
@ 2023-08-04 1:26 Su Hui
2023-08-04 10:14 ` Jeff Layton
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Su Hui @ 2023-08-04 1:26 UTC (permalink / raw)
To: trond.myklebust, anna, chuck.lever, jlayton, neilb, kolga,
Dai.Ngo, tom, nathan, ndesaulniers, trix
Cc: bfields, linux-nfs, linux-kernel, llvm, kernel-janitors, Su Hui
clang's static analysis warning: fs/lockd/mon.c: line 293, column 2:
Null pointer passed as 2nd argument to memory copy function.
Assuming 'hostname' is NULL and calling 'nsm_create_handle()', this will
pass NULL as 2nd argument to memory copy function 'memcpy()'. So return
NULL if 'hostname' is invalid.
Fixes: 77a3ef33e2de ("NSM: More clean up of nsm_get_handle()")
Signed-off-by: Su Hui <suhui@nfschina.com>
---
v2:
- move NULL check to the callee "nsm_create_handle()"
fs/lockd/mon.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/lockd/mon.c b/fs/lockd/mon.c
index 1d9488cf0534..87a0f207df0b 100644
--- a/fs/lockd/mon.c
+++ b/fs/lockd/mon.c
@@ -276,6 +276,9 @@ static struct nsm_handle *nsm_create_handle(const struct sockaddr *sap,
{
struct nsm_handle *new;
+ if (!hostname)
+ return NULL;
+
new = kzalloc(sizeof(*new) + hostname_len + 1, GFP_KERNEL);
if (unlikely(new == NULL))
return NULL;
--
2.30.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2] fs: lockd: avoid possible wrong NULL parameter
2023-08-04 1:26 [PATCH v2] fs: lockd: avoid possible wrong NULL parameter Su Hui
@ 2023-08-04 10:14 ` Jeff Layton
2023-08-04 15:49 ` Nick Desaulniers
2023-08-04 18:37 ` Chuck Lever
2 siblings, 0 replies; 4+ messages in thread
From: Jeff Layton @ 2023-08-04 10:14 UTC (permalink / raw)
To: Su Hui, trond.myklebust, anna, chuck.lever, neilb, kolga, Dai.Ngo,
tom, nathan, ndesaulniers, trix
Cc: bfields, linux-nfs, linux-kernel, llvm, kernel-janitors
On Fri, 2023-08-04 at 09:26 +0800, Su Hui wrote:
> clang's static analysis warning: fs/lockd/mon.c: line 293, column 2:
> Null pointer passed as 2nd argument to memory copy function.
>
> Assuming 'hostname' is NULL and calling 'nsm_create_handle()', this will
> pass NULL as 2nd argument to memory copy function 'memcpy()'. So return
> NULL if 'hostname' is invalid.
>
> Fixes: 77a3ef33e2de ("NSM: More clean up of nsm_get_handle()")
> Signed-off-by: Su Hui <suhui@nfschina.com>
> ---
> v2:
> - move NULL check to the callee "nsm_create_handle()"
> fs/lockd/mon.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/fs/lockd/mon.c b/fs/lockd/mon.c
> index 1d9488cf0534..87a0f207df0b 100644
> --- a/fs/lockd/mon.c
> +++ b/fs/lockd/mon.c
> @@ -276,6 +276,9 @@ static struct nsm_handle *nsm_create_handle(const struct sockaddr *sap,
> {
> struct nsm_handle *new;
>
> + if (!hostname)
> + return NULL;
> +
> new = kzalloc(sizeof(*new) + hostname_len + 1, GFP_KERNEL);
> if (unlikely(new == NULL))
> return NULL;
Reviewed-by: Jeff Layton <jlayton@kernel.org>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] fs: lockd: avoid possible wrong NULL parameter
2023-08-04 1:26 [PATCH v2] fs: lockd: avoid possible wrong NULL parameter Su Hui
2023-08-04 10:14 ` Jeff Layton
@ 2023-08-04 15:49 ` Nick Desaulniers
2023-08-04 18:37 ` Chuck Lever
2 siblings, 0 replies; 4+ messages in thread
From: Nick Desaulniers @ 2023-08-04 15:49 UTC (permalink / raw)
To: Su Hui
Cc: trond.myklebust, anna, chuck.lever, jlayton, neilb, kolga,
Dai.Ngo, tom, nathan, trix, bfields, linux-nfs, linux-kernel,
llvm, kernel-janitors
On Thu, Aug 3, 2023 at 6:28 PM Su Hui <suhui@nfschina.com> wrote:
>
> clang's static analysis warning: fs/lockd/mon.c: line 293, column 2:
> Null pointer passed as 2nd argument to memory copy function.
>
> Assuming 'hostname' is NULL and calling 'nsm_create_handle()', this will
> pass NULL as 2nd argument to memory copy function 'memcpy()'. So return
> NULL if 'hostname' is invalid.
>
> Fixes: 77a3ef33e2de ("NSM: More clean up of nsm_get_handle()")
> Signed-off-by: Su Hui <suhui@nfschina.com>
Thanks for the patch! And thanks for checking clang static analysis reports!
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
> ---
> v2:
> - move NULL check to the callee "nsm_create_handle()"
> fs/lockd/mon.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/fs/lockd/mon.c b/fs/lockd/mon.c
> index 1d9488cf0534..87a0f207df0b 100644
> --- a/fs/lockd/mon.c
> +++ b/fs/lockd/mon.c
> @@ -276,6 +276,9 @@ static struct nsm_handle *nsm_create_handle(const struct sockaddr *sap,
> {
> struct nsm_handle *new;
>
> + if (!hostname)
> + return NULL;
> +
> new = kzalloc(sizeof(*new) + hostname_len + 1, GFP_KERNEL);
> if (unlikely(new == NULL))
> return NULL;
> --
> 2.30.2
>
--
Thanks,
~Nick Desaulniers
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2] fs: lockd: avoid possible wrong NULL parameter
2023-08-04 1:26 [PATCH v2] fs: lockd: avoid possible wrong NULL parameter Su Hui
2023-08-04 10:14 ` Jeff Layton
2023-08-04 15:49 ` Nick Desaulniers
@ 2023-08-04 18:37 ` Chuck Lever
2 siblings, 0 replies; 4+ messages in thread
From: Chuck Lever @ 2023-08-04 18:37 UTC (permalink / raw)
To: Su Hui
Cc: trond.myklebust, anna, jlayton, neilb, kolga, Dai.Ngo, tom,
nathan, ndesaulniers, trix, bfields, linux-nfs, linux-kernel,
llvm, kernel-janitors
On Fri, Aug 04, 2023 at 09:26:57AM +0800, Su Hui wrote:
> clang's static analysis warning: fs/lockd/mon.c: line 293, column 2:
> Null pointer passed as 2nd argument to memory copy function.
>
> Assuming 'hostname' is NULL and calling 'nsm_create_handle()', this will
> pass NULL as 2nd argument to memory copy function 'memcpy()'. So return
> NULL if 'hostname' is invalid.
>
> Fixes: 77a3ef33e2de ("NSM: More clean up of nsm_get_handle()")
> Signed-off-by: Su Hui <suhui@nfschina.com>
Applied to nfsd-next (for v6.6).
> ---
> v2:
> - move NULL check to the callee "nsm_create_handle()"
> fs/lockd/mon.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/fs/lockd/mon.c b/fs/lockd/mon.c
> index 1d9488cf0534..87a0f207df0b 100644
> --- a/fs/lockd/mon.c
> +++ b/fs/lockd/mon.c
> @@ -276,6 +276,9 @@ static struct nsm_handle *nsm_create_handle(const struct sockaddr *sap,
> {
> struct nsm_handle *new;
>
> + if (!hostname)
> + return NULL;
> +
> new = kzalloc(sizeof(*new) + hostname_len + 1, GFP_KERNEL);
> if (unlikely(new == NULL))
> return NULL;
> --
> 2.30.2
>
--
Chuck Lever
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-08-04 18:38 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-04 1:26 [PATCH v2] fs: lockd: avoid possible wrong NULL parameter Su Hui
2023-08-04 10:14 ` Jeff Layton
2023-08-04 15:49 ` Nick Desaulniers
2023-08-04 18:37 ` Chuck Lever
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox