> On 28 Oct 2015, at 07:44 AM, Jason Wang <jasow...@redhat.com> wrote: > > > > On 10/26/2015 01:00 AM, Leonid Bloch wrote: >> Hello qemu-devel, >> >> This patch series is an RFC for the new networking device emulation >> we're developing for QEMU. >> >> This new device emulates the Intel 82574 GbE Controller and works >> with unmodified Intel e1000e drivers from the Linux/Windows kernels. >> >> The status of the current series is "Functional Device Ready, work >> on Extended Features in Progress". >> >> More precisely, these patches represent a functional device, which >> is recognized by the standard Intel drivers, and is able to transfer >> TX/RX packets with CSO/TSO offloads, according to the spec. >> >> Extended features not supported yet (work in progress): >> 1. TX/RX Interrupt moderation mechanisms >> 2. RSS >> 3. Full-featured multi-queue (use of multiqueued network backend) >> >> Also, there will be some code refactoring and performance >> optimization efforts. >> >> This series was tested on Linux (Fedora 22) and Windows (2012R2) >> guests, using Iperf, with TX/RX and TCP/UDP streams, and various >> packet sizes. >> >> More thorough testing, including data streams with different MTU >> sizes, and Microsoft Certification (HLK) tests, are pending missing >> features' development. >> >> See commit messages (esp. "net: Introduce e1000e device emulation") >> for more information about the development approaches and the >> architecture options chosen for this device. >> >> This series is based upon v2.3.0 tag of the upstream QEMU repository, >> and it will be rebased to latest before the final submission. >> >> Please share your thoughts - any feedback is highly welcomed :) >> >> Best Regards, >> Dmitry Fleytman. > > Thanks for the series. Will go through this in next few days. > > Since 2.5 is in soft freeze, this looks a 2.6 material.
Thanks, Jason. > >> >> Dmitry Fleytman (5): >> net: Add macros for ETH address tracing >> net_pkt: Name vmxnet3 packet abstractions more generic >> net_pkt: Extend packet abstraction as requied by e1000e functionality >> e1000_regs: Add definitions for Intel 82574-specific bits >> net: Introduce e1000e device emulation >> >> MAINTAINERS | 2 + >> default-configs/pci.mak | 1 + >> hw/net/Makefile.objs | 5 +- >> hw/net/e1000_regs.h | 201 ++++- >> hw/net/e1000e.c | 531 ++++++++++++ >> hw/net/e1000e_core.c | 2081 >> +++++++++++++++++++++++++++++++++++++++++++++++ >> hw/net/e1000e_core.h | 181 +++++ >> hw/net/net_rx_pkt.c | 273 +++++++ >> hw/net/net_rx_pkt.h | 241 ++++++ >> hw/net/net_tx_pkt.c | 606 ++++++++++++++ >> hw/net/net_tx_pkt.h | 191 +++++ >> hw/net/vmxnet3.c | 80 +- >> hw/net/vmxnet_rx_pkt.c | 187 ----- >> hw/net/vmxnet_rx_pkt.h | 174 ---- >> hw/net/vmxnet_tx_pkt.c | 567 ------------- >> hw/net/vmxnet_tx_pkt.h | 148 ---- >> include/net/eth.h | 90 +- >> include/net/net.h | 5 + >> net/eth.c | 152 +++- >> tests/Makefile | 4 +- >> trace-events | 68 ++ >> 21 files changed, 4597 insertions(+), 1191 deletions(-) >> create mode 100644 hw/net/e1000e.c >> create mode 100644 hw/net/e1000e_core.c >> create mode 100644 hw/net/e1000e_core.h >> create mode 100644 hw/net/net_rx_pkt.c >> create mode 100644 hw/net/net_rx_pkt.h >> create mode 100644 hw/net/net_tx_pkt.c >> create mode 100644 hw/net/net_tx_pkt.h >> delete mode 100644 hw/net/vmxnet_rx_pkt.c >> delete mode 100644 hw/net/vmxnet_rx_pkt.h >> delete mode 100644 hw/net/vmxnet_tx_pkt.c >> delete mode 100644 hw/net/vmxnet_tx_pkt.h >> >