diff options
| author | Alexander Lobakin <[email protected]> | 2024-04-18 11:36:15 +0000 |
|---|---|---|
| committer | Tony Nguyen <[email protected]> | 2024-04-24 18:06:26 +0000 |
| commit | 5fa4caff59f251bf9f766fc48c9f0a774a9216a0 (patch) | |
| tree | 233a136a8dab14981031dc37ae849205e29af1b9 /drivers/net/ethernet/intel/ice/ice_main.c | |
| parent | iavf: pack iavf_ring more efficiently (diff) | |
| download | kernel-5fa4caff59f251bf9f766fc48c9f0a774a9216a0.tar.gz kernel-5fa4caff59f251bf9f766fc48c9f0a774a9216a0.zip | |
iavf: switch to Page Pool
Now that the IAVF driver simply uses dev_alloc_page() + free_page() with
no custom recycling logics, it can easily be switched to using Page
Pool / libeth API instead.
This allows to removing the whole dancing around headroom, HW buffer
size, and page order. All DMA-for-device is now done in the PP core,
for-CPU -- in the libeth helper.
Use skb_mark_for_recycle() to bring back the recycling and restore the
performance. Speaking of performance: on par with the baseline and
faster with the PP optimization series applied. But the memory usage for
1500b MTU is now almost 2x lower (x86_64) thanks to allocating a page
every second descriptor.
Signed-off-by: Alexander Lobakin <[email protected]>
Signed-off-by: Tony Nguyen <[email protected]>
Diffstat (limited to 'drivers/net/ethernet/intel/ice/ice_main.c')
0 files changed, 0 insertions, 0 deletions
