[SRU][I/gcp][PULL] gvnic update

Khaled Elmously khalid.elmously at canonical.com
Tue Mar 1 23:17:54 UTC 2022

BugLink: http://bugs.launchpad.net/bugs/1953575

This patchset updates the gvnic driver code (GVE) to bring it up to parity with the 5.16 kernel.

These changes have been tested and approved by the GCP gvnic team.


The following changes since commit d4774377bf2cb17f77d7d9b572528099a6b3ee3e:

  UBUNTU: Ubuntu-gcp-5.13.0-1015.18 (2022-02-08 05:45:15 -0700)

are available in the Git repository at:

  git+ssh://git.launchpad.net/~kmously/ubuntu/+source/linux/+git/impish gvnic-5.13-v1

for you to fetch changes up to 9e7174b272a0493fc3bdddb9c5bb72c4ad7071ce:

  gve: Use kvcalloc() instead of kvzalloc() (2022-03-01 18:04:39 -0500)

Ameer Hamza (1):
      gve: fix for null pointer dereference.

Arnd Bergmann (1):
      gve: DQO: avoid unused variable warnings

Bailey Forrest (17):
      gve: Move some static functions to a common file
      gve: gve_rx_copy: Move padding to an argument
      gve: Make gve_rx_slot_page_info.page_offset an absolute offset
      gve: Introduce a new model for device options
      gve: Introduce per netdev `enum gve_queue_format`
      gve: adminq: DQO specific device descriptor logic
      gve: Add support for DQO RX PTYPE map
      gve: Add dqo descriptors
      gve: Add DQO fields for core data structures
      gve: Update adminq commands to support DQO queues
      gve: DQO: Add core netdev features
      gve: DQO: Add ring allocation and initialization
      gve: DQO: Configure interrupts on device up
      gve: DQO: Add TX path
      gve: DQO: Add RX path
      gve: Fix warnings reported for DQO patchset
      gve: DQO: Remove incorrect prefetch

Catherine Sullivan (6):
      gve: Add rx buffer pagecnt bias
      gve: Add netif_set_xps_queue call
      gve: Move the irq db indexes out of the ntfy block struct
      gve: Update gve_free_queue_page_list signature
      gve: remove memory barrier around seqno
      gve: Implement suspend/resume/shutdown

Christophe JAILLET (2):
      gve: Propagate error codes to caller
      gve: Simplify code and axe the use of a deprecated API

Dan Carpenter (2):
      gve: DQO: Fix off by one in gve_rx_dqo()
      gve: fix unmatched u64_stats_update_end()

David Awogbemila (2):
      gve: Add RX context.
      gve: Implement packet continuation for RX.

Gustavo A. R. Silva (1):
      gve: Use kvcalloc() instead of kvzalloc()

Jeroen de Borst (1):
      gve: Correct order of processing device options

Jordan Kim (2):
      gve: Allow pageflips on larger pages
      gve: Add consumed counts to ethtool stats

Shailend Chand (1):
      gve: Add a jumbo-frame device option.

Tao Liu (2):
      gve: Do lazy cleanup in TX path
      gve: Add tx|rx-coalesce-usec for DQO

Willem de Bruijn (1):
      gve: Add optional metadata descriptor type GVE_TXD_MTD

Yangchun Fu (1):
      gve: Switch to use napi_complete_done

 drivers/net/ethernet/google/Kconfig            |    2 +-
 drivers/net/ethernet/google/gve/Makefile       |    2 +-
 drivers/net/ethernet/google/gve/gve.h          |  389 ++++++++-
 drivers/net/ethernet/google/gve/gve_adminq.c   |  385 +++++++--
 drivers/net/ethernet/google/gve/gve_adminq.h   |  126 ++-
 drivers/net/ethernet/google/gve/gve_desc.h     |   33 +-
 drivers/net/ethernet/google/gve/gve_desc_dqo.h |  256 ++++++
 drivers/net/ethernet/google/gve/gve_dqo.h      |   93 +++
 drivers/net/ethernet/google/gve/gve_ethtool.c  |  106 ++-
 drivers/net/ethernet/google/gve/gve_main.c     |  459 ++++++++---
 drivers/net/ethernet/google/gve/gve_rx.c       |  445 +++++++----
 drivers/net/ethernet/google/gve/gve_rx_dqo.c   |  756 ++++++++++++++++++
 drivers/net/ethernet/google/gve/gve_tx.c       |  215 ++---
 drivers/net/ethernet/google/gve/gve_tx_dqo.c   | 1022 ++++++++++++++++++++++++
 drivers/net/ethernet/google/gve/gve_utils.c    |   99 +++
 drivers/net/ethernet/google/gve/gve_utils.h    |   28 +
 16 files changed, 3937 insertions(+), 479 deletions(-)
 create mode 100644 drivers/net/ethernet/google/gve/gve_desc_dqo.h
 create mode 100644 drivers/net/ethernet/google/gve/gve_dqo.h
 create mode 100644 drivers/net/ethernet/google/gve/gve_rx_dqo.c
 create mode 100644 drivers/net/ethernet/google/gve/gve_tx_dqo.c
 create mode 100644 drivers/net/ethernet/google/gve/gve_utils.c
 create mode 100644 drivers/net/ethernet/google/gve/gve_utils.h

More information about the kernel-team mailing list