[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v8 0/8] Introduce igb
From: |
Cédric Le Goater |
Subject: |
Re: [PATCH v8 0/8] Introduce igb |
Date: |
Mon, 6 Feb 2023 14:32:35 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 |
On 2/4/23 05:36, Akihiko Odaki wrote:
Based-on: <20230201033539.30049-1-akihiko.odaki@daynix.com>
([PATCH v5 00/29] e1000x cleanups (preliminary for IGB))
For both series,
Tested-by: Cédric Le Goater <clg@redhat.com>
In a KVM guest with two VFs, one of which being pass-through in a nested KVM.
Thanks,
C.
igb is a family of Intel's gigabit ethernet controllers. This series implements
82576 emulation in particular. You can see the last patch for the documentation.
Note that there is another effort to bring 82576 emulation. This series was
developed independently by Sriram Yagnaraman.
https://lists.gnu.org/archive/html/qemu-devel/2022-12/msg04670.html
V7 -> V8:
- Removed obsolete patch
"hw/net/net_tx_pkt: Introduce net_tx_pkt_get_eth_hdr" (Cédric Le Goater)
V6 -> V7:
- Reordered statements in igb_receive_internal() so that checksum will be
calculated only once and it will be more close to e1000e_receive_internal().
V5 -> V6:
- Rebased.
- Renamed "test" to "packet" in tests/qtest/e1000e-test.c.
- Fixed Rx logic so that a Rx pool without enough space won't prevent other
pools from receiving, based on Sriram Yagnaraman's work.
V4 -> V5:
- Rebased.
- Squashed patches to copy from e1000e code and modify it.
- Listed the implemented features.
- Added a check for interrupts availablity on PF.
- Fixed the declaration of igb_receive_internal(). (Sriram Yagnaraman)
V3 -> V4:
- Rebased.
- Corrected PCIDevice specified for DMA.
V2 -> V3:
- Rebased.
- Fixed PCIDevice reference in hw/net/igbvf.c.
- Fixed TX packet switching when VM loopback is enabled.
- Fixed VMDq enablement check.
- Fixed RX descriptor length parser.
- Fixed the definitions of RQDPC readers.
- Implemented VLAN VM filter.
- Implemented VT_CTL.Def_PL.
- Implemented the combination of VMDq and RSS.
- Noted that igb is tested with Windows HLK.
V1 -> V2:
- Spun off e1000e general improvements to a distinct series.
- Restored vnet_hdr offload as there seems nothing preventing from that.
Akihiko Odaki (8):
pcie: Introduce pcie_sriov_num_vfs
e1000: Split header files
Intrdocue igb device emulation
tests/qtest/e1000e-test: Fabricate ethernet header
tests/qtest/libqos/e1000e: Export macreg functions
igb: Introduce qtest for igb device
tests/avocado: Add igb test
docs/system/devices/igb: Add igb documentation
MAINTAINERS | 9 +
docs/system/device-emulation.rst | 1 +
docs/system/devices/igb.rst | 71 +
hw/net/Kconfig | 5 +
hw/net/e1000.c | 1 +
hw/net/e1000_common.h | 102 +
hw/net/e1000_regs.h | 927 +---
hw/net/e1000e.c | 3 +-
hw/net/e1000e_core.c | 1 +
hw/net/e1000x_common.c | 1 +
hw/net/e1000x_common.h | 74 -
hw/net/e1000x_regs.h | 940 ++++
hw/net/igb.c | 612 +++
hw/net/igb_common.h | 146 +
hw/net/igb_core.c | 4043 +++++++++++++++++
hw/net/igb_core.h | 144 +
hw/net/igb_regs.h | 648 +++
hw/net/igbvf.c | 327 ++
hw/net/meson.build | 2 +
hw/net/trace-events | 32 +
hw/pci/pcie_sriov.c | 5 +
include/hw/pci/pcie_sriov.h | 3 +
.../org.centos/stream/8/x86_64/test-avocado | 1 +
tests/avocado/igb.py | 38 +
tests/qtest/e1000e-test.c | 25 +-
tests/qtest/fuzz/generic_fuzz_configs.h | 5 +
tests/qtest/igb-test.c | 243 +
tests/qtest/libqos/e1000e.c | 12 -
tests/qtest/libqos/e1000e.h | 14 +
tests/qtest/libqos/igb.c | 185 +
tests/qtest/libqos/meson.build | 1 +
tests/qtest/meson.build | 1 +
32 files changed, 7600 insertions(+), 1022 deletions(-)
create mode 100644 docs/system/devices/igb.rst
create mode 100644 hw/net/e1000_common.h
create mode 100644 hw/net/e1000x_regs.h
create mode 100644 hw/net/igb.c
create mode 100644 hw/net/igb_common.h
create mode 100644 hw/net/igb_core.c
create mode 100644 hw/net/igb_core.h
create mode 100644 hw/net/igb_regs.h
create mode 100644 hw/net/igbvf.c
create mode 100644 tests/avocado/igb.py
create mode 100644 tests/qtest/igb-test.c
create mode 100644 tests/qtest/libqos/igb.c
- [PATCH v8 4/8] tests/qtest/e1000e-test: Fabricate ethernet header, (continued)
- [PATCH v8 4/8] tests/qtest/e1000e-test: Fabricate ethernet header, Akihiko Odaki, 2023/02/03
- [PATCH v8 5/8] tests/qtest/libqos/e1000e: Export macreg functions, Akihiko Odaki, 2023/02/03
- [PATCH v8 6/8] igb: Introduce qtest for igb device, Akihiko Odaki, 2023/02/03
- [PATCH v8 7/8] tests/avocado: Add igb test, Akihiko Odaki, 2023/02/03
- [PATCH v8 8/8] docs/system/devices/igb: Add igb documentation, Akihiko Odaki, 2023/02/03
- Re: [PATCH v8 0/8] Introduce igb, Akihiko Odaki, 2023/02/06
- Re: [PATCH v8 0/8] Introduce igb,
Cédric Le Goater <=
- RE: [PATCH v8 0/8] Introduce igb, Sriram Yagnaraman, 2023/02/06