[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240627030200.3647145-1-dw@davidwei.uk>
Date: Wed, 26 Jun 2024 20:01:58 -0700
From: David Wei <dw@...idwei.uk>
To: Michael Chan <michael.chan@...adcom.com>,
Andy Gospodarek <andrew.gospodarek@...adcom.com>,
Jesper Dangaard Brouer <hawk@...nel.org>,
Ilias Apalodimas <ilias.apalodimas@...aro.org>,
Alexander Lobakin <aleksander.lobakin@...el.com>,
netdev@...r.kernel.org
Cc: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>
Subject: [PATCH net-next v2 0/2] page_pool: bnxt_en: unlink old page pool in queue api using helper
56ef27e3 unexported page_pool_unlink_napi() and renamed it to
page_pool_disable_direct_recycling(). This is because there was no
in-tree user of page_pool_unlink_napi().
Since then Rx queue API and an implementation in bnxt got merged. In the
bnxt implementation, it broadly follows the following steps: allocate
new queue memory + page pool, stop old rx queue, swap, then destroy old
queue memory + page pool.
The existing NAPI instance is re-used so when the old page pool that is
no longer used but still linked to this shared NAPI instance is
destroyed, it will trigger warnings.
In my initial patches I unlinked a page pool from a NAPI instance
directly. Instead, export page_pool_disable_direct_recycling() and call
that instead to avoid having a driver touch a core struct.
David Wei (2):
page_pool: export page_pool_disable_direct_recycling()
bnxt_en: unlink page pool when stopping Rx queue
drivers/net/ethernet/broadcom/bnxt/bnxt.c | 6 +-----
include/net/page_pool/types.h | 1 +
net/core/page_pool.c | 3 ++-
3 files changed, 4 insertions(+), 6 deletions(-)
--
2.43.0
Powered by blists - more mailing lists