* [PATCH v2] eventdev/eth_tx: fix adapter create [not found] <20220616050441.2197264-1-s.v.naga.harish.k@intel.com> @ 2022-06-16 5:14 ` Naga Harish K S V 2022-06-16 5:57 ` Jayatheerthan, Jay 0 siblings, 1 reply; 3+ messages in thread From: Naga Harish K S V @ 2022-06-16 5:14 UTC (permalink / raw) To: s.v.naga.harish.k, jay.jayatheerthan, jerinj; +Cc: dev, stable 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: stable@dpdk.org Signed-off-by: Naga Harish K S V <s.v.naga.harish.k@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 ^ permalink raw reply [flat|nested] 3+ messages in thread
* RE: [PATCH v2] eventdev/eth_tx: fix adapter create 2022-06-16 5:14 ` [PATCH v2] eventdev/eth_tx: fix adapter create Naga Harish K S V @ 2022-06-16 5:57 ` Jayatheerthan, Jay 2022-06-20 18:40 ` Jerin Jacob 0 siblings, 1 reply; 3+ messages in thread From: Jayatheerthan, Jay @ 2022-06-16 5:57 UTC (permalink / raw) To: Naga Harish K, S V, jerinj; +Cc: dev, stable Looks good. Acked-by: Jay Jayatheerthan <jay.jayatheerthan@intel.com> -Jay > -----Original Message----- > From: Naga Harish K, S V <s.v.naga.harish.k@intel.com> > Sent: Thursday, June 16, 2022 10:45 AM > To: Naga Harish K, S V <s.v.naga.harish.k@intel.com>; Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; jerinj@marvell.com > Cc: dev@dpdk.org; stable@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: stable@dpdk.org > > Signed-off-by: Naga Harish K S V <s.v.naga.harish.k@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 ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v2] eventdev/eth_tx: fix adapter create 2022-06-16 5:57 ` Jayatheerthan, Jay @ 2022-06-20 18:40 ` Jerin Jacob 0 siblings, 0 replies; 3+ messages in thread From: Jerin Jacob @ 2022-06-20 18:40 UTC (permalink / raw) To: Jayatheerthan, Jay; +Cc: Naga Harish K, S V, jerinj, dev, stable On Thu, Jun 16, 2022 at 11:28 AM Jayatheerthan, Jay <jay.jayatheerthan@intel.com> wrote: > > Looks good. > > Acked-by: Jay Jayatheerthan <jay.jayatheerthan@intel.com> Applied to dpdk-next-net-eventdev/for-main. Thanks > > -Jay > > > > > -----Original Message----- > > From: Naga Harish K, S V <s.v.naga.harish.k@intel.com> > > Sent: Thursday, June 16, 2022 10:45 AM > > To: Naga Harish K, S V <s.v.naga.harish.k@intel.com>; Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; jerinj@marvell.com > > Cc: dev@dpdk.org; stable@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: stable@dpdk.org > > > > Signed-off-by: Naga Harish K S V <s.v.naga.harish.k@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 > ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-06-20 18:41 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <20220616050441.2197264-1-s.v.naga.harish.k@intel.com> 2022-06-16 5:14 ` [PATCH v2] eventdev/eth_tx: fix adapter create Naga Harish K S V 2022-06-16 5:57 ` Jayatheerthan, Jay 2022-06-20 18:40 ` Jerin Jacob
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).