Hi Jason,
Can you have a look at this series as well as the patch pointed to by
Based-on: tag?
Regards,
Akihiko Odaki
On 2023/04/26 19:36, Akihiko Odaki wrote:
Based-on: <366bbcafdb6e0373f0deb105153768a8c0bded87.ca...@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.
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(-)