* [dpdk-stable] [PATCH v4 2/2] lib/pipeline: Fix gcc compilation error using ASan [not found] ` <20210924022028.1291404-1-zhihongx.peng@intel.com> @ 2021-09-24 2:20 ` zhihongx.peng [not found] ` <20210924093309.3411-1-zhihongx.peng@intel.com> ` (2 subsequent siblings) 3 siblings, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-09-24 2:20 UTC (permalink / raw) To: anatoly.burakov, konstantin.ananyev, stephen Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> After adding ASan, the gcc compilation check will be stricter. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e (pipeline: add meter array to SWX) Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 8eb978a30c..aaa0107d02 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -6340,7 +6340,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline struct meter * @@ -8025,7 +8025,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20210924093309.3411-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v5 2/2] Fix gcc compilation error using ASan [not found] ` <20210924093309.3411-1-zhihongx.peng@intel.com> @ 2021-09-24 9:33 ` zhihongx.peng 0 siblings, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-09-24 9:33 UTC (permalink / raw) To: anatoly.burakov, konstantin.ananyev, stephen Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> After adding ASan, the gcc compilation check will be stricter. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e (pipeline: add meter array to SWX) Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 8eb978a30c..aaa0107d02 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -6340,7 +6340,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline struct meter * @@ -8025,7 +8025,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20210924100310.4278-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v5 2/2] lib/pipeline: Fix gcc compilation error using ASan [not found] ` <20210924100310.4278-1-zhihongx.peng@intel.com> @ 2021-09-24 10:03 ` zhihongx.peng [not found] ` <20210930052724.195414-1-zhihongx.peng@intel.com> [not found] ` <20210930125938.266731-1-zhihongx.peng@intel.com> 2 siblings, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-09-24 10:03 UTC (permalink / raw) To: anatoly.burakov, konstantin.ananyev, stephen Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> After adding ASan, the gcc compilation check will be stricter. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e (pipeline: add meter array to SWX) Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 8eb978a30c..aaa0107d02 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -6340,7 +6340,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline struct meter * @@ -8025,7 +8025,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20210930052724.195414-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v6 2/2] lib/pipeline: Fix gcc compilation error using ASan [not found] ` <20210930052724.195414-1-zhihongx.peng@intel.com> @ 2021-09-30 5:27 ` zhihongx.peng 2021-09-30 8:29 ` David Marchand 0 siblings, 1 reply; 27+ messages in thread From: zhihongx.peng @ 2021-09-30 5:27 UTC (permalink / raw) To: anatoly.burakov, konstantin.ananyev, stephen Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> After adding ASan, the gcc compilation check will be stricter. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e (pipeline: add meter array to SWX) Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [dpdk-stable] [PATCH v6 2/2] lib/pipeline: Fix gcc compilation error using ASan 2021-09-30 5:27 ` [dpdk-stable] [PATCH v6 " zhihongx.peng @ 2021-09-30 8:29 ` David Marchand 2021-10-12 2:41 ` Peng, ZhihongX 0 siblings, 1 reply; 27+ messages in thread From: David Marchand @ 2021-09-30 8:29 UTC (permalink / raw) To: Zhihong Peng Cc: Burakov, Anatoly, Ananyev, Konstantin, Stephen Hemminger, dev, Xueqin Lin, dpdk stable On Thu, Sep 30, 2021 at 7:37 AM <zhihongx.peng@intel.com> wrote: > > From: Zhihong Peng <zhihongx.peng@intel.com> Commit titles don't start with lib/. > > After adding ASan, the gcc compilation check will be stricter. > "Control reaches end of non-void function" error occurs here. Fwiw, I could not pinpoint the right version where this warning appears. I can't see it with gcc v4.8.5 (rhel7), but I get it with gcc 11.2.1 (fc34). Do you know which versions are affected? Just asking for info. > > Fixes: f38913b7fb8e (pipeline: add meter array to SWX) Should be formatted as: Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") Please use a git alias as suggested in the contribution guide. > Cc: stable@dpdk.org > > Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> > Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> > --- > lib/pipeline/rte_swx_pipeline.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c > index 1cd09a4b44..0acd6c6752 100644 > --- a/lib/pipeline/rte_swx_pipeline.c > +++ b/lib/pipeline/rte_swx_pipeline.c > @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, > return 0; > } > > - CHECK(0, EINVAL); > + return -EINVAL; > } > > static inline void > @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, > instr, > data); > > - CHECK(0, EINVAL); > + return -EINVAL; > } > > static struct instruction_data * There are two other functions (instr_table_translate, and instr_extern_translate) which have the same pattern in this file. Odd that the compiler is not reporting them. -- David Marchand ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [dpdk-stable] [PATCH v6 2/2] lib/pipeline: Fix gcc compilation error using ASan 2021-09-30 8:29 ` David Marchand @ 2021-10-12 2:41 ` Peng, ZhihongX 0 siblings, 0 replies; 27+ messages in thread From: Peng, ZhihongX @ 2021-10-12 2:41 UTC (permalink / raw) To: David Marchand Cc: Burakov, Anatoly, Ananyev, Konstantin, Stephen Hemminger, dev, Lin, Xueqin, dpdk stable > -----Original Message----- > From: David Marchand <david.marchand@redhat.com> > Sent: Thursday, September 30, 2021 4:30 PM > To: Peng, ZhihongX <zhihongx.peng@intel.com> > Cc: Burakov, Anatoly <anatoly.burakov@intel.com>; Ananyev, Konstantin > <konstantin.ananyev@intel.com>; Stephen Hemminger > <stephen@networkplumber.org>; dev <dev@dpdk.org>; Lin, Xueqin > <xueqin.lin@intel.com>; dpdk stable <stable@dpdk.org> > Subject: Re: [dpdk-stable] [PATCH v6 2/2] lib/pipeline: Fix gcc compilation > error using ASan > > On Thu, Sep 30, 2021 at 7:37 AM <zhihongx.peng@intel.com> wrote: > > > > From: Zhihong Peng <zhihongx.peng@intel.com> > > Commit titles don't start with lib/. The v9 version will be fixed. > > > > > After adding ASan, the gcc compilation check will be stricter. > > "Control reaches end of non-void function" error occurs here. > > Fwiw, I could not pinpoint the right version where this warning appears. > I can't see it with gcc v4.8.5 (rhel7), but I get it with gcc 11.2.1 (fc34). > Do you know which versions are affected? Just asking for info. > > > > > > Fixes: f38913b7fb8e (pipeline: add meter array to SWX) > > Should be formatted as: > Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") > > Please use a git alias as suggested in the contribution guide. The v9 version will be fixed. > > > Cc: stable@dpdk.org > > > > Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> > > Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> > > --- > > lib/pipeline/rte_swx_pipeline.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/lib/pipeline/rte_swx_pipeline.c > > b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 > > --- a/lib/pipeline/rte_swx_pipeline.c > > +++ b/lib/pipeline/rte_swx_pipeline.c > > @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, > > return 0; > > } > > > > - CHECK(0, EINVAL); > > + return -EINVAL; > > } > > > > static inline void > > @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, > > instr, > > data); > > > > - CHECK(0, EINVAL); > > + return -EINVAL; > > } > > > > static struct instruction_data * > > There are two other functions (instr_table_translate, and > instr_extern_translate) which have the same pattern in this file. > Odd that the compiler is not reporting them. The lowest version we tried is gcc version 7.4.0, the highest gcc version 9.3.0, these versions will report errors. As for why some do not report errors, it may be gcc's own problem, we just let the compilation pass. > -- > David Marchand ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20210930125938.266731-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v6 2/2] lib/pipeline: Fix compilation error with gcc ASan [not found] ` <20210930125938.266731-1-zhihongx.peng@intel.com> @ 2021-09-30 12:59 ` zhihongx.peng [not found] ` <20211008091751.417468-1-zhihongx.peng@intel.com> 1 sibling, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-09-30 12:59 UTC (permalink / raw) To: anatoly.burakov, konstantin.ananyev, stephen Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> After adding ASan, the gcc compilation check will be stricter. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e (pipeline: add meter array to SWX) Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211008091751.417468-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v7 3/3] lib/pipeline: Fix compilation error with gcc ASan [not found] ` <20211008091751.417468-1-zhihongx.peng@intel.com> @ 2021-10-08 9:17 ` zhihongx.peng [not found] ` <20211011062810.422220-1-zhihongx.peng@intel.com> 1 sibling, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-08 9:17 UTC (permalink / raw) To: anatoly.burakov, konstantin.ananyev, stephen, david.marchand Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc will check code more stricter when ASan enabled. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e (pipeline: add meter array to SWX) Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211011062810.422220-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v8 3/3] lib/pipeline: Fix compilation error with gcc ASan [not found] ` <20211011062810.422220-1-zhihongx.peng@intel.com> @ 2021-10-11 6:28 ` zhihongx.peng [not found] ` <20211012094318.1154727-1-zhihongx.peng@intel.com> 1 sibling, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-11 6:28 UTC (permalink / raw) To: anatoly.burakov, konstantin.ananyev, stephen Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc will check code more stricter when ASan enabled. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e (pipeline: add meter array to SWX) Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211012094318.1154727-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v9 3/3] pipeline: Fix compilation error with gcc ASan [not found] ` <20211012094318.1154727-1-zhihongx.peng@intel.com> @ 2021-10-12 9:43 ` zhihongx.peng [not found] ` <20211015142739.1876210-1-zhihongx.peng@intel.com> [not found] ` <20211015151110.1876850-1-zhihongx.peng@intel.com> 0 siblings, 2 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-12 9:43 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc will check code more stricter when ASan enabled. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- v7: no change v8: no change v9: Modify the submit log --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211015142739.1876210-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan [not found] ` <20211015142739.1876210-1-zhihongx.peng@intel.com> @ 2021-10-15 14:27 ` zhihongx.peng 2021-10-15 14:27 ` [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed zhihongx.peng 1 sibling, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-15 14:27 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc will check code more stricter when ASan enabled. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
* [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed [not found] ` <20211015142739.1876210-1-zhihongx.peng@intel.com> 2021-10-15 14:27 ` [dpdk-stable] [PATCH v10 3/4] " zhihongx.peng @ 2021-10-15 14:27 ` zhihongx.peng 1 sibling, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-15 14:27 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. "strncpy specified bound XX equals destination size" error occurs here. Fixes: 116819b9ed0d ("examples/performance-thread: add lthread subsystem") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- examples/performance-thread/common/lthread.c | 2 +- examples/performance-thread/common/lthread_cond.c | 4 ++-- examples/performance-thread/common/lthread_mutex.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/performance-thread/common/lthread.c b/examples/performance-thread/common/lthread.c index 3f1f48db43..dd4b3b27ee 100644 --- a/examples/performance-thread/common/lthread.c +++ b/examples/performance-thread/common/lthread.c @@ -463,6 +463,6 @@ void lthread_set_funcname(const char *f) { struct lthread *lt = THIS_LTHREAD; - strncpy(lt->funcname, f, sizeof(lt->funcname)); + strncpy(lt->funcname, f, sizeof(lt->funcname) - 1); lt->funcname[sizeof(lt->funcname)-1] = 0; } diff --git a/examples/performance-thread/common/lthread_cond.c b/examples/performance-thread/common/lthread_cond.c index cdcc7a7b5a..6ec8bc7e82 100644 --- a/examples/performance-thread/common/lthread_cond.c +++ b/examples/performance-thread/common/lthread_cond.c @@ -57,9 +57,9 @@ lthread_cond_init(char *name, struct lthread_cond **cond, } if (name == NULL) - strncpy(c->name, "no name", sizeof(c->name)); + strncpy(c->name, "no name", sizeof(c->name) - 1); else - strncpy(c->name, name, sizeof(c->name)); + strncpy(c->name, name, sizeof(c->name) - 1); c->name[sizeof(c->name)-1] = 0; c->root_sched = THIS_SCHED; diff --git a/examples/performance-thread/common/lthread_mutex.c b/examples/performance-thread/common/lthread_mutex.c index 01da6cad4f..7e5da609b1 100644 --- a/examples/performance-thread/common/lthread_mutex.c +++ b/examples/performance-thread/common/lthread_mutex.c @@ -52,9 +52,9 @@ lthread_mutex_init(char *name, struct lthread_mutex **mutex, } if (name == NULL) - strncpy(m->name, "no name", sizeof(m->name)); + strncpy(m->name, "no name", sizeof(m->name) - 1); else - strncpy(m->name, name, sizeof(m->name)); + strncpy(m->name, name, sizeof(m->name) - 1); m->name[sizeof(m->name)-1] = 0; m->root_sched = THIS_SCHED; -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211015151110.1876850-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan [not found] ` <20211015151110.1876850-1-zhihongx.peng@intel.com> @ 2021-10-15 15:11 ` zhihongx.peng 2021-10-18 12:21 ` Dumitrescu, Cristian 2021-10-15 15:11 ` [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed zhihongx.peng 1 sibling, 1 reply; 27+ messages in thread From: zhihongx.peng @ 2021-10-15 15:11 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc will check code more stricter when ASan enabled. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- v7: no change v8: no change v9: Modify the submit log v10:no change --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan 2021-10-15 15:11 ` [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan zhihongx.peng @ 2021-10-18 12:21 ` Dumitrescu, Cristian 2021-10-18 12:54 ` Peng, ZhihongX 0 siblings, 1 reply; 27+ messages in thread From: Dumitrescu, Cristian @ 2021-10-18 12:21 UTC (permalink / raw) To: Peng, ZhihongX, david.marchand, Burakov, Anatoly, Ananyev, Konstantin, stephen, Mcnamara, John Cc: dev, Lin, Xueqin, stable > -----Original Message----- > From: Peng, ZhihongX <zhihongx.peng@intel.com> > Sent: Friday, October 15, 2021 4:11 PM > To: david.marchand@redhat.com; Burakov, Anatoly > <anatoly.burakov@intel.com>; Ananyev, Konstantin > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; Mcnamara, John > <john.mcnamara@intel.com> > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; Peng, ZhihongX > <zhihongx.peng@intel.com>; stable@dpdk.org > Subject: [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan > > From: Zhihong Peng <zhihongx.peng@intel.com> > > The gcc will check code more stricter when ASan enabled. > "Control reaches end of non-void function" error occurs here. > > Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") > Cc: stable@dpdk.org > > Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> > Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> > --- > v7: no change > v8: no change > v9: Modify the submit log > v10:no change > --- > lib/pipeline/rte_swx_pipeline.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c > index 1cd09a4b44..0acd6c6752 100644 > --- a/lib/pipeline/rte_swx_pipeline.c > +++ b/lib/pipeline/rte_swx_pipeline.c > @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, > return 0; > } > > - CHECK(0, EINVAL); > + return -EINVAL; > } > > static inline void > @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, > instr, > data); > > - CHECK(0, EINVAL); > + return -EINVAL; > } > > static struct instruction_data * > -- > 2.25.1 NACK. This is a false issue, no bug is here. CHECK(0, EINVAL) translates to an unconditional return -EINVAL. Does this tool work correctly when macros are present? Maybe the tool should parse the preprocessed C code as opposed to initial C code? Regards, Cristian ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan 2021-10-18 12:21 ` Dumitrescu, Cristian @ 2021-10-18 12:54 ` Peng, ZhihongX 2021-10-19 11:26 ` Dumitrescu, Cristian 0 siblings, 1 reply; 27+ messages in thread From: Peng, ZhihongX @ 2021-10-18 12:54 UTC (permalink / raw) To: Dumitrescu, Cristian, david.marchand, Burakov, Anatoly, Ananyev, Konstantin, stephen, Mcnamara, John Cc: dev, Lin, Xueqin, stable > -----Original Message----- > From: Dumitrescu, Cristian <cristian.dumitrescu@intel.com> > Sent: Monday, October 18, 2021 8:22 PM > To: Peng, ZhihongX <zhihongx.peng@intel.com>; > david.marchand@redhat.com; Burakov, Anatoly > <anatoly.burakov@intel.com>; Ananyev, Konstantin > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > Mcnamara, John <john.mcnamara@intel.com> > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; stable@dpdk.org > Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan > > > > > -----Original Message----- > > From: Peng, ZhihongX <zhihongx.peng@intel.com> > > Sent: Friday, October 15, 2021 4:11 PM > > To: david.marchand@redhat.com; Burakov, Anatoly > > <anatoly.burakov@intel.com>; Ananyev, Konstantin > > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > > Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; Mcnamara, John > > <john.mcnamara@intel.com> > > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; Peng, ZhihongX > > <zhihongx.peng@intel.com>; stable@dpdk.org > > Subject: [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan > > > > From: Zhihong Peng <zhihongx.peng@intel.com> > > > > The gcc will check code more stricter when ASan enabled. > > "Control reaches end of non-void function" error occurs here. > > > > Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") > > Cc: stable@dpdk.org > > > > Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> > > Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> > > --- > > v7: no change > > v8: no change > > v9: Modify the submit log > > v10:no change > > --- > > lib/pipeline/rte_swx_pipeline.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/lib/pipeline/rte_swx_pipeline.c > > b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 > > --- a/lib/pipeline/rte_swx_pipeline.c > > +++ b/lib/pipeline/rte_swx_pipeline.c > > @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, > > return 0; > > } > > > > - CHECK(0, EINVAL); > > + return -EINVAL; > > } > > > > static inline void > > @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, > > instr, > > data); > > > > - CHECK(0, EINVAL); > > + return -EINVAL; > > } > > > > static struct instruction_data * > > -- > > 2.25.1 > > NACK. > > This is a false issue, no bug is here. CHECK(0, EINVAL) translates to an > unconditional return -EINVAL. > Does this tool work correctly when macros are present? Maybe the tool > should parse the preprocessed C code as opposed to initial C code? Yes, this is not a bug, it just solves the problem that cannot be passed after adding the asan compiler option. Only part of the macro reports errors, which may be caused by the tool itself, but this tool is part of gcc and clang, so we still have to make the code not report errors. > Regards, > Cristian ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan 2021-10-18 12:54 ` Peng, ZhihongX @ 2021-10-19 11:26 ` Dumitrescu, Cristian 2021-10-19 12:11 ` Peng, ZhihongX 0 siblings, 1 reply; 27+ messages in thread From: Dumitrescu, Cristian @ 2021-10-19 11:26 UTC (permalink / raw) To: Peng, ZhihongX, david.marchand, Burakov, Anatoly, Ananyev, Konstantin, stephen, Mcnamara, John Cc: dev, Lin, Xueqin, stable > -----Original Message----- > From: Peng, ZhihongX <zhihongx.peng@intel.com> > Sent: Monday, October 18, 2021 1:55 PM > To: Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; > david.marchand@redhat.com; Burakov, Anatoly > <anatoly.burakov@intel.com>; Ananyev, Konstantin > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > Mcnamara, John <john.mcnamara@intel.com> > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; stable@dpdk.org > Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan > > > -----Original Message----- > > From: Dumitrescu, Cristian <cristian.dumitrescu@intel.com> > > Sent: Monday, October 18, 2021 8:22 PM > > To: Peng, ZhihongX <zhihongx.peng@intel.com>; > > david.marchand@redhat.com; Burakov, Anatoly > > <anatoly.burakov@intel.com>; Ananyev, Konstantin > > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > > Mcnamara, John <john.mcnamara@intel.com> > > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; stable@dpdk.org > > Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan > > > > > > > > > -----Original Message----- > > > From: Peng, ZhihongX <zhihongx.peng@intel.com> > > > Sent: Friday, October 15, 2021 4:11 PM > > > To: david.marchand@redhat.com; Burakov, Anatoly > > > <anatoly.burakov@intel.com>; Ananyev, Konstantin > > > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > > > Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; Mcnamara, John > > > <john.mcnamara@intel.com> > > > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; Peng, ZhihongX > > > <zhihongx.peng@intel.com>; stable@dpdk.org > > > Subject: [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan > > > > > > From: Zhihong Peng <zhihongx.peng@intel.com> > > > > > > The gcc will check code more stricter when ASan enabled. > > > "Control reaches end of non-void function" error occurs here. > > > > > > Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") > > > Cc: stable@dpdk.org > > > > > > Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> > > > Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> > > > --- > > > v7: no change > > > v8: no change > > > v9: Modify the submit log > > > v10:no change > > > --- > > > lib/pipeline/rte_swx_pipeline.c | 4 ++-- > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > diff --git a/lib/pipeline/rte_swx_pipeline.c > > > b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 > > > --- a/lib/pipeline/rte_swx_pipeline.c > > > +++ b/lib/pipeline/rte_swx_pipeline.c > > > @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline > *p, > > > return 0; > > > } > > > > > > - CHECK(0, EINVAL); > > > + return -EINVAL; > > > } > > > > > > static inline void > > > @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, > > > instr, > > > data); > > > > > > - CHECK(0, EINVAL); > > > + return -EINVAL; > > > } > > > > > > static struct instruction_data * > > > -- > > > 2.25.1 > > > > NACK. > > > > This is a false issue, no bug is here. CHECK(0, EINVAL) translates to an > > unconditional return -EINVAL. > > Does this tool work correctly when macros are present? Maybe the tool > > should parse the preprocessed C code as opposed to initial C code? > > Yes, this is not a bug, it just solves the problem that cannot be passed after > adding the asan compiler option. > Only part of the macro reports errors, which may be caused by the tool itself, > but this tool is part of gcc and clang, so we still have to make the code not > report errors. > > Regards, > > Cristian Hi Zhihong, If this is not a bug in the pipeline library, why then does your patch has fix in the tile, has the Fixes label and CC-es stable@dpdk.org? Please remove and rephrase accordingly. I agree this is not a bug, and based on your statements I understand this is a sort of issue or limitation with the tool . I would prefer we fix the tool rather than fixing correct code in order to please the tool. This is likely not going to be an isolated case, but a recurring issue. Hence, I am reluctantly OK to ack this patch in order to allow the tool in (after the "fix" claim is removed), hopefully the tool will prove its benefit to DPDK. Regards, Cristian ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan 2021-10-19 11:26 ` Dumitrescu, Cristian @ 2021-10-19 12:11 ` Peng, ZhihongX 0 siblings, 0 replies; 27+ messages in thread From: Peng, ZhihongX @ 2021-10-19 12:11 UTC (permalink / raw) To: Dumitrescu, Cristian, david.marchand, Burakov, Anatoly, Ananyev, Konstantin, stephen, Mcnamara, John Cc: dev, Lin, Xueqin, stable > -----Original Message----- > From: Dumitrescu, Cristian <cristian.dumitrescu@intel.com> > Sent: Tuesday, October 19, 2021 7:26 PM > To: Peng, ZhihongX <zhihongx.peng@intel.com>; > david.marchand@redhat.com; Burakov, Anatoly > <anatoly.burakov@intel.com>; Ananyev, Konstantin > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > Mcnamara, John <john.mcnamara@intel.com> > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; stable@dpdk.org > Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan > > > > > -----Original Message----- > > From: Peng, ZhihongX <zhihongx.peng@intel.com> > > Sent: Monday, October 18, 2021 1:55 PM > > To: Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; > > david.marchand@redhat.com; Burakov, Anatoly > > <anatoly.burakov@intel.com>; Ananyev, Konstantin > > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > Mcnamara, > > John <john.mcnamara@intel.com> > > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; stable@dpdk.org > > Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with gcc > > ASan > > > > > -----Original Message----- > > > From: Dumitrescu, Cristian <cristian.dumitrescu@intel.com> > > > Sent: Monday, October 18, 2021 8:22 PM > > > To: Peng, ZhihongX <zhihongx.peng@intel.com>; > > > david.marchand@redhat.com; Burakov, Anatoly > > > <anatoly.burakov@intel.com>; Ananyev, Konstantin > > > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > > > Mcnamara, John <john.mcnamara@intel.com> > > > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; > > > stable@dpdk.org > > > Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with > > > gcc ASan > > > > > > > > > > > > > -----Original Message----- > > > > From: Peng, ZhihongX <zhihongx.peng@intel.com> > > > > Sent: Friday, October 15, 2021 4:11 PM > > > > To: david.marchand@redhat.com; Burakov, Anatoly > > > > <anatoly.burakov@intel.com>; Ananyev, Konstantin > > > > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > > > > Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; Mcnamara, > > > > John <john.mcnamara@intel.com> > > > > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; Peng, > > > > ZhihongX <zhihongx.peng@intel.com>; stable@dpdk.org > > > > Subject: [PATCH v10 3/4] pipeline: Fix compilation error with gcc > > > > ASan > > > > > > > > From: Zhihong Peng <zhihongx.peng@intel.com> > > > > > > > > The gcc will check code more stricter when ASan enabled. > > > > "Control reaches end of non-void function" error occurs here. > > > > > > > > Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") > > > > Cc: stable@dpdk.org > > > > > > > > Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> > > > > Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> > > > > --- > > > > v7: no change > > > > v8: no change > > > > v9: Modify the submit log > > > > v10:no change > > > > --- > > > > lib/pipeline/rte_swx_pipeline.c | 4 ++-- > > > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > > > > > diff --git a/lib/pipeline/rte_swx_pipeline.c > > > > b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 > > > > 100644 > > > > --- a/lib/pipeline/rte_swx_pipeline.c > > > > +++ b/lib/pipeline/rte_swx_pipeline.c > > > > @@ -4642,7 +4642,7 @@ instr_meter_translate(struct > > > > rte_swx_pipeline > > *p, > > > > return 0; > > > > } > > > > > > > > - CHECK(0, EINVAL); > > > > + return -EINVAL; > > > > } > > > > > > > > static inline void > > > > @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, > > > > instr, > > > > data); > > > > > > > > - CHECK(0, EINVAL); > > > > + return -EINVAL; > > > > } > > > > > > > > static struct instruction_data * > > > > -- > > > > 2.25.1 > > > > > > NACK. > > > > > > This is a false issue, no bug is here. CHECK(0, EINVAL) translates > > > to an unconditional return -EINVAL. > > > Does this tool work correctly when macros are present? Maybe the > > > tool should parse the preprocessed C code as opposed to initial C code? > > > > Yes, this is not a bug, it just solves the problem that cannot be > > passed after adding the asan compiler option. > > Only part of the macro reports errors, which may be caused by the tool > > itself, but this tool is part of gcc and clang, so we still have to > > make the code not report errors. > > > Regards, > > > Cristian > > Hi Zhihong, > > If this is not a bug in the pipeline library, why then does your patch has fix in > the tile, has the Fixes label and CC-es stable@dpdk.org? Please remove and > rephrase accordingly. > > I agree this is not a bug, and based on your statements I understand this is a > sort of issue or limitation with the tool . I would prefer we fix the tool rather > than fixing correct code in order to please the tool. This is likely not going to > be an isolated case, but a recurring issue. > > Hence, I am reluctantly OK to ack this patch in order to allow the tool in (after > the "fix" claim is removed), hopefully the tool will prove its benefit to DPDK. ok, I will delete it. > Regards, > Cristian ^ permalink raw reply [flat|nested] 27+ messages in thread
* [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed [not found] ` <20211015151110.1876850-1-zhihongx.peng@intel.com> 2021-10-15 15:11 ` [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan zhihongx.peng @ 2021-10-15 15:11 ` zhihongx.peng 2021-10-19 6:02 ` Peng, ZhihongX [not found] ` <20211019101207.1451058-1-zhihongx.peng@intel.com> 1 sibling, 2 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-15 15:11 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. "strncpy specified bound XX equals destination size" error occurs here. Fixes: 116819b9ed0d ("examples/performance-thread: add lthread subsystem") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- examples/performance-thread/common/lthread.c | 2 +- examples/performance-thread/common/lthread_cond.c | 4 ++-- examples/performance-thread/common/lthread_mutex.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/performance-thread/common/lthread.c b/examples/performance-thread/common/lthread.c index 3f1f48db43..dd4b3b27ee 100644 --- a/examples/performance-thread/common/lthread.c +++ b/examples/performance-thread/common/lthread.c @@ -463,6 +463,6 @@ void lthread_set_funcname(const char *f) { struct lthread *lt = THIS_LTHREAD; - strncpy(lt->funcname, f, sizeof(lt->funcname)); + strncpy(lt->funcname, f, sizeof(lt->funcname) - 1); lt->funcname[sizeof(lt->funcname)-1] = 0; } diff --git a/examples/performance-thread/common/lthread_cond.c b/examples/performance-thread/common/lthread_cond.c index cdcc7a7b5a..6ec8bc7e82 100644 --- a/examples/performance-thread/common/lthread_cond.c +++ b/examples/performance-thread/common/lthread_cond.c @@ -57,9 +57,9 @@ lthread_cond_init(char *name, struct lthread_cond **cond, } if (name == NULL) - strncpy(c->name, "no name", sizeof(c->name)); + strncpy(c->name, "no name", sizeof(c->name) - 1); else - strncpy(c->name, name, sizeof(c->name)); + strncpy(c->name, name, sizeof(c->name) - 1); c->name[sizeof(c->name)-1] = 0; c->root_sched = THIS_SCHED; diff --git a/examples/performance-thread/common/lthread_mutex.c b/examples/performance-thread/common/lthread_mutex.c index 01da6cad4f..7e5da609b1 100644 --- a/examples/performance-thread/common/lthread_mutex.c +++ b/examples/performance-thread/common/lthread_mutex.c @@ -52,9 +52,9 @@ lthread_mutex_init(char *name, struct lthread_mutex **mutex, } if (name == NULL) - strncpy(m->name, "no name", sizeof(m->name)); + strncpy(m->name, "no name", sizeof(m->name) - 1); else - strncpy(m->name, name, sizeof(m->name)); + strncpy(m->name, name, sizeof(m->name) - 1); m->name[sizeof(m->name)-1] = 0; m->root_sched = THIS_SCHED; -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed 2021-10-15 15:11 ` [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed zhihongx.peng @ 2021-10-19 6:02 ` Peng, ZhihongX [not found] ` <20211019101207.1451058-1-zhihongx.peng@intel.com> 1 sibling, 0 replies; 27+ messages in thread From: Peng, ZhihongX @ 2021-10-19 6:02 UTC (permalink / raw) To: david.marchand, Burakov, Anatoly, Ananyev, Konstantin, stephen, Dumitrescu, Cristian, Mcnamara, John Cc: dev, Lin, Xueqin, stable > -----Original Message----- > From: Peng, ZhihongX <zhihongx.peng@intel.com> > Sent: Friday, October 15, 2021 11:11 PM > To: david.marchand@redhat.com; Burakov, Anatoly > <anatoly.burakov@intel.com>; Ananyev, Konstantin > <konstantin.ananyev@intel.com>; stephen@networkplumber.org; > Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; Mcnamara, John > <john.mcnamara@intel.com> > Cc: dev@dpdk.org; Lin, Xueqin <xueqin.lin@intel.com>; Peng, ZhihongX > <ZhihongX.Peng@intel.com>; stable@dpdk.org > Subject: [PATCH v10 4/4] performance-thread: Fix cross compilation failed > > From: Zhihong Peng <zhihongx.peng@intel.com> > > The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. > "strncpy specified bound XX equals destination size" error occurs here. > > Fixes: 116819b9ed0d ("examples/performance-thread: add lthread > subsystem") > Cc: stable@dpdk.org > > Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> > Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> > --- > examples/performance-thread/common/lthread.c | 2 +- > examples/performance-thread/common/lthread_cond.c | 4 ++-- > examples/performance-thread/common/lthread_mutex.c | 4 ++-- > 3 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/examples/performance-thread/common/lthread.c > b/examples/performance-thread/common/lthread.c > index 3f1f48db43..dd4b3b27ee 100644 > --- a/examples/performance-thread/common/lthread.c > +++ b/examples/performance-thread/common/lthread.c > @@ -463,6 +463,6 @@ void lthread_set_funcname(const char *f) { > struct lthread *lt = THIS_LTHREAD; > > - strncpy(lt->funcname, f, sizeof(lt->funcname)); > + strncpy(lt->funcname, f, sizeof(lt->funcname) - 1); > lt->funcname[sizeof(lt->funcname)-1] = 0; } diff --git > a/examples/performance-thread/common/lthread_cond.c > b/examples/performance-thread/common/lthread_cond.c > index cdcc7a7b5a..6ec8bc7e82 100644 > --- a/examples/performance-thread/common/lthread_cond.c > +++ b/examples/performance-thread/common/lthread_cond.c > @@ -57,9 +57,9 @@ lthread_cond_init(char *name, struct lthread_cond > **cond, > } > > if (name == NULL) > - strncpy(c->name, "no name", sizeof(c->name)); > + strncpy(c->name, "no name", sizeof(c->name) - 1); > else > - strncpy(c->name, name, sizeof(c->name)); > + strncpy(c->name, name, sizeof(c->name) - 1); > c->name[sizeof(c->name)-1] = 0; > > c->root_sched = THIS_SCHED; > diff --git a/examples/performance-thread/common/lthread_mutex.c > b/examples/performance-thread/common/lthread_mutex.c > index 01da6cad4f..7e5da609b1 100644 > --- a/examples/performance-thread/common/lthread_mutex.c > +++ b/examples/performance-thread/common/lthread_mutex.c > @@ -52,9 +52,9 @@ lthread_mutex_init(char *name, struct lthread_mutex > **mutex, > } > > if (name == NULL) > - strncpy(m->name, "no name", sizeof(m->name)); > + strncpy(m->name, "no name", sizeof(m->name) - 1); > else > - strncpy(m->name, name, sizeof(m->name)); > + strncpy(m->name, name, sizeof(m->name) - 1); > m->name[sizeof(m->name)-1] = 0; > > m->root_sched = THIS_SCHED; > -- > 2.25.1 Hi, John Can you give me an ack? Thanks! ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211019101207.1451058-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v11 3/4] pipeline: Fix compilation error with gcc ASan [not found] ` <20211019101207.1451058-1-zhihongx.peng@intel.com> @ 2021-10-19 10:12 ` zhihongx.peng 2021-10-19 10:12 ` [dpdk-stable] [PATCH v11 4/4] performance-thread: Fix cross compilation failed zhihongx.peng 1 sibling, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-19 10:12 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara, bruce.richardson Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc will check code more stricter when ASan enabled. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- v7: no change v8: no change v9: Modify the submit log v10:no change v11:no change --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
* [dpdk-stable] [PATCH v11 4/4] performance-thread: Fix cross compilation failed [not found] ` <20211019101207.1451058-1-zhihongx.peng@intel.com> 2021-10-19 10:12 ` [dpdk-stable] [PATCH v11 3/4] pipeline: Fix compilation error with gcc ASan zhihongx.peng @ 2021-10-19 10:12 ` zhihongx.peng 2021-10-19 10:37 ` Bruce Richardson ` (3 more replies) 1 sibling, 4 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-19 10:12 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara, bruce.richardson Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. "strncpy specified bound XX equals destination size" error occurs here. Fixes: 116819b9ed0d ("examples/performance-thread: add lthread subsystem") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- v11: Use rte_strlcpy to replace strncpy. --- examples/performance-thread/common/lthread.c | 4 ++-- examples/performance-thread/common/lthread_cond.c | 6 +++--- examples/performance-thread/common/lthread_mutex.c | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/performance-thread/common/lthread.c b/examples/performance-thread/common/lthread.c index 3f1f48db43..7949beb8e2 100644 --- a/examples/performance-thread/common/lthread.c +++ b/examples/performance-thread/common/lthread.c @@ -20,6 +20,7 @@ #include <sys/mman.h> #include <rte_log.h> +#include <rte_string_fns.h> #include <ctx.h> #include <stack.h> @@ -463,6 +464,5 @@ void lthread_set_funcname(const char *f) { struct lthread *lt = THIS_LTHREAD; - strncpy(lt->funcname, f, sizeof(lt->funcname)); - lt->funcname[sizeof(lt->funcname)-1] = 0; + rte_strlcpy(lt->funcname, f, sizeof(lt->funcname)); } diff --git a/examples/performance-thread/common/lthread_cond.c b/examples/performance-thread/common/lthread_cond.c index cdcc7a7b5a..398735c192 100644 --- a/examples/performance-thread/common/lthread_cond.c +++ b/examples/performance-thread/common/lthread_cond.c @@ -20,6 +20,7 @@ #include <rte_log.h> #include <rte_common.h> +#include <rte_string_fns.h> #include "lthread_api.h" #include "lthread_diag_api.h" @@ -57,10 +58,9 @@ lthread_cond_init(char *name, struct lthread_cond **cond, } if (name == NULL) - strncpy(c->name, "no name", sizeof(c->name)); + rte_strlcpy(c->name, "no name", sizeof(c->name)); else - strncpy(c->name, name, sizeof(c->name)); - c->name[sizeof(c->name)-1] = 0; + rte_strlcpy(c->name, name, sizeof(c->name)); c->root_sched = THIS_SCHED; diff --git a/examples/performance-thread/common/lthread_mutex.c b/examples/performance-thread/common/lthread_mutex.c index 01da6cad4f..1911e5ac67 100644 --- a/examples/performance-thread/common/lthread_mutex.c +++ b/examples/performance-thread/common/lthread_mutex.c @@ -19,6 +19,7 @@ #include <rte_log.h> #include <rte_spinlock.h> #include <rte_common.h> +#include <rte_string_fns.h> #include "lthread_api.h" #include "lthread_int.h" @@ -52,10 +53,9 @@ lthread_mutex_init(char *name, struct lthread_mutex **mutex, } if (name == NULL) - strncpy(m->name, "no name", sizeof(m->name)); + rte_strlcpy(m->name, "no name", sizeof(m->name)); else - strncpy(m->name, name, sizeof(m->name)); - m->name[sizeof(m->name)-1] = 0; + rte_strlcpy(m->name, name, sizeof(m->name)); m->root_sched = THIS_SCHED; m->owner = NULL; -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [dpdk-stable] [PATCH v11 4/4] performance-thread: Fix cross compilation failed 2021-10-19 10:12 ` [dpdk-stable] [PATCH v11 4/4] performance-thread: Fix cross compilation failed zhihongx.peng @ 2021-10-19 10:37 ` Bruce Richardson [not found] ` <20211019130445.1955622-1-zhihongx.peng@intel.com> ` (2 subsequent siblings) 3 siblings, 0 replies; 27+ messages in thread From: Bruce Richardson @ 2021-10-19 10:37 UTC (permalink / raw) To: zhihongx.peng Cc: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara, dev, xueqin.lin, stable On Tue, Oct 19, 2021 at 06:12:07PM +0800, zhihongx.peng@intel.com wrote: > From: Zhihong Peng <zhihongx.peng@intel.com> > > The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. > "strncpy specified bound XX equals destination size" error occurs here. > > Fixes: 116819b9ed0d ("examples/performance-thread: add lthread subsystem") > Cc: stable@dpdk.org > > Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> > Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> > --- > v11: Use rte_strlcpy to replace strncpy. > --- +1 to using strlcpy, but it should be "strlcpy" rather than "rte_strlcpy" which should be used. Analysis tools are likely to be familiar with strlcpy but won't know the DPDK-specific version of it. With that change to remove the rte_ prefix Acked-by: Bruce Richardson <bruce.richardson@intel.com> /Bruce ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211019130445.1955622-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v12 4/4] performance-thread: Fix cross compilation failed [not found] ` <20211019130445.1955622-1-zhihongx.peng@intel.com> @ 2021-10-19 13:04 ` zhihongx.peng 0 siblings, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-19 13:04 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara, bruce.richardson Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. "strncpy specified bound XX equals destination size" error occurs here. Fixes: 116819b9ed0d ("examples/performance-thread: add lthread subsystem") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- v11: Use rte_strlcpy to replace strncpy. v12: Delete rte_strlcpy's rte_. --- examples/performance-thread/common/lthread.c | 4 ++-- examples/performance-thread/common/lthread_cond.c | 6 +++--- examples/performance-thread/common/lthread_mutex.c | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/performance-thread/common/lthread.c b/examples/performance-thread/common/lthread.c index 3f1f48db43..190e5874b1 100644 --- a/examples/performance-thread/common/lthread.c +++ b/examples/performance-thread/common/lthread.c @@ -20,6 +20,7 @@ #include <sys/mman.h> #include <rte_log.h> +#include <rte_string_fns.h> #include <ctx.h> #include <stack.h> @@ -463,6 +464,5 @@ void lthread_set_funcname(const char *f) { struct lthread *lt = THIS_LTHREAD; - strncpy(lt->funcname, f, sizeof(lt->funcname)); - lt->funcname[sizeof(lt->funcname)-1] = 0; + strlcpy(lt->funcname, f, sizeof(lt->funcname)); } diff --git a/examples/performance-thread/common/lthread_cond.c b/examples/performance-thread/common/lthread_cond.c index cdcc7a7b5a..e7be17089a 100644 --- a/examples/performance-thread/common/lthread_cond.c +++ b/examples/performance-thread/common/lthread_cond.c @@ -20,6 +20,7 @@ #include <rte_log.h> #include <rte_common.h> +#include <rte_string_fns.h> #include "lthread_api.h" #include "lthread_diag_api.h" @@ -57,10 +58,9 @@ lthread_cond_init(char *name, struct lthread_cond **cond, } if (name == NULL) - strncpy(c->name, "no name", sizeof(c->name)); + strlcpy(c->name, "no name", sizeof(c->name)); else - strncpy(c->name, name, sizeof(c->name)); - c->name[sizeof(c->name)-1] = 0; + strlcpy(c->name, name, sizeof(c->name)); c->root_sched = THIS_SCHED; diff --git a/examples/performance-thread/common/lthread_mutex.c b/examples/performance-thread/common/lthread_mutex.c index 01da6cad4f..709ab9f553 100644 --- a/examples/performance-thread/common/lthread_mutex.c +++ b/examples/performance-thread/common/lthread_mutex.c @@ -19,6 +19,7 @@ #include <rte_log.h> #include <rte_spinlock.h> #include <rte_common.h> +#include <rte_string_fns.h> #include "lthread_api.h" #include "lthread_int.h" @@ -52,10 +53,9 @@ lthread_mutex_init(char *name, struct lthread_mutex **mutex, } if (name == NULL) - strncpy(m->name, "no name", sizeof(m->name)); + strlcpy(m->name, "no name", sizeof(m->name)); else - strncpy(m->name, name, sizeof(m->name)); - m->name[sizeof(m->name)-1] = 0; + strlcpy(m->name, name, sizeof(m->name)); m->root_sched = THIS_SCHED; m->owner = NULL; -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211019135841.2004819-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v12 4/4] performance-thread: Fix cross compilation failed [not found] ` <20211019135841.2004819-1-zhihongx.peng@intel.com> @ 2021-10-19 13:58 ` zhihongx.peng 0 siblings, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-19 13:58 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara, bruce.richardson Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. "strncpy specified bound XX equals destination size" error occurs here. Fixes: 116819b9ed0d ("examples/performance-thread: add lthread subsystem") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- v11: Use rte_strlcpy to replace strncpy. v12: Delete rte_strlcpy's rte_. --- examples/performance-thread/common/lthread.c | 4 ++-- examples/performance-thread/common/lthread_cond.c | 6 +++--- examples/performance-thread/common/lthread_mutex.c | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/performance-thread/common/lthread.c b/examples/performance-thread/common/lthread.c index 3f1f48db43..190e5874b1 100644 --- a/examples/performance-thread/common/lthread.c +++ b/examples/performance-thread/common/lthread.c @@ -20,6 +20,7 @@ #include <sys/mman.h> #include <rte_log.h> +#include <rte_string_fns.h> #include <ctx.h> #include <stack.h> @@ -463,6 +464,5 @@ void lthread_set_funcname(const char *f) { struct lthread *lt = THIS_LTHREAD; - strncpy(lt->funcname, f, sizeof(lt->funcname)); - lt->funcname[sizeof(lt->funcname)-1] = 0; + strlcpy(lt->funcname, f, sizeof(lt->funcname)); } diff --git a/examples/performance-thread/common/lthread_cond.c b/examples/performance-thread/common/lthread_cond.c index cdcc7a7b5a..e7be17089a 100644 --- a/examples/performance-thread/common/lthread_cond.c +++ b/examples/performance-thread/common/lthread_cond.c @@ -20,6 +20,7 @@ #include <rte_log.h> #include <rte_common.h> +#include <rte_string_fns.h> #include "lthread_api.h" #include "lthread_diag_api.h" @@ -57,10 +58,9 @@ lthread_cond_init(char *name, struct lthread_cond **cond, } if (name == NULL) - strncpy(c->name, "no name", sizeof(c->name)); + strlcpy(c->name, "no name", sizeof(c->name)); else - strncpy(c->name, name, sizeof(c->name)); - c->name[sizeof(c->name)-1] = 0; + strlcpy(c->name, name, sizeof(c->name)); c->root_sched = THIS_SCHED; diff --git a/examples/performance-thread/common/lthread_mutex.c b/examples/performance-thread/common/lthread_mutex.c index 01da6cad4f..709ab9f553 100644 --- a/examples/performance-thread/common/lthread_mutex.c +++ b/examples/performance-thread/common/lthread_mutex.c @@ -19,6 +19,7 @@ #include <rte_log.h> #include <rte_spinlock.h> #include <rte_common.h> +#include <rte_string_fns.h> #include "lthread_api.h" #include "lthread_int.h" @@ -52,10 +53,9 @@ lthread_mutex_init(char *name, struct lthread_mutex **mutex, } if (name == NULL) - strncpy(m->name, "no name", sizeof(m->name)); + strlcpy(m->name, "no name", sizeof(m->name)); else - strncpy(m->name, name, sizeof(m->name)); - m->name[sizeof(m->name)-1] = 0; + strlcpy(m->name, name, sizeof(m->name)); m->root_sched = THIS_SCHED; m->owner = NULL; -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211019151524.2005442-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v12 4/4] performance-thread: Fix cross compilation failed [not found] ` <20211019151524.2005442-1-zhihongx.peng@intel.com> @ 2021-10-19 15:15 ` zhihongx.peng 0 siblings, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-19 15:15 UTC (permalink / raw) To: david.marchand, thomas, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara, bruce.richardson Cc: dev, xueqin.lin, Zhihong Peng, stable From: Zhihong Peng <zhihongx.peng@intel.com> The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. "strncpy specified bound XX equals destination size" error occurs here. Fixes: 116819b9ed0d ("examples/performance-thread: add lthread subsystem") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- v11: Use rte_strlcpy to replace strncpy. v12: Delete rte_strlcpy's rte_. --- examples/performance-thread/common/lthread.c | 4 ++-- examples/performance-thread/common/lthread_cond.c | 6 +++--- examples/performance-thread/common/lthread_mutex.c | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/performance-thread/common/lthread.c b/examples/performance-thread/common/lthread.c index 3f1f48db43..190e5874b1 100644 --- a/examples/performance-thread/common/lthread.c +++ b/examples/performance-thread/common/lthread.c @@ -20,6 +20,7 @@ #include <sys/mman.h> #include <rte_log.h> +#include <rte_string_fns.h> #include <ctx.h> #include <stack.h> @@ -463,6 +464,5 @@ void lthread_set_funcname(const char *f) { struct lthread *lt = THIS_LTHREAD; - strncpy(lt->funcname, f, sizeof(lt->funcname)); - lt->funcname[sizeof(lt->funcname)-1] = 0; + strlcpy(lt->funcname, f, sizeof(lt->funcname)); } diff --git a/examples/performance-thread/common/lthread_cond.c b/examples/performance-thread/common/lthread_cond.c index cdcc7a7b5a..e7be17089a 100644 --- a/examples/performance-thread/common/lthread_cond.c +++ b/examples/performance-thread/common/lthread_cond.c @@ -20,6 +20,7 @@ #include <rte_log.h> #include <rte_common.h> +#include <rte_string_fns.h> #include "lthread_api.h" #include "lthread_diag_api.h" @@ -57,10 +58,9 @@ lthread_cond_init(char *name, struct lthread_cond **cond, } if (name == NULL) - strncpy(c->name, "no name", sizeof(c->name)); + strlcpy(c->name, "no name", sizeof(c->name)); else - strncpy(c->name, name, sizeof(c->name)); - c->name[sizeof(c->name)-1] = 0; + strlcpy(c->name, name, sizeof(c->name)); c->root_sched = THIS_SCHED; diff --git a/examples/performance-thread/common/lthread_mutex.c b/examples/performance-thread/common/lthread_mutex.c index 01da6cad4f..709ab9f553 100644 --- a/examples/performance-thread/common/lthread_mutex.c +++ b/examples/performance-thread/common/lthread_mutex.c @@ -19,6 +19,7 @@ #include <rte_log.h> #include <rte_spinlock.h> #include <rte_common.h> +#include <rte_string_fns.h> #include "lthread_api.h" #include "lthread_int.h" @@ -52,10 +53,9 @@ lthread_mutex_init(char *name, struct lthread_mutex **mutex, } if (name == NULL) - strncpy(m->name, "no name", sizeof(m->name)); + strlcpy(m->name, "no name", sizeof(m->name)); else - strncpy(m->name, name, sizeof(m->name)); - m->name[sizeof(m->name)-1] = 0; + strlcpy(m->name, name, sizeof(m->name)); m->root_sched = THIS_SCHED; m->owner = NULL; -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
[parent not found: <20211015141326.1875898-1-zhihongx.peng@intel.com>]
* [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan [not found] ` <20211015141326.1875898-1-zhihongx.peng@intel.com> @ 2021-10-15 14:13 ` zhihongx.peng 2021-10-15 14:13 ` [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed zhihongx.peng 1 sibling, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-15 14:13 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara Cc: 20211012094318.1154727-3-zhihongx.peng, Zhihong Peng, stable, Xueqin Lin From: Zhihong Peng <zhihongx.peng@intel.com> The gcc will check code more stricter when ASan enabled. "Control reaches end of non-void function" error occurs here. Fixes: f38913b7fb8e ("pipeline: add meter array to SWX") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- lib/pipeline/rte_swx_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c index 1cd09a4b44..0acd6c6752 100644 --- a/lib/pipeline/rte_swx_pipeline.c +++ b/lib/pipeline/rte_swx_pipeline.c @@ -4642,7 +4642,7 @@ instr_meter_translate(struct rte_swx_pipeline *p, return 0; } - CHECK(0, EINVAL); + return -EINVAL; } static inline void @@ -5937,7 +5937,7 @@ instr_translate(struct rte_swx_pipeline *p, instr, data); - CHECK(0, EINVAL); + return -EINVAL; } static struct instruction_data * -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
* [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed [not found] ` <20211015141326.1875898-1-zhihongx.peng@intel.com> 2021-10-15 14:13 ` [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan zhihongx.peng @ 2021-10-15 14:13 ` zhihongx.peng 1 sibling, 0 replies; 27+ messages in thread From: zhihongx.peng @ 2021-10-15 14:13 UTC (permalink / raw) To: david.marchand, anatoly.burakov, konstantin.ananyev, stephen, cristian.dumitrescu, john.mcnamara Cc: 20211012094318.1154727-3-zhihongx.peng, Zhihong Peng, stable, Xueqin Lin From: Zhihong Peng <zhihongx.peng@intel.com> The gcc(arm-linux-gcc) will check code more stricter when ASan enabled. "strncpy specified bound XX equals destination size" error occurs here. Fixes: 116819b9ed0d ("examples/performance-thread: add lthread subsystem") Cc: stable@dpdk.org Signed-off-by: Xueqin Lin <xueqin.lin@intel.com> Signed-off-by: Zhihong Peng <zhihongx.peng@intel.com> --- examples/performance-thread/common/lthread.c | 2 +- examples/performance-thread/common/lthread_cond.c | 4 ++-- examples/performance-thread/common/lthread_mutex.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/performance-thread/common/lthread.c b/examples/performance-thread/common/lthread.c index 3f1f48db43..dd4b3b27ee 100644 --- a/examples/performance-thread/common/lthread.c +++ b/examples/performance-thread/common/lthread.c @@ -463,6 +463,6 @@ void lthread_set_funcname(const char *f) { struct lthread *lt = THIS_LTHREAD; - strncpy(lt->funcname, f, sizeof(lt->funcname)); + strncpy(lt->funcname, f, sizeof(lt->funcname) - 1); lt->funcname[sizeof(lt->funcname)-1] = 0; } diff --git a/examples/performance-thread/common/lthread_cond.c b/examples/performance-thread/common/lthread_cond.c index cdcc7a7b5a..6ec8bc7e82 100644 --- a/examples/performance-thread/common/lthread_cond.c +++ b/examples/performance-thread/common/lthread_cond.c @@ -57,9 +57,9 @@ lthread_cond_init(char *name, struct lthread_cond **cond, } if (name == NULL) - strncpy(c->name, "no name", sizeof(c->name)); + strncpy(c->name, "no name", sizeof(c->name) - 1); else - strncpy(c->name, name, sizeof(c->name)); + strncpy(c->name, name, sizeof(c->name) - 1); c->name[sizeof(c->name)-1] = 0; c->root_sched = THIS_SCHED; diff --git a/examples/performance-thread/common/lthread_mutex.c b/examples/performance-thread/common/lthread_mutex.c index 01da6cad4f..7e5da609b1 100644 --- a/examples/performance-thread/common/lthread_mutex.c +++ b/examples/performance-thread/common/lthread_mutex.c @@ -52,9 +52,9 @@ lthread_mutex_init(char *name, struct lthread_mutex **mutex, } if (name == NULL) - strncpy(m->name, "no name", sizeof(m->name)); + strncpy(m->name, "no name", sizeof(m->name) - 1); else - strncpy(m->name, name, sizeof(m->name)); + strncpy(m->name, name, sizeof(m->name) - 1); m->name[sizeof(m->name)-1] = 0; m->root_sched = THIS_SCHED; -- 2.25.1 ^ permalink raw reply [flat|nested] 27+ messages in thread
end of thread, other threads:[~2021-10-19 15:17 UTC | newest] Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20210918074155.872358-1-zhihongx.peng@intel.com> [not found] ` <20210924022028.1291404-1-zhihongx.peng@intel.com> 2021-09-24 2:20 ` [dpdk-stable] [PATCH v4 2/2] lib/pipeline: Fix gcc compilation error using ASan zhihongx.peng [not found] ` <20210924093309.3411-1-zhihongx.peng@intel.com> 2021-09-24 9:33 ` [dpdk-stable] [PATCH v5 2/2] " zhihongx.peng [not found] ` <20210924100310.4278-1-zhihongx.peng@intel.com> 2021-09-24 10:03 ` [dpdk-stable] [PATCH v5 2/2] lib/pipeline: " zhihongx.peng [not found] ` <20210930052724.195414-1-zhihongx.peng@intel.com> 2021-09-30 5:27 ` [dpdk-stable] [PATCH v6 " zhihongx.peng 2021-09-30 8:29 ` David Marchand 2021-10-12 2:41 ` Peng, ZhihongX [not found] ` <20210930125938.266731-1-zhihongx.peng@intel.com> 2021-09-30 12:59 ` [dpdk-stable] [PATCH v6 2/2] lib/pipeline: Fix compilation error with gcc ASan zhihongx.peng [not found] ` <20211008091751.417468-1-zhihongx.peng@intel.com> 2021-10-08 9:17 ` [dpdk-stable] [PATCH v7 3/3] " zhihongx.peng [not found] ` <20211011062810.422220-1-zhihongx.peng@intel.com> 2021-10-11 6:28 ` [dpdk-stable] [PATCH v8 " zhihongx.peng [not found] ` <20211012094318.1154727-1-zhihongx.peng@intel.com> 2021-10-12 9:43 ` [dpdk-stable] [PATCH v9 3/3] pipeline: " zhihongx.peng [not found] ` <20211015142739.1876210-1-zhihongx.peng@intel.com> 2021-10-15 14:27 ` [dpdk-stable] [PATCH v10 3/4] " zhihongx.peng 2021-10-15 14:27 ` [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed zhihongx.peng [not found] ` <20211015151110.1876850-1-zhihongx.peng@intel.com> 2021-10-15 15:11 ` [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan zhihongx.peng 2021-10-18 12:21 ` Dumitrescu, Cristian 2021-10-18 12:54 ` Peng, ZhihongX 2021-10-19 11:26 ` Dumitrescu, Cristian 2021-10-19 12:11 ` Peng, ZhihongX 2021-10-15 15:11 ` [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed zhihongx.peng 2021-10-19 6:02 ` Peng, ZhihongX [not found] ` <20211019101207.1451058-1-zhihongx.peng@intel.com> 2021-10-19 10:12 ` [dpdk-stable] [PATCH v11 3/4] pipeline: Fix compilation error with gcc ASan zhihongx.peng 2021-10-19 10:12 ` [dpdk-stable] [PATCH v11 4/4] performance-thread: Fix cross compilation failed zhihongx.peng 2021-10-19 10:37 ` Bruce Richardson [not found] ` <20211019130445.1955622-1-zhihongx.peng@intel.com> 2021-10-19 13:04 ` [dpdk-stable] [PATCH v12 " zhihongx.peng [not found] ` <20211019135841.2004819-1-zhihongx.peng@intel.com> 2021-10-19 13:58 ` zhihongx.peng [not found] ` <20211019151524.2005442-1-zhihongx.peng@intel.com> 2021-10-19 15:15 ` zhihongx.peng [not found] ` <20211015141326.1875898-1-zhihongx.peng@intel.com> 2021-10-15 14:13 ` [dpdk-stable] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan zhihongx.peng 2021-10-15 14:13 ` [dpdk-stable] [PATCH v10 4/4] performance-thread: Fix cross compilation failed zhihongx.peng
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).