All of lore.kernel.org
 help / color / mirror / Atom feed
From: Akihiko Odaki <akihiko.odaki@daynix.com>
Cc: "Sriram Yagnaraman" <sriram.yagnaraman@est.tech>,
	"Jason Wang" <jasowang@redhat.com>,
	"Dmitry Fleytman" <dmitry.fleytman@gmail.com>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>,
	"Thomas Huth" <thuth@redhat.com>,
	"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
	"Beraldo Leal" <bleal@redhat.com>,
	"Cleber Rosa" <crosa@redhat.com>,
	"Laurent Vivier" <lvivier@redhat.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	qemu-devel@nongnu.org,
	"Tomasz Dzieciol" <t.dzieciol@partner.samsung.com>,
	"Akihiko Odaki" <akihiko.odaki@daynix.com>
Subject: [PATCH v5 00/48] igb: Fix for DPDK
Date: Tue, 23 May 2023 11:42:51 +0900	[thread overview]
Message-ID: <20230523024339.50875-1-akihiko.odaki@daynix.com> (raw)

Based-on: <366bbcafdb6e0373f0deb105153768a8c0bded87.camel@gmail.com>
("[PATCH 0/1] e1000e: Fix tx/rx counters")

This series has fixes and feature additions to pass DPDK Test Suite with
igb. It also includes a few minor changes related to networking.

Patch [01, 10] are bug fixes.
Patch [11, 14] delete code which is unnecessary.
Patch [15, 33] are minor changes.
Patch [34, 46] implement new features.
Patch [47, 48] update documentations.

While this includes so many patches, it is not necessary to land them at
once. Only bug fix patches may be applied first, for example.

V4 -> V5:
- Fixed L2 packet type bit location.

V3 -> V4:
- Renamed "min_buf variable to "buf". (Sriram Yagnaraman)
- Added patch "igb: Clear-on-read ICR when ICR.INTA is set".
  (Sriram Yagnaraman)

V2 -> V3:
- Fixed parameter name in hw/net/net_tx_pkt. (Philippe Mathieu-Daudé)
- Added patch "igb: Clear IMS bits when committing ICR access".
- Added patch "igb: Clear EICR bits for delayed MSI-X interrupts".
- Added patch "e1000e: Rename a variable in e1000e_receive_internal()".
- Added patch "igb: Rename a variable in igb_receive_internal()".
- Added patch "e1000e: Notify only new interrupts".
- Added patch "igb: Notify only new interrupts".

V1 -> V2:
- Dropped patch "Include the second VLAN tag in the buffer". The second
  VLAN tag is not used at the point and unecessary.
- Added patch "e1000x: Rename TcpIpv6 into TcpIpv6Ex".
- Split patch "hw/net/net_tx_pkt: Decouple from PCI".
  (Philippe Mathieu-Daudé)
- Added advanced Rx descriptor packet encoding definitions.
  (Sriram Yagnaraman)
- Added some constants to eth.h to derive packet oversize thresholds.
- Added IGB_TX_FLAGS_VLAN_SHIFT usage.
- Renamed patch "igb: Fix igb_mac_reg_init alignment".
  (Philippe Mathieu-Daudé)
- Fixed size check for packets with double VLAN. (Sriram Yagnaraman)
- Fixed timing to timestamp Tx packet.

Akihiko Odaki (48):
  hw/net/net_tx_pkt: Decouple implementation from PCI
  hw/net/net_tx_pkt: Decouple interface from PCI
  e1000x: Fix BPRC and MPRC
  igb: Fix Rx packet type encoding
  igb: Do not require CTRL.VME for tx VLAN tagging
  igb: Clear IMS bits when committing ICR access
  net/net_rx_pkt: Use iovec for net_rx_pkt_set_protocols()
  e1000e: Always copy ethernet header
  igb: Always copy ethernet header
  Fix references to igb Avocado test
  tests/avocado: Remove unused imports
  tests/avocado: Remove test_igb_nomsi_kvm
  hw/net/net_tx_pkt: Remove net_rx_pkt_get_l4_info
  net/eth: Rename eth_setup_vlan_headers_ex
  e1000x: Share more Rx filtering logic
  e1000x: Take CRC into consideration for size check
  e1000x: Rename TcpIpv6 into TcpIpv6Ex
  e1000e: Always log status after building rx metadata
  igb: Always log status after building rx metadata
  igb: Remove goto
  igb: Read DCMD.VLE of the first Tx descriptor
  e1000e: Reset packet state after emptying Tx queue
  vmxnet3: Reset packet state after emptying Tx queue
  igb: Add more definitions for Tx descriptor
  igb: Share common VF constants
  igb: Fix igb_mac_reg_init coding style alignment
  igb: Clear EICR bits for delayed MSI-X interrupts
  e1000e: Rename a variable in e1000e_receive_internal()
  igb: Rename a variable in igb_receive_internal()
  net/eth: Use void pointers
  net/eth: Always add VLAN tag
  hw/net/net_rx_pkt: Enforce alignment for eth_header
  tests/qtest/libqos/igb: Set GPIE.Multiple_MSIX
  igb: Implement MSI-X single vector mode
  igb: Use UDP for RSS hash
  igb: Implement Rx SCTP CSO
  igb: Implement Tx SCTP CSO
  igb: Strip the second VLAN tag for extended VLAN
  igb: Filter with the second VLAN tag for extended VLAN
  igb: Implement igb-specific oversize check
  igb: Implement Rx PTP2 timestamp
  igb: Implement Tx timestamp
  e1000e: Notify only new interrupts
  igb: Notify only new interrupts
  igb: Clear-on-read ICR when ICR.INTA is set
  vmxnet3: Do not depend on PC
  MAINTAINERS: Add a reviewer for network packet abstractions
  docs/system/devices/igb: Note igb is tested for DPDK

 MAINTAINERS                                   |   3 +-
 docs/system/devices/igb.rst                   |  14 +-
 hw/net/e1000e_core.h                          |   2 -
 hw/net/e1000x_common.h                        |   9 +-
 hw/net/e1000x_regs.h                          |  24 +-
 hw/net/igb_common.h                           |  24 +-
 hw/net/igb_regs.h                             |  67 +-
 hw/net/net_rx_pkt.h                           |  38 +-
 hw/net/net_tx_pkt.h                           |  46 +-
 include/net/eth.h                             |  29 +-
 include/qemu/crc32c.h                         |   1 +
 hw/net/e1000.c                                |  41 +-
 hw/net/e1000e_core.c                          | 292 +++----
 hw/net/e1000x_common.c                        |  79 +-
 hw/net/igb.c                                  |  10 +-
 hw/net/igb_core.c                             | 717 ++++++++++--------
 hw/net/igbvf.c                                |   7 -
 hw/net/net_rx_pkt.c                           | 107 ++-
 hw/net/net_tx_pkt.c                           | 101 ++-
 hw/net/virtio-net.c                           |   7 +-
 hw/net/vmxnet3.c                              |  22 +-
 net/eth.c                                     | 100 +--
 tests/qtest/libqos/igb.c                      |   1 +
 util/crc32c.c                                 |   8 +
 hw/net/Kconfig                                |   2 +-
 hw/net/trace-events                           |  19 +-
 .../org.centos/stream/8/x86_64/test-avocado   |   3 +-
 tests/avocado/netdev-ethtool.py               |  17 +-
 28 files changed, 969 insertions(+), 821 deletions(-)

-- 
2.40.1



             reply	other threads:[~2023-05-23  2:44 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-23  2:42 Akihiko Odaki [this message]
2023-05-23  2:42 ` [PATCH v5 01/48] hw/net/net_tx_pkt: Decouple implementation from PCI Akihiko Odaki
2023-05-23  2:42 ` [PATCH v5 02/48] hw/net/net_tx_pkt: Decouple interface " Akihiko Odaki
2023-05-23  2:42 ` [PATCH v5 03/48] e1000x: Fix BPRC and MPRC Akihiko Odaki
2023-05-23  2:42 ` [PATCH v5 04/48] igb: Fix Rx packet type encoding Akihiko Odaki
2023-05-23  2:42 ` [PATCH v5 05/48] igb: Do not require CTRL.VME for tx VLAN tagging Akihiko Odaki
2023-05-23  2:42 ` [PATCH v5 06/48] igb: Clear IMS bits when committing ICR access Akihiko Odaki
2023-05-23  2:42 ` [PATCH v5 07/48] net/net_rx_pkt: Use iovec for net_rx_pkt_set_protocols() Akihiko Odaki
2023-05-23  2:42 ` [PATCH v5 08/48] e1000e: Always copy ethernet header Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 09/48] igb: " Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 10/48] Fix references to igb Avocado test Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 11/48] tests/avocado: Remove unused imports Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 12/48] tests/avocado: Remove test_igb_nomsi_kvm Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 13/48] hw/net/net_tx_pkt: Remove net_rx_pkt_get_l4_info Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 14/48] net/eth: Rename eth_setup_vlan_headers_ex Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 15/48] e1000x: Share more Rx filtering logic Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 16/48] e1000x: Take CRC into consideration for size check Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 17/48] e1000x: Rename TcpIpv6 into TcpIpv6Ex Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 18/48] e1000e: Always log status after building rx metadata Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 19/48] igb: " Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 20/48] igb: Remove goto Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 21/48] igb: Read DCMD.VLE of the first Tx descriptor Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 22/48] e1000e: Reset packet state after emptying Tx queue Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 23/48] vmxnet3: " Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 24/48] igb: Add more definitions for Tx descriptor Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 25/48] igb: Share common VF constants Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 26/48] igb: Fix igb_mac_reg_init coding style alignment Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 27/48] igb: Clear EICR bits for delayed MSI-X interrupts Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 28/48] e1000e: Rename a variable in e1000e_receive_internal() Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 29/48] igb: Rename a variable in igb_receive_internal() Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 30/48] net/eth: Use void pointers Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 31/48] net/eth: Always add VLAN tag Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 32/48] hw/net/net_rx_pkt: Enforce alignment for eth_header Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 33/48] tests/qtest/libqos/igb: Set GPIE.Multiple_MSIX Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 34/48] igb: Implement MSI-X single vector mode Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 35/48] igb: Use UDP for RSS hash Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 36/48] igb: Implement Rx SCTP CSO Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 37/48] igb: Implement Tx " Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 38/48] igb: Strip the second VLAN tag for extended VLAN Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 39/48] igb: Filter with " Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 40/48] igb: Implement igb-specific oversize check Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 41/48] igb: Implement Rx PTP2 timestamp Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 42/48] igb: Implement Tx timestamp Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 43/48] e1000e: Notify only new interrupts Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 44/48] igb: " Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 45/48] igb: Clear-on-read ICR when ICR.INTA is set Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 46/48] vmxnet3: Do not depend on PC Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 47/48] MAINTAINERS: Add a reviewer for network packet abstractions Akihiko Odaki
2023-05-23  2:43 ` [PATCH v5 48/48] docs/system/devices/igb: Note igb is tested for DPDK Akihiko Odaki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230523024339.50875-1-akihiko.odaki@daynix.com \
    --to=akihiko.odaki@daynix.com \
    --cc=alex.bennee@linaro.org \
    --cc=bleal@redhat.com \
    --cc=crosa@redhat.com \
    --cc=dmitry.fleytman@gmail.com \
    --cc=jasowang@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=philmd@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=sriram.yagnaraman@est.tech \
    --cc=t.dzieciol@partner.samsung.com \
    --cc=thuth@redhat.com \
    --cc=wainersm@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.