Message ID | 20210114052324.393980-1-simei.su@intel.com (mailing list archive) |
---|---|
State | Accepted, archived |
Delegated to: | Qi Zhang |
Headers | show |
Series | net/iavf: fix null pointer dereference | expand |
Context | Check | Description |
---|---|---|
ci/iol-testing | success | Testing PASS |
ci/iol-abi-testing | success | Testing PASS |
ci/intel-Testing | success | Testing PASS |
ci/iol-intel-Performance | success | Performance Testing PASS |
ci/iol-intel-Functional | success | Functional Testing PASS |
ci/Intel-compilation | success | Compilation OK |
ci/iol-broadcom-Functional | success | Functional Testing PASS |
ci/checkpatch | warning | coding style issues |
> -----Original Message----- > From: Su, Simei <simei.su@intel.com> > Sent: Thursday, January 14, 2021 1:23 PM > To: Zhang, Qi Z <qi.z.zhang@intel.com> > Cc: dev@dpdk.org; Guo, Junfeng <junfeng.guo@intel.com>; Guo, Jia > <jia.guo@intel.com>; Cao, Yahui <yahui.cao@intel.com>; Su, Simei > <simei.su@intel.com> > Subject: [PATCH] net/iavf: fix null pointer dereference > > A pointer has already been dereferenced before checking if it is NULL. > It doesn't make any sense, so correct to avoid it. > > Fixes: 4f3cfcbc3df3 ("net/iavf: support eCPRI msg type 0 for RSS") Coverity issue: > 365290 > > Signed-off-by: Simei Su <simei.su@intel.com> > --- > drivers/net/iavf/iavf_hash.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c index > ebaac58..9901f4b 100644 > --- a/drivers/net/iavf/iavf_hash.c > +++ b/drivers/net/iavf/iavf_hash.c > @@ -597,11 +597,13 @@ iavf_hash_parse_pattern(const struct rte_flow_item > pattern[], uint64_t *phint, > break; > case RTE_FLOW_ITEM_TYPE_ECPRI: > ecpri = item->spec; > - ecpri_common.u32 = rte_be_to_cpu_32( > - ecpri->hdr.common.u32); > if (!ecpri) > break; > - else if (ecpri_common.type != > + > + ecpri_common.u32 = rte_be_to_cpu_32( > + ecpri->hdr.common.u32); patchwork warning CHECK:OPEN_ENDED_LINE for above code As we have 100 char line limit now, the wrap is not necessary. Acked-by: Qi Zhang <qi.z.zhang@intel.com> Applied to dpdk-next-net-intel after capture above fix. Thanks Qi
diff --git a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c index ebaac58..9901f4b 100644 --- a/drivers/net/iavf/iavf_hash.c +++ b/drivers/net/iavf/iavf_hash.c @@ -597,11 +597,13 @@ iavf_hash_parse_pattern(const struct rte_flow_item pattern[], uint64_t *phint, break; case RTE_FLOW_ITEM_TYPE_ECPRI: ecpri = item->spec; - ecpri_common.u32 = rte_be_to_cpu_32( - ecpri->hdr.common.u32); if (!ecpri) break; - else if (ecpri_common.type != + + ecpri_common.u32 = rte_be_to_cpu_32( + ecpri->hdr.common.u32); + + if (ecpri_common.type != RTE_ECPRI_MSG_TYPE_IQ_DATA) { rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_ITEM, item,
A pointer has already been dereferenced before checking if it is NULL. It doesn't make any sense, so correct to avoid it. Fixes: 4f3cfcbc3df3 ("net/iavf: support eCPRI msg type 0 for RSS") Coverity issue: 365290 Signed-off-by: Simei Su <simei.su@intel.com> --- drivers/net/iavf/iavf_hash.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)