baseband/turbo_sw: fix dereference of null

Message ID 1619083505-65454-1-git-send-email-humin29@huawei.com (mailing list archive)
State Accepted, archived
Delegated to: akhil goyal
Headers
Series baseband/turbo_sw: fix dereference of null |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/github-robot success github build: passed
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS
ci/iol-testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-abi-testing success Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS

Commit Message

humin (Q) April 22, 2021, 9:25 a.m. UTC
  Return value of a function 'rte_malloc' is dereferenced without
checking, and may result in segmetation fault.

This patch fixed it.

Fixes: 31a7853d1ed9 ("baseband/turbo_sw: support large size code block")
Cc: stable@dpdk.org

Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
---
 app/test-bbdev/test_bbdev_perf.c | 3 +++
 1 file changed, 3 insertions(+)
  

Comments

Chautru, Nicolas April 22, 2021, 3:20 p.m. UTC | #1
> -----Original Message-----
> From: Min Hu (Connor) <humin29@huawei.com>
> Sent: Thursday, April 22, 2021 2:25 AM
> 
> Return value of a function 'rte_malloc' is dereferenced without checking,
> and may result in segmetation fault.
> 
> This patch fixed it.
> 
> Fixes: 31a7853d1ed9 ("baseband/turbo_sw: support large size code block")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Min Hu (Connor) <humin29@huawei.com>

Acked-by: Nicolas Chautru <nicolas.chautru@intel.com>

> ---
>  app/test-bbdev/test_bbdev_perf.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-
> bbdev/test_bbdev_perf.c
> index 45b85b9..f94e2a9 100644
> --- a/app/test-bbdev/test_bbdev_perf.c
> +++ b/app/test-bbdev/test_bbdev_perf.c
> @@ -957,6 +957,9 @@ init_op_data_objs(struct rte_bbdev_op_data *bufs,
>  			if ((op_type == DATA_INPUT) && large_input) {
>  				/* Allocate a fake overused mbuf */
>  				data = rte_malloc(NULL, seg->length, 0);
> +				TEST_ASSERT_NOT_NULL(data,
> +					"rte malloc failed with %u bytes",
> +					seg->length);
>  				memcpy(data, seg->addr, seg->length);
>  				m_head->buf_addr = data;
>  				m_head->buf_iova =
> rte_malloc_virt2iova(data);
> --
> 2.7.4
  
Akhil Goyal May 5, 2021, 1:57 p.m. UTC | #2
> 
> 
> > -----Original Message-----
> > From: Min Hu (Connor) <humin29@huawei.com>
> > Sent: Thursday, April 22, 2021 2:25 AM
> >
> > Return value of a function 'rte_malloc' is dereferenced without checking,
> > and may result in segmetation fault.
> >
> > This patch fixed it.
> >
> > Fixes: 31a7853d1ed9 ("baseband/turbo_sw: support large size code block")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
> 
> Acked-by: Nicolas Chautru <nicolas.chautru@intel.com>
> 
Applied to dpdk-next-crypto

Thanks.
  

Patch

diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
index 45b85b9..f94e2a9 100644
--- a/app/test-bbdev/test_bbdev_perf.c
+++ b/app/test-bbdev/test_bbdev_perf.c
@@ -957,6 +957,9 @@  init_op_data_objs(struct rte_bbdev_op_data *bufs,
 			if ((op_type == DATA_INPUT) && large_input) {
 				/* Allocate a fake overused mbuf */
 				data = rte_malloc(NULL, seg->length, 0);
+				TEST_ASSERT_NOT_NULL(data,
+					"rte malloc failed with %u bytes",
+					seg->length);
 				memcpy(data, seg->addr, seg->length);
 				m_head->buf_addr = data;
 				m_head->buf_iova = rte_malloc_virt2iova(data);