Commit bd649c5
bnxt_en: handle tpa_info in queue API implementation
Commit 7ed816b ("eth: bnxt: use page pool for head frags") added a
page pool for header frags, which may be distinct from the existing pool
for the aggregation ring. Prior to this change, frags used in the TPA
ring rx_tpa were allocated from system memory e.g. napi_alloc_frag()
meaning their lifetimes were not associated with a page pool. They can
be returned at any time and so the queue API did not alloc or free
rx_tpa.
But now frags come from a separate head_pool which may be different to
page_pool. Without allocating and freeing rx_tpa, frags allocated from
the old head_pool may be returned to a different new head_pool which
causes a mismatch between the pp hold/release count.
Fix this problem by properly freeing and allocating rx_tpa in the queue
API implementation.
Signed-off-by: David Wei <dw@davidwei.uk>
Reviewed-by: Michael Chan <michael.chan@broadcom.com>
Link: https://patch.msgid.link/20241204041022.56512-4-dw@davidwei.uk
Signed-off-by: Jakub Kicinski <kuba@kernel.org>1 parent bf1782d commit bd649c5
1 file changed
Lines changed: 23 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3710 | 3710 | | |
3711 | 3711 | | |
3712 | 3712 | | |
3713 | | - | |
| 3713 | + | |
3714 | 3714 | | |
3715 | 3715 | | |
3716 | 3716 | | |
| |||
15388 | 15388 | | |
15389 | 15389 | | |
15390 | 15390 | | |
| 15391 | + | |
| 15392 | + | |
| 15393 | + | |
| 15394 | + | |
| 15395 | + | |
| 15396 | + | |
15391 | 15397 | | |
15392 | 15398 | | |
15393 | 15399 | | |
15394 | 15400 | | |
15395 | 15401 | | |
15396 | 15402 | | |
| 15403 | + | |
| 15404 | + | |
15397 | 15405 | | |
15398 | 15406 | | |
15399 | 15407 | | |
| 15408 | + | |
| 15409 | + | |
15400 | 15410 | | |
15401 | 15411 | | |
15402 | 15412 | | |
15403 | 15413 | | |
15404 | 15414 | | |
15405 | 15415 | | |
15406 | 15416 | | |
15407 | | - | |
15408 | 15417 | | |
| 15418 | + | |
| 15419 | + | |
15409 | 15420 | | |
| 15421 | + | |
15410 | 15422 | | |
15411 | 15423 | | |
15412 | 15424 | | |
| |||
15416 | 15428 | | |
15417 | 15429 | | |
15418 | 15430 | | |
15419 | | - | |
15420 | | - | |
| 15431 | + | |
15421 | 15432 | | |
15422 | 15433 | | |
15423 | 15434 | | |
15424 | 15435 | | |
| 15436 | + | |
| 15437 | + | |
15425 | 15438 | | |
| 15439 | + | |
15426 | 15440 | | |
15427 | 15441 | | |
15428 | 15442 | | |
| |||
15504 | 15518 | | |
15505 | 15519 | | |
15506 | 15520 | | |
| 15521 | + | |
| 15522 | + | |
15507 | 15523 | | |
| 15524 | + | |
15508 | 15525 | | |
15509 | 15526 | | |
15510 | 15527 | | |
| |||
15563 | 15580 | | |
15564 | 15581 | | |
15565 | 15582 | | |
| 15583 | + | |
| 15584 | + | |
15566 | 15585 | | |
15567 | 15586 | | |
15568 | 15587 | | |
| |||
0 commit comments