Thread (117 messages) 117 messages, 11 authors, 2021-11-03

Re: [dpdk-dev] [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan

From: Peng, ZhihongX <hidden>
Date: 2021-10-19 12:11:47

-----Original Message-----
From: Dumitrescu, Cristian <redacted>
Sent: Tuesday, October 19, 2021 7:26 PM
To: Peng, ZhihongX <redacted>;
david.marchand@redhat.com; Burakov, Anatoly
[off-list ref]; Ananyev, Konstantin
[off-list ref]; stephen@networkplumber.org;
Mcnamara, John [off-list ref]
Cc: dev@dpdk.org; Lin, Xueqin <redacted>; stable@dpdk.org
Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with gcc ASan


quoted
-----Original Message-----
From: Peng, ZhihongX <redacted>
Sent: Monday, October 18, 2021 1:55 PM
To: Dumitrescu, Cristian <redacted>;
david.marchand@redhat.com; Burakov, Anatoly
[off-list ref]; Ananyev, Konstantin
[off-list ref]; stephen@networkplumber.org;
Mcnamara,
quoted
John [off-list ref]
Cc: dev@dpdk.org; Lin, Xueqin <redacted>; stable@dpdk.org
Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with gcc
ASan
quoted
-----Original Message-----
From: Dumitrescu, Cristian <redacted>
Sent: Monday, October 18, 2021 8:22 PM
To: Peng, ZhihongX <redacted>;
david.marchand@redhat.com; Burakov, Anatoly
[off-list ref]; Ananyev, Konstantin
[off-list ref]; stephen@networkplumber.org;
Mcnamara, John [off-list ref]
Cc: dev@dpdk.org; Lin, Xueqin <redacted>;
stable@dpdk.org
Subject: RE: [PATCH v10 3/4] pipeline: Fix compilation error with
gcc ASan


quoted
-----Original Message-----
From: Peng, ZhihongX <redacted>
Sent: Friday, October 15, 2021 4:11 PM
To: david.marchand@redhat.com; Burakov, Anatoly
[off-list ref]; Ananyev, Konstantin
[off-list ref]; stephen@networkplumber.org;
Dumitrescu, Cristian [off-list ref]; Mcnamara,
John [off-list ref]
Cc: dev@dpdk.org; Lin, Xueqin <redacted>; Peng,
ZhihongX [off-list ref]; stable@dpdk.org
Subject: [PATCH v10 3/4] pipeline: Fix compilation error with gcc
ASan

From: Zhihong Peng <redacted>

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 <redacted>
Signed-off-by: Zhihong Peng <redacted>
---
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,
quoted
quoted
 		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.
quoted
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help