[SRU][Xenial/Trusty] Amazon ENA driver

Kamal Mostafa kamal at canonical.com
Fri Oct 21 21:42:23 UTC 2016


See attached pull requests for Xenial and Trusty master-next.

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

Amazon Elastic Network Adapters (ENA) driver from linux-next backported
to xenial and trusty -generic, along with a handful of supporting cherry
picks and trivial backports from upstream.

I've tested these on ENA-enabled[0] Amazon EC2 instances; positive test
results in the bug.  Note though that actually enabling ENA support on
an EC2 instance requires the use of a newer awscli package[1] than
Ubuntu supplies (a userspace issue to be addressed in the near future).

All-new driver implies low risk of regression.

 -Kamal

[0] http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html

[1] https://github.com/aws/aws-cli/archive/1.10.59.tar.gz for
    'aws ec2 modify-instance-attribute --ena-support'

-------------- next part --------------
The following changes since commit dca4a6382893dfa2e5420b238e90994e867edded:

  ACPI / video: skip evaluating _DOD when it does not exist (2016-10-21 14:40:13 -0500)

are available in the git repository at:

  git://git.launchpad.net/~kamalmostafa/ubuntu/+source/linux/+git/xenial ena-xenial

for you to fetch changes up to 7c78082bcdc5e9e7163344afcf4f86c8797d6be9:

  UBUNTU: [config] enable CONFIG_ENA_ETHERNET=m (Amazon ENA driver) (2016-10-21 13:51:09 -0700)

----------------------------------------------------------------
David Decotigny (2):
      lib/bitmap.c: conversion routines to/from u32 array
      net: ethtool: add new ETHTOOL_xLINKSETTINGS API

Kamal Mostafa (1):
      UBUNTU: [config] enable CONFIG_ENA_ETHERNET=m (Amazon ENA driver)

Netanel Belgazal (1):
      net: ena: Add a driver for Amazon Elastic Network Adapters (ENA)

 Documentation/networking/00-INDEX                 |    2 +
 MAINTAINERS                                       |    9 +
 debian.master/config/config.common.ubuntu         |    2 +
 debian.master/control.d/generic.inclusion-list    |    1 +
 drivers/net/ethernet/Kconfig                      |    1 +
 drivers/net/ethernet/Makefile                     |    1 +
 drivers/net/ethernet/amazon/Kconfig               |   27 +
 drivers/net/ethernet/amazon/Makefile              |    5 +
 drivers/net/ethernet/amazon/ena/Makefile          |    7 +
 drivers/net/ethernet/amazon/ena/ena_admin_defs.h  |  973 ++++++
 drivers/net/ethernet/amazon/ena/ena_com.c         | 2666 +++++++++++++++++
 drivers/net/ethernet/amazon/ena/ena_com.h         | 1038 +++++++
 drivers/net/ethernet/amazon/ena/ena_common_defs.h |   48 +
 drivers/net/ethernet/amazon/ena/ena_eth_com.c     |  501 ++++
 drivers/net/ethernet/amazon/ena/ena_eth_com.h     |  160 +
 drivers/net/ethernet/amazon/ena/ena_eth_io_defs.h |  416 +++
 drivers/net/ethernet/amazon/ena/ena_ethtool.c     |  895 ++++++
 drivers/net/ethernet/amazon/ena/ena_netdev.c      | 3280 +++++++++++++++++++++
 drivers/net/ethernet/amazon/ena/ena_netdev.h      |  324 ++
 drivers/net/ethernet/amazon/ena/ena_pci_id_tbl.h  |   67 +
 drivers/net/ethernet/amazon/ena/ena_regs_defs.h   |  133 +
 include/linux/bitmap.h                            |   10 +
 include/linux/ethtool.h                           |   92 +-
 include/uapi/linux/ethtool.h                      |  322 +-
 lib/bitmap.c                                      |   89 +
 net/core/ethtool.c                                |  453 ++-
 26 files changed, 11441 insertions(+), 81 deletions(-)
 create mode 100644 drivers/net/ethernet/amazon/Kconfig
 create mode 100644 drivers/net/ethernet/amazon/Makefile
 create mode 100644 drivers/net/ethernet/amazon/ena/Makefile
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_admin_defs.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_com.c
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_com.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_common_defs.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_eth_com.c
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_eth_com.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_eth_io_defs.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_ethtool.c
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_netdev.c
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_netdev.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_pci_id_tbl.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_regs_defs.h
-------------- next part --------------
The following changes since commit 4314280dd6d790a5e8c07a0ae8262ac9c72fe26e:

  crypto: cryptd - Assign statesize properly (2016-10-21 14:33:40 -0500)

are available in the git repository at:

  git://git.launchpad.net/~kamalmostafa/ubuntu/+source/linux/+git/trusty ena-trusty

for you to fetch changes up to b098c0337b9b9aa4af3b7abbd7ccc542e705a1be:

  UBUNTU: [config] enable CONFIG_ENA_ETHERNET=m (Amazon ENA driver) (2016-10-21 13:48:23 -0700)

----------------------------------------------------------------
Alex Elder (1):
      kernel.h: define u8, s8, u32, etc. limits

Alexander Gordeev (1):
      PCI/MSI: Add pci_msix_vec_count()

David Decotigny (2):
      lib/bitmap.c: conversion routines to/from u32 array
      net: ethtool: add new ETHTOOL_xLINKSETTINGS API

Joe Perches (1):
      etherdevice: Use ether_addr_copy to copy an Ethernet address

Kamal Mostafa (1):
      UBUNTU: [config] enable CONFIG_ENA_ETHERNET=m (Amazon ENA driver)

Netanel Belgazal (1):
      net: ena: Add a driver for Amazon Elastic Network Adapters (ENA)

 Documentation/PCI/MSI-HOWTO.txt                   |   13 +
 Documentation/networking/00-INDEX                 |    2 +
 MAINTAINERS                                       |    9 +
 debian.master/config/config.common.ubuntu         |    2 +
 debian.master/control.d/generic.inclusion-list    |    1 +
 drivers/net/ethernet/Kconfig                      |    1 +
 drivers/net/ethernet/Makefile                     |    1 +
 drivers/net/ethernet/amazon/Kconfig               |   27 +
 drivers/net/ethernet/amazon/Makefile              |    5 +
 drivers/net/ethernet/amazon/ena/Makefile          |    7 +
 drivers/net/ethernet/amazon/ena/ena_admin_defs.h  |  973 ++++++
 drivers/net/ethernet/amazon/ena/ena_com.c         | 2666 +++++++++++++++++
 drivers/net/ethernet/amazon/ena/ena_com.h         | 1038 +++++++
 drivers/net/ethernet/amazon/ena/ena_common_defs.h |   48 +
 drivers/net/ethernet/amazon/ena/ena_eth_com.c     |  501 ++++
 drivers/net/ethernet/amazon/ena/ena_eth_com.h     |  160 +
 drivers/net/ethernet/amazon/ena/ena_eth_io_defs.h |  416 +++
 drivers/net/ethernet/amazon/ena/ena_ethtool.c     |  903 ++++++
 drivers/net/ethernet/amazon/ena/ena_netdev.c      | 3286 +++++++++++++++++++++
 drivers/net/ethernet/amazon/ena/ena_netdev.h      |  324 ++
 drivers/net/ethernet/amazon/ena/ena_pci_id_tbl.h  |   67 +
 drivers/net/ethernet/amazon/ena/ena_regs_defs.h   |  133 +
 drivers/pci/msi.c                                 |   18 +-
 drivers/pci/pcie/portdrv_core.c                   |    7 +-
 include/linux/bitmap.h                            |   10 +
 include/linux/etherdevice.h                       |   24 +-
 include/linux/ethtool.h                           |   90 +-
 include/linux/kernel.h                            |   13 +
 include/linux/pci.h                               |    6 +-
 include/uapi/linux/ethtool.h                      |  321 +-
 lib/bitmap.c                                      |   89 +
 net/core/ethtool.c                                |  453 ++-
 32 files changed, 11522 insertions(+), 92 deletions(-)
 create mode 100644 drivers/net/ethernet/amazon/Kconfig
 create mode 100644 drivers/net/ethernet/amazon/Makefile
 create mode 100644 drivers/net/ethernet/amazon/ena/Makefile
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_admin_defs.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_com.c
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_com.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_common_defs.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_eth_com.c
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_eth_com.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_eth_io_defs.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_ethtool.c
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_netdev.c
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_netdev.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_pci_id_tbl.h
 create mode 100644 drivers/net/ethernet/amazon/ena/ena_regs_defs.h


More information about the kernel-team mailing list