[dpdk-stable] [dpdk-dev] [PATCH v2] net/ixgbe: fix mbuf leak
Kevin Traynor
ktraynor at redhat.com
Tue Aug 31 12:00:04 CEST 2021
On 31/08/2021 09:06, Qiming Chen wrote:
> A local test found that repeated port start and stop operations during
> the continuous SSE vector bufflist receiving process will cause the mbuf
> resource to run out. The final positioning is when the port is stopped,
> the mbuf of the pkt_first_seg pointer is not released. Resources leak.
> The patch scheme is to judge whether the pointer is empty when the port
> is stopped, and release the corresponding mbuf if it is not empty.
>
> Fixes: abf7275bbaa2 ("ixgbe: move to drivers/net/")
That is a file rename, it should be when the functionality was
introduced, so in this case:
Fixes: af75078fece3 ("first public release")
> Cc: stable at dpdk.org
>
> Signed-off-by: Qiming Chen <chenqiming_huawei at 163.com>
> ---
> v2:
> Sync to stable at dpdk.org
> ---
> drivers/net/ixgbe/ixgbe_rxtx.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c
> index c814a28cb4..bfdfd5e755 100644
> --- a/drivers/net/ixgbe/ixgbe_rxtx.c
> +++ b/drivers/net/ixgbe/ixgbe_rxtx.c
> @@ -2981,6 +2981,10 @@ ixgbe_reset_rx_queue(struct ixgbe_adapter *adapter, struct ixgbe_rx_queue *rxq)
> rxq->rx_free_trigger = (uint16_t)(rxq->rx_free_thresh - 1);
> rxq->rx_tail = 0;
> rxq->nb_rx_hold = 0;
> +
> + if (rxq->pkt_first_seg != NULL)
> + rte_pktmbuf_free(rxq->pkt_first_seg);
> +
> rxq->pkt_first_seg = NULL;
> rxq->pkt_last_seg = NULL;
>
>
More information about the stable
mailing list