[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230811121640.13301-1-liangchen.linux@gmail.com>
Date: Fri, 11 Aug 2023 20:16:40 +0800
From: Liang Chen <liangchen.linux@...il.com>
To: hawk@...nel.org,
horms@...nel.org,
davem@...emloft.net,
edumazet@...gle.com,
kuba@...nel.org,
pabeni@...hat.com,
linyunsheng@...wei.com
Cc: ilias.apalodimas@...aro.org,
daniel@...earbox.net,
ast@...nel.org,
netdev@...r.kernel.org,
liangchen.linux@...il.com
Subject: [PATCH net-next] net: veth: Page pool creation error handling for existing pools only
The failure handling procedure destroys page pools for all queues,
including those that haven't had their page pool created yet. this patch
introduces necessary adjustments to prevent potential risks and
inconsistency with the error handling behavior.
Acked-by: Jesper Dangaard Brouer <hawk@...nel.org>
Signed-off-by: Liang Chen <liangchen.linux@...il.com>
---
drivers/net/veth.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/veth.c b/drivers/net/veth.c
index 614f3e3efab0..509e901da41d 100644
--- a/drivers/net/veth.c
+++ b/drivers/net/veth.c
@@ -1081,8 +1081,9 @@ static int __veth_napi_enable_range(struct net_device *dev, int start, int end)
err_xdp_ring:
for (i--; i >= start; i--)
ptr_ring_cleanup(&priv->rq[i].xdp_ring, veth_ptr_free);
+ i = end;
err_page_pool:
- for (i = start; i < end; i++) {
+ for (i--; i >= start; i--) {
page_pool_destroy(priv->rq[i].page_pool);
priv->rq[i].page_pool = NULL;
}
--
2.40.1
Powered by blists - more mailing lists