[PATCH 3/3] eventdev: fix uninitialized variable

Stephen Hemminger stephen at networkplumber.org
Tue Jan 13 21:04:25 CET 2026


On Mon, 25 Nov 2024 14:47:55 +0800
Wenwu Ma <wenwux.ma at intel.com> wrote:

> This patch fixes the variable 'events' may be used uninitialized.
> 
> Fixes: 3c89e8c42022 ("eventdev/dma: support adapter service function")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Wenwu Ma <wenwux.ma at intel.com>
> ---
>  lib/eventdev/rte_event_dma_adapter.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/lib/eventdev/rte_event_dma_adapter.c b/lib/eventdev/rte_event_dma_adapter.c
> index ff2bc408c1..3c05fb615f 100644
> --- a/lib/eventdev/rte_event_dma_adapter.c
> +++ b/lib/eventdev/rte_event_dma_adapter.c
> @@ -655,6 +655,7 @@ edma_ops_enqueue_burst(struct event_dma_adapter *adapter, struct rte_event_dma_a
>  	nb_ev = 0;
>  	retry = 0;
>  	nb_enqueued = 0;
> +	memset(events, 0, sizeof(events));
>  	num = RTE_MIN(num, DMA_BATCH_SIZE);
>  	for (i = 0; i < num; i++) {
>  		struct rte_event *ev = &events[nb_ev++];


This shows that what every tool you are using to detect these errors is broken.
The loop here is setting the appropriate events.
Each event has two unions 64 bit words. Both of them are being set.
I can't see any unitialized data and neither does standard compiler.



More information about the dev mailing list