[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKgT0UcOWkxAEqa+_T-QQiF_jgyozGe=U_vx_L3kzc1LsQ-Q5Q@mail.gmail.com>
Date: Thu, 3 Dec 2020 10:17:14 -0800
From: Alexander Duyck <alexander.duyck@...il.com>
To: David Awogbemila <awogbemila@...gle.com>
Cc: Netdev <netdev@...r.kernel.org>, Saeed Mahameed <saeed@...nel.org>,
Eric Dumazet <eric.dumazet@...il.com>
Subject: Re: [PATCH net-next v9 0/4] GVE Raw Addressing
On Wed, Dec 2, 2020 at 10:24 AM David Awogbemila <awogbemila@...gle.com> wrote:
>
> Patchset description:
> This patchset introduces "raw addressing" mode to the GVE driver.
> Previously (in "queue_page_list" or "qpl" mode), the driver would
> pre-allocate and dma_map buffers to be used on egress and ingress.
> On egress, it would copy data from the skb provided to the
> pre-allocated buffers - this was expensive.
> In raw addressing mode, the driver can avoid this copy and simply
> dma_map the skb's data so that the NIC can use it.
> On ingress, the driver passes buffers up to the networking stack and
> then frees and reallocates buffers when necessary instead of using
> skb_copy_to_linear_data.
> Patch 3 separates the page refcount tracking mechanism
> into a function gve_rx_can_recycle_buffer which uses get_page - this will
> be changed in a future patch to eliminate the use of get_page in tracking
> page refcounts.
>
> Changes from v8:
> Patch 4: Free skbs that are not sent in gve_tx().
>
> Catherine Sullivan (3):
> gve: Add support for raw addressing device option
> gve: Add support for raw addressing to the rx path
> gve: Add support for raw addressing in the tx path
>
> David Awogbemila (1):
> gve: Rx Buffer Recycling
>
> drivers/net/ethernet/google/gve/gve.h | 39 +-
> drivers/net/ethernet/google/gve/gve_adminq.c | 89 ++++-
> drivers/net/ethernet/google/gve/gve_adminq.h | 15 +-
> drivers/net/ethernet/google/gve/gve_desc.h | 19 +-
> drivers/net/ethernet/google/gve/gve_ethtool.c | 2 +
> drivers/net/ethernet/google/gve/gve_main.c | 11 +-
> drivers/net/ethernet/google/gve/gve_rx.c | 364 +++++++++++++-----
> drivers/net/ethernet/google/gve/gve_tx.c | 202 ++++++++--
> 8 files changed, 577 insertions(+), 164 deletions(-)
>
> --
> 2.29.2.576.ga3fc446d84-goog
>
Other than the few nits with counters being u32 values I didn't really
see much else.
Reviewed-by: Alexander Duyck <alexanderduyck@...com>
Powered by blists - more mailing lists