On Thu, Jun 16, 2022 at 11:28 AM Jayatheerthan, Jay <jay.jayatheert...@intel.com> wrote: > > Looks good. > > Acked-by: Jay Jayatheerthan <jay.jayatheert...@intel.com>
Applied to dpdk-next-net-eventdev/for-main. Thanks > > -Jay > > > > > -----Original Message----- > > From: Naga Harish K, S V <s.v.naga.haris...@intel.com> > > Sent: Thursday, June 16, 2022 10:45 AM > > To: Naga Harish K, S V <s.v.naga.haris...@intel.com>; Jayatheerthan, Jay > > <jay.jayatheert...@intel.com>; jer...@marvell.com > > Cc: dev@dpdk.org; sta...@dpdk.org > > Subject: [PATCH v2] eventdev/eth_tx: fix adapter create > > > > During adapter create, memory is allocated for storing event port > > configuration which is freed during adapter free. The following > > error is seen during free "EAL: Error: Invalid memory" > > > > The service data pointer storage for txa_service_data_array is > > allocated during adapter create with incorrect size which is less > > than the required size. > > Initialization of this memory causes buffer overflow and result in > > metadata overwrite of event port config memory allocated above > > and results in the above error message during free. > > > > Allocating the correct size of memory for txa_service_data_array > > prevents overwriting other memory areas like event port config > > memory. > > > > Fixes: a3bbf2e09756 ("eventdev: add eth Tx adapter implementation") > > Cc: sta...@dpdk.org > > > > Signed-off-by: Naga Harish K S V <s.v.naga.haris...@intel.com> > > --- > > v2: > > * fix commit message > > --- > > lib/eventdev/rte_event_eth_tx_adapter.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/lib/eventdev/rte_event_eth_tx_adapter.c > > b/lib/eventdev/rte_event_eth_tx_adapter.c > > index 1b304f0a73..c700fb7b1f 100644 > > --- a/lib/eventdev/rte_event_eth_tx_adapter.c > > +++ b/lib/eventdev/rte_event_eth_tx_adapter.c > > @@ -224,7 +224,7 @@ txa_service_data_init(void) > > if (txa_service_data_array == NULL) { > > txa_service_data_array = > > > > txa_memzone_array_get("txa_service_data_array", > > - sizeof(int), > > + sizeof(*txa_service_data_array), > > > > RTE_EVENT_ETH_TX_ADAPTER_MAX_INSTANCE); > > if (txa_service_data_array == NULL) > > return -ENOMEM; > > -- > > 2.25.1 >