mbox series

[00/10,net-next] page_pool cleanups

Message ID 20191016225028.2100206-1-jonathan.lemon@gmail.com
Headers show
Series page_pool cleanups | expand

Message

Jonathan Lemon Oct. 16, 2019, 10:50 p.m. UTC
This patch combines work from various people:
- part of Tariq's work to move the DMA mapping from
  the mlx5 driver into the page pool.  This does not
  include later patches which remove the dma address
  from the driver, as this conflicts with AF_XDP.

- Saeed's changes to check the numa node before
  including the page in the pool, and flushing the
  pool on a node change.

- Statistics and cleanup for page pool.

Jonathan Lemon (5):
  page_pool: Add page_pool_keep_page
  page_pool: allow configurable linear cache size
  page_pool: Add statistics
  net/mlx5: Add page_pool stats to the Mellanox driver
  page_pool: Cleanup and rename page_pool functions.

Saeed Mahameed (2):
  page_pool: Add API to update numa node and flush page caches
  net/mlx5e: Rx, Update page pool numa node when changed

Tariq Toukan (3):
  net/mlx5e: RX, Remove RX page-cache
  net/mlx5e: RX, Manage RX pages only via page pool API
  net/mlx5e: RX, Internal DMA mapping in page_pool

 drivers/net/ethernet/mellanox/mlx5/core/en.h  |  18 +-
 .../net/ethernet/mellanox/mlx5/core/en/xdp.c  |  12 +-
 .../net/ethernet/mellanox/mlx5/core/en_main.c |  19 +-
 .../net/ethernet/mellanox/mlx5/core/en_rx.c   | 128 ++--------
 .../ethernet/mellanox/mlx5/core/en_stats.c    |  39 ++--
 .../ethernet/mellanox/mlx5/core/en_stats.h    |  19 +-
 include/net/page_pool.h                       | 216 +++++++++--------
 net/core/page_pool.c                          | 221 +++++++++++-------
 8 files changed, 319 insertions(+), 353 deletions(-)

Comments

Saeed Mahameed Oct. 18, 2019, 8:50 p.m. UTC | #1
On Wed, 2019-10-16 at 15:50 -0700, Jonathan Lemon wrote:
> This patch combines work from various people:
> - part of Tariq's work to move the DMA mapping from
>   the mlx5 driver into the page pool.  This does not
>   include later patches which remove the dma address
>   from the driver, as this conflicts with AF_XDP.
> 
> - Saeed's changes to check the numa node before
>   including the page in the pool, and flushing the
>   pool on a node change.
> 

Hi Jonathan, thanks for submitting this,
the patches you have are not up to date, i have new ones with tracing
support and some fixes from offlist review iterations, plus performance
numbers and a  cover letter. 

I will send it to you and you can post it as v2 ? 


> - Statistics and cleanup for page pool.
> 
> Jonathan Lemon (5):
>   page_pool: Add page_pool_keep_page
>   page_pool: allow configurable linear cache size
>   page_pool: Add statistics
>   net/mlx5: Add page_pool stats to the Mellanox driver
>   page_pool: Cleanup and rename page_pool functions.
> 
> Saeed Mahameed (2):
>   page_pool: Add API to update numa node and flush page caches
>   net/mlx5e: Rx, Update page pool numa node when changed
> 
> Tariq Toukan (3):
>   net/mlx5e: RX, Remove RX page-cache
>   net/mlx5e: RX, Manage RX pages only via page pool API
>   net/mlx5e: RX, Internal DMA mapping in page_pool
> 
>  drivers/net/ethernet/mellanox/mlx5/core/en.h  |  18 +-
>  .../net/ethernet/mellanox/mlx5/core/en/xdp.c  |  12 +-
>  .../net/ethernet/mellanox/mlx5/core/en_main.c |  19 +-
>  .../net/ethernet/mellanox/mlx5/core/en_rx.c   | 128 ++--------
>  .../ethernet/mellanox/mlx5/core/en_stats.c    |  39 ++--
>  .../ethernet/mellanox/mlx5/core/en_stats.h    |  19 +-
>  include/net/page_pool.h                       | 216 +++++++++-------
> -
>  net/core/page_pool.c                          | 221 +++++++++++-----
> --
>  8 files changed, 319 insertions(+), 353 deletions(-)
>
Saeed Mahameed Oct. 18, 2019, 9:21 p.m. UTC | #2
On Fri, 2019-10-18 at 13:50 -0700, Saeed Mahameed wrote:
> On Wed, 2019-10-16 at 15:50 -0700, Jonathan Lemon wrote:
> > This patch combines work from various people:
> > - part of Tariq's work to move the DMA mapping from
> >   the mlx5 driver into the page pool.  This does not
> >   include later patches which remove the dma address
> >   from the driver, as this conflicts with AF_XDP.
> > 
> > - Saeed's changes to check the numa node before
> >   including the page in the pool, and flushing the
> >   pool on a node change.
> > 
> 
> Hi Jonathan, thanks for submitting this,
> the patches you have are not up to date, i have new ones with tracing
> support and some fixes from offlist review iterations, plus
> performance
> numbers and a  cover letter. 
> 
> I will send it to you and you can post it as v2 ? 

actually i suggest to take my 3 patches out of this series and submit
them as standalone, they are not directly related to the other stuff
here, and can perfectly work without them, since my 3 patches are
addressing a real issue with page pool numa node migration.

> 
> 
> > - Statistics and cleanup for page pool.
> > 
> > Jonathan Lemon (5):
> >   page_pool: Add page_pool_keep_page
> >   page_pool: allow configurable linear cache size
> >   page_pool: Add statistics
> >   net/mlx5: Add page_pool stats to the Mellanox driver
> >   page_pool: Cleanup and rename page_pool functions.
> > 
> > Saeed Mahameed (2):
> >   page_pool: Add API to update numa node and flush page caches
> >   net/mlx5e: Rx, Update page pool numa node when changed
> > 
> > Tariq Toukan (3):
> >   net/mlx5e: RX, Remove RX page-cache
> >   net/mlx5e: RX, Manage RX pages only via page pool API
> >   net/mlx5e: RX, Internal DMA mapping in page_pool
> > 
> >  drivers/net/ethernet/mellanox/mlx5/core/en.h  |  18 +-
> >  .../net/ethernet/mellanox/mlx5/core/en/xdp.c  |  12 +-
> >  .../net/ethernet/mellanox/mlx5/core/en_main.c |  19 +-
> >  .../net/ethernet/mellanox/mlx5/core/en_rx.c   | 128 ++--------
> >  .../ethernet/mellanox/mlx5/core/en_stats.c    |  39 ++--
> >  .../ethernet/mellanox/mlx5/core/en_stats.h    |  19 +-
> >  include/net/page_pool.h                       | 216 +++++++++-----
> > --
> > -
> >  net/core/page_pool.c                          | 221 +++++++++++---
> > --
> > --
> >  8 files changed, 319 insertions(+), 353 deletions(-)
> >
Jonathan Lemon Oct. 18, 2019, 11:32 p.m. UTC | #3
On 18 Oct 2019, at 13:50, Saeed Mahameed wrote:

> On Wed, 2019-10-16 at 15:50 -0700, Jonathan Lemon wrote:
>> This patch combines work from various people:
>> - part of Tariq's work to move the DMA mapping from
>>   the mlx5 driver into the page pool.  This does not
>>   include later patches which remove the dma address
>>   from the driver, as this conflicts with AF_XDP.
>>
>> - Saeed's changes to check the numa node before
>>   including the page in the pool, and flushing the
>>   pool on a node change.
>>
>
> Hi Jonathan, thanks for submitting this,
> the patches you have are not up to date, i have new ones with tracing
> support and some fixes from offlist review iterations, plus performance
> numbers and a  cover letter.
>
> I will send it to you and you can post it as v2 ?

Sure, I have some other cleanups to do and have a concern about
the cache effectiveness for some workloads.
Saeed Mahameed Oct. 21, 2019, 7:08 p.m. UTC | #4
On Fri, 2019-10-18 at 16:32 -0700, Jonathan Lemon wrote:
> 
> On 18 Oct 2019, at 13:50, Saeed Mahameed wrote:
> 
> > On Wed, 2019-10-16 at 15:50 -0700, Jonathan Lemon wrote:
> > > This patch combines work from various people:
> > > - part of Tariq's work to move the DMA mapping from
> > >   the mlx5 driver into the page pool.  This does not
> > >   include later patches which remove the dma address
> > >   from the driver, as this conflicts with AF_XDP.
> > > 
> > > - Saeed's changes to check the numa node before
> > >   including the page in the pool, and flushing the
> > >   pool on a node change.
> > > 
> > 
> > Hi Jonathan, thanks for submitting this,
> > the patches you have are not up to date, i have new ones with
> > tracing
> > support and some fixes from offlist review iterations, plus
> > performance
> > numbers and a  cover letter.
> > 
> > I will send it to you and you can post it as v2 ?
> 
> Sure, I have some other cleanups to do and have a concern about
> the cache effectiveness for some workloads.

Ok then, I will submit the page pool NUMA change patches separately.
I will remove the flush mechanism and will add your changes.

for the other patches, mlx5 cache and page pool statistics, i think
they need some more work and a lot of pieces are still WIP. I don't
want to block the NUMA change API patches.
Jonathan Lemon Oct. 21, 2019, 9:45 p.m. UTC | #5
On 21 Oct 2019, at 12:08, Saeed Mahameed wrote:

> On Fri, 2019-10-18 at 16:32 -0700, Jonathan Lemon wrote:
>>
>> On 18 Oct 2019, at 13:50, Saeed Mahameed wrote:
>>
>>> On Wed, 2019-10-16 at 15:50 -0700, Jonathan Lemon wrote:
>>>> This patch combines work from various people:
>>>> - part of Tariq's work to move the DMA mapping from
>>>>   the mlx5 driver into the page pool.  This does not
>>>>   include later patches which remove the dma address
>>>>   from the driver, as this conflicts with AF_XDP.
>>>>
>>>> - Saeed's changes to check the numa node before
>>>>   including the page in the pool, and flushing the
>>>>   pool on a node change.
>>>>
>>>
>>> Hi Jonathan, thanks for submitting this,
>>> the patches you have are not up to date, i have new ones with
>>> tracing
>>> support and some fixes from offlist review iterations, plus
>>> performance
>>> numbers and a  cover letter.
>>>
>>> I will send it to you and you can post it as v2 ?
>>
>> Sure, I have some other cleanups to do and have a concern about
>> the cache effectiveness for some workloads.
>
> Ok then, I will submit the page pool NUMA change patches separately.
> I will remove the flush mechanism and will add your changes.
>
> for the other patches, mlx5 cache and page pool statistics, i think
> they need some more work and a lot of pieces are still WIP. I don't
> want to block the NUMA change API patches.

Sounds good - the stats are only really needed once the mlx5 private
cache goes away, and it doesn't look like that will happen immediately.

The private cache and the page pool are performing two different functions
at the moment.