diff --git a/io_uring/zcrx.c b/io_uring/zcrx.c index 5c0a49340722..d84ad40eae49 100644 --- a/io_uring/zcrx.c +++ b/io_uring/zcrx.c @@ -289,8 +289,10 @@ static void io_zcrx_unmap_area(struct io_zcrx_ifq *ifq, return; area->is_mapped = false; - for (i = 0; i < area->nia.num_niovs; i++) - net_mp_niov_set_dma_addr(&area->nia.niovs[i], 0); + if (area->nia.niovs) { + for (i = 0; i < area->nia.num_niovs; i++) + net_mp_niov_set_dma_addr(&area->nia.niovs[i], 0); + } if (area->mem.is_dmabuf) { io_release_dmabuf(&area->mem);