2023-01-09 04:40:14

by Quanfa Fu

[permalink] [raw]
Subject: [PATCH v3] tracing/eprobe: no need to check for negative ret value for snprintf

No need to check for negative return value from snprintf() as the
code does not return negative values.

Signed-off-by: Quanfa Fu <[email protected]>

-----
V2 -> V3: continue to use snprintf
V1 -> V2: memory allc uses kzalloc and replace snprintf with memcpy
---
kernel/trace/trace_eprobe.c | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/kernel/trace/trace_eprobe.c b/kernel/trace/trace_eprobe.c
index 352b65e2b910..594ac1d086aa 100644
--- a/kernel/trace/trace_eprobe.c
+++ b/kernel/trace/trace_eprobe.c
@@ -923,17 +923,13 @@ static int trace_eprobe_parse_filter(struct trace_eprobe *ep, int argc, const ch

p = ep->filter_str;
for (i = 0; i < argc; i++) {
- ret = snprintf(p, len, "%s ", argv[i]);
- if (ret < 0)
- goto error;
- if (ret > len) {
- ret = -E2BIG;
- goto error;
- }
+ if (i)
+ ret = snprintf(p, len, " %s", argv[i]);
+ else
+ ret = snprintf(p, len, "%s", argv[i]);
p += ret;
len -= ret;
}
- p[-1] = '\0';

/*
* Ensure the filter string can be parsed correctly. Note, this
--
2.31.1


2023-01-09 15:20:58

by Masami Hiramatsu

[permalink] [raw]
Subject: Re: [PATCH v3] tracing/eprobe: no need to check for negative ret value for snprintf

On Mon, 9 Jan 2023 12:06:25 +0800
Quanfa Fu <[email protected]> wrote:

> No need to check for negative return value from snprintf() as the
> code does not return negative values.
>

Thanks for simplifying, this looks good to me.

Acked-by: Masami Hiramatsu (Google) <[email protected]>

> Signed-off-by: Quanfa Fu <[email protected]>
>
> -----
> V2 -> V3: continue to use snprintf
> V1 -> V2: memory allc uses kzalloc and replace snprintf with memcpy
> ---
> kernel/trace/trace_eprobe.c | 12 ++++--------
> 1 file changed, 4 insertions(+), 8 deletions(-)
>
> diff --git a/kernel/trace/trace_eprobe.c b/kernel/trace/trace_eprobe.c
> index 352b65e2b910..594ac1d086aa 100644
> --- a/kernel/trace/trace_eprobe.c
> +++ b/kernel/trace/trace_eprobe.c
> @@ -923,17 +923,13 @@ static int trace_eprobe_parse_filter(struct trace_eprobe *ep, int argc, const ch
>
> p = ep->filter_str;
> for (i = 0; i < argc; i++) {
> - ret = snprintf(p, len, "%s ", argv[i]);
> - if (ret < 0)
> - goto error;
> - if (ret > len) {
> - ret = -E2BIG;
> - goto error;
> - }
> + if (i)
> + ret = snprintf(p, len, " %s", argv[i]);
> + else
> + ret = snprintf(p, len, "%s", argv[i]);
> p += ret;
> len -= ret;
> }
> - p[-1] = '\0';
>
> /*
> * Ensure the filter string can be parsed correctly. Note, this
> --
> 2.31.1
>


--
Masami Hiramatsu (Google) <[email protected]>

2023-01-09 15:32:35

by Steven Rostedt

[permalink] [raw]
Subject: Re: [PATCH v3] tracing/eprobe: no need to check for negative ret value for snprintf

On Mon, 9 Jan 2023 23:59:13 +0900
Masami Hiramatsu (Google) <[email protected]> wrote:

> On Mon, 9 Jan 2023 12:06:25 +0800
> Quanfa Fu <[email protected]> wrote:
>
> > No need to check for negative return value from snprintf() as the
> > code does not return negative values.
> >
>
> Thanks for simplifying, this looks good to me.
>
> Acked-by: Masami Hiramatsu (Google) <[email protected]>

Reviewed-by: Steven Rostedt (Google) <[email protected]>

Masami, do you want to take it into the probes branch, or do you want me to
take it into the tracing branch?

-- Steve


>
> > Signed-off-by: Quanfa Fu <[email protected]>
> >

2023-01-10 00:37:11

by Masami Hiramatsu

[permalink] [raw]
Subject: Re: [PATCH v3] tracing/eprobe: no need to check for negative ret value for snprintf

On Mon, 9 Jan 2023 10:12:26 -0500
Steven Rostedt <[email protected]> wrote:

> On Mon, 9 Jan 2023 23:59:13 +0900
> Masami Hiramatsu (Google) <[email protected]> wrote:
>
> > On Mon, 9 Jan 2023 12:06:25 +0800
> > Quanfa Fu <[email protected]> wrote:
> >
> > > No need to check for negative return value from snprintf() as the
> > > code does not return negative values.
> > >
> >
> > Thanks for simplifying, this looks good to me.
> >
> > Acked-by: Masami Hiramatsu (Google) <[email protected]>
>
> Reviewed-by: Steven Rostedt (Google) <[email protected]>
>
> Masami, do you want to take it into the probes branch, or do you want me to
> take it into the tracing branch?

Yes, I'll take it to probe/for-next.

Thank you!

>
> -- Steve
>
>
> >
> > > Signed-off-by: Quanfa Fu <[email protected]>
> > >


--
Masami Hiramatsu (Google) <[email protected]>