When a register has effective bits fewer than their width, the old code
inconsistently masked when writing or reading. Make the code consistent
by always masking when writing, and remove some code duplication.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000.c | 84
igb implementation first starts off by copying e1000e code. Correct the
code style before that.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c | 41
hw/net/e1000e.c| 72 ++--
hw/net/e1000e_core.c
hw/net/mii.h provides common definitions for MII.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c | 86 ++--
hw/net/e1000_regs.h| 46
hw/net/e1000e.c| 1 +
hw/net/e1000e_core.c | 99
This is part of recent efforts of refactoring e1000 and e1000e.
DeviceClass's reset member is deprecated so migrate to ResettableClass.
There is no behavioral difference.
Signed-off-by: Akihiko Odaki
Reviewed-by: Peter Maydell
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000e.c
Before this change, e1000e_write_packet_to_guest() allocated the
receive descriptor buffer as an array of uint8_t. This does not ensure
the buffer is sufficiently aligned.
Introduce e1000_rx_desc_union type, a union type of all receive
descriptor types to correct this.
Signed-off-by: Akihiko
When a register has effective bits fewer than their width, the old code
inconsistently masked when writing or reading. Make the code consistent
by always masking when writing, and remove some code duplication.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 94
The definitions will be used by igb.
Signed-off-by: Akihiko Odaki
---
include/hw/net/mii.h | 13 -
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/include/hw/net/mii.h b/include/hw/net/mii.h
index 4ae4dcce7e..c6a767a49a 100644
--- a/include/hw/net/mii.h
+++ b/include
They are duplicate of running throttling timer flags and incomplete as
the flags are not cleared when the interrupts are fired or the device is
reset.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e.c | 5 ++---
hw/net/e1000e_core.c | 19 +++
hw/net/e1000e_core.h | 2
This change makes e1000e reset more things when software reset was
triggered. Some registers are exempted from software reset in the
datasheet and this change also implements the behavior accordingly.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 24 +++-
1 file
hw/net/mii.h provides common definitions for MII.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/fsl_etsec/etsec.c | 11 ++-
hw/net/fsl_etsec/etsec.h | 17 -
hw/net/fsl_etsec/miim.c | 5 +++--
include/hw/net/mii.h | 1 +
4 files
This is part of recent efforts of refactoring e1000 and e1000e.
DeviceClass's reset member is deprecated so migrate to ResettableClass.
There is no behavioral difference.
Signed-off-by: Akihiko Odaki
Reviewed-by: Peter Maydell
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c
ation if VIRTIO_NET_HDR_F_DATA_VALID is set.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 27 ++--
hw/net/net_rx_pkt.c | 7
hw/net/net_rx_pkt.h | 8 +
hw/net/net_tx_pkt.c | 76 +---
hw/net/net_tx_pkt.h | 21 ++
The definitions of SW Semaphore Register were copied from:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/net/ethernet/intel/e1000e/defines.h?h=v6.0.9#n374
Signed-off-by: Akihiko Odaki
---
hw/net/e1000_regs.h | 7 +++
hw/net/e1000e_core.c | 49
Signed-off-by: Akihiko Odaki
Acked-by: Thomas Huth
---
MAINTAINERS | 2 ++
1 file changed, 2 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 958915f227..e920d0061e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2218,6 +2218,8 @@ R: Akihiko Odaki
S: Maintained
F: hw/net/e1000e*
F
, E1000_MC_TBL_SIZE, and
E1000_VLAN_FILTER_TBL_SIZE were copied from:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/net/ethernet/intel/e1000/e1000_hw.h?h=v6.0.9#n707
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c | 50
NetTxPkt has a valid virtio-net header.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 16
hw/net/net_rx_pkt.c | 11 +--
hw/net/net_rx_pkt.h | 12 +---
hw/net/trace-events | 1 -
hw/net/virtio-net.c | 2 +-
hw/net/vmxnet3.c | 12 ++--
6
pointer indirection.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000e_core.c | 38 +++---
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index 736708407c..d143f2ae6f
I want to know to be notified when there is a new change for e1000e
as e1000e is similar to igb and such a change may also be applicable for
igb.
Signed-off-by: Akihiko Odaki
---
MAINTAINERS | 2 ++
1 file changed, 2 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 08ad1e5341
Use memcpy instead of memmove to initialize registers. The initial
register templates and register table instances will never overlap.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/net/e1000e_core.c b/hw/net
mismatch.
> ACTION: Configure the link partner for auto-negotiation.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000e_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index d8c17baf8f
-off-by: Akihiko Odaki
---
include/net/net.h | 6 ++
net/dump.c| 11 +++
net/net.c | 18 ++
net/tap.c | 16
4 files changed, 47 insertions(+), 4 deletions(-)
diff --git a/include/net/net.h b/include/net/net.h
index dc20b31e9f
net_tx_pkt_build_vheader() inspects TCP header but had no check for
the header size, resulting in an undefined behavior. Check the header
size and drop the packet if the header is too small.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 19 ++-
hw/net/net_tx_pkt.c
e1000x_is_vlan_packet() had a pointer to uint8_t as a parameter, but
it does not have to be uint8_t. Change the type to void *.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000x_common.c | 2 +-
hw/net/e1000x_common.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/net
The new function qemu_get_using_vnet_hdr() allows to automatically
determine if virtio-net header is used.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 3 +--
hw/net/net_tx_pkt.c | 19 ++-
hw/net/net_tx_pkt.h | 3 +--
hw/net/vmxnet3.c | 6 ++
4 files
implementation; igb provides loopback feature for VMDq and the feature
relies on software segmentation.
Implement proper TCP segmentation in net_tx_pkt to fix such a scenario.
Signed-off-by: Akihiko Odaki
---
hw/net/net_tx_pkt.c | 244
include/net
Use memcpy instead of memmove to initialize registers. The initial
register templates and register table instances will never overlap.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/net/e1000.c b/hw/net/e1000.c
index
igb can use this function to change its behavior depending on the
number of virtual functions currently enabled.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/pci/pcie_sriov.c | 5 +
include/hw
Some definitions in the header files are invalid for igb so extract
them to new header files to keep igb from referring to them.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c | 1 +
hw
Rename identifiers of definitions which will be modified later for igb.
This will also allow to build igb along with e1000e.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
---
hw/net/igb.c| 368 +-
hw/net/igb_common.h |6 +-
hw/net
Signed-off-by: Akihiko Odaki
---
tests/qtest/fuzz/generic_fuzz_configs.h | 5 +
tests/qtest/igb-test.c | 67 ++--
tests/qtest/libqos/igb.c| 139 +---
tests/qtest/libqos/meson.build | 1 +
tests/qtest/meson.build
Start off igb implementation by copying e1000e code first as igb
resembles e1000e.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
---
MAINTAINERS |5 +
hw/net/igb.c| 727 +
hw/net/igb_common.h | 102 ++
hw/net/igb_core.c
They will be useful for igb testing.
Signed-off-by: Akihiko Odaki
---
tests/qtest/libqos/e1000e.c | 12
tests/qtest/libqos/e1000e.h | 12
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/tests/qtest/libqos/e1000e.c b/tests/qtest/libqos/e1000e.c
index
Currently igb functions identically with e1000e.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
---
hw/net/Kconfig | 5 +
hw/net/meson.build | 2 ++
2 files changed, 7 insertions(+)
diff --git a/hw/net/Kconfig b/hw/net/Kconfig
index 1cc1c5775e
e1000e understands ethernet header so fabricate something convincing.
Signed-off-by: Akihiko Odaki
---
tests/qtest/e1000e-test.c | 17 +++--
tests/qtest/libqos/e1000e.h | 2 ++
2 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/tests/qtest/e1000e-test.c b/tests/qtest
Signed-off-by: Akihiko Odaki
---
MAINTAINERS | 1 +
docs/system/device-emulation.rst | 1 +
docs/system/devices/igb.rst | 71
3 files changed, 73 insertions(+)
create mode 100644 docs/system/devices/igb.rst
diff --git a/MAINTAINERS b
Expose the ethernet header so that igb can utilize it to perform the
internal routing among its SR-IOV functions.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
---
hw/net/net_tx_pkt.c | 6 ++
hw/net/net_tx_pkt.h | 8
2 files changed, 14
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 (13):
hw/net/net_tx_pkt: Introduce net_tx_pkt_get_eth_hdr
pcie: Introduce pcie_sriov_num_vfs
This automates ethtool tests for igb registers, interrupts, etc.
Signed-off-by: Akihiko Odaki
---
MAINTAINERS | 1 +
.../org.centos/stream/8/x86_64/test-avocado | 1 +
tests/avocado/igb.py | 38 +++
3 files changed
Start off igb test implementation by copying e1000e code first as igb
resembles e1000e.
Signed-off-by: Akihiko Odaki
---
MAINTAINERS | 2 +
tests/qtest/igb-test.c | 242 +++
tests/qtest/libqos/igb.c | 226
On 2023/01/26 18:34, Sriram Yagnaraman wrote:
-Original Message-
From: Sriram Yagnaraman
Sent: Tuesday, 24 January 2023 09:54
To: Akihiko Odaki ; Jason Wang
Cc: Dmitry Fleytman ; Michael S. Tsirkin
; Marcel Apfelbaum ;
Alex Bennée ; Philippe Mathieu-Daudé
; Thomas Huth ; Wainer dos
On 2023/01/23 8:28, BALATON Zoltan wrote:
On Thu, 19 Jan 2023, Akihiko Odaki wrote:
On 2023/01/15 3:11, BALATON Zoltan wrote:
On Sat, 14 Jan 2023, Akihiko Odaki wrote:
On 2023/01/13 22:43, BALATON Zoltan wrote:
On Thu, 5 Jan 2023, BALATON Zoltan wrote:
Hello,
I got reports from several
On 2023/01/28 22:46, Sriram Yagnaraman wrote:
Use PFRSTD to reset RSTI bit for VFs, and raise VFLRE interrupt when VF
is reset.
Signed-off-by: Sriram Yagnaraman
---
hw/net/e1000x_regs.h | 1 +
hw/net/igb_core.c| 33 +
hw/net/trace-events | 2 ++
3 fil
On 2023/01/29 14:58, Akihiko Odaki wrote:
On 2023/01/28 22:46, Sriram Yagnaraman wrote:
Use PFRSTD to reset RSTI bit for VFs, and raise VFLRE interrupt when VF
is reset.
Signed-off-by: Sriram Yagnaraman
---
hw/net/e1000x_regs.h | 1 +
hw/net/igb_core.c | 33
On 2023/01/28 22:46, Sriram Yagnaraman wrote:
Signed-off-by: Sriram Yagnaraman
---
hw/net/igb_core.c | 74 ++-
1 file changed, 54 insertions(+), 20 deletions(-)
diff --git a/hw/net/igb_core.c b/hw/net/igb_core.c
index 6bca5459b9..1eb7ba168f 100644
On 2023/01/28 22:46, Sriram Yagnaraman wrote:
RSS for VFs is only enabled if VMOLR[n].RSSE is set.
Signed-off-by: Sriram Yagnaraman
---
hw/net/igb_core.c | 18 +-
1 file changed, 13 insertions(+), 5 deletions(-)
diff --git a/hw/net/igb_core.c b/hw/net/igb_core.c
index 1eb7ba
On 2023/01/28 22:46, Sriram Yagnaraman wrote:
Add support for stripping/inserting VLAN for VFs.
Signed-off-by: Sriram Yagnaraman
---
hw/net/igb_core.c | 100 ++
1 file changed, 65 insertions(+), 35 deletions(-)
diff --git a/hw/net/igb_core.c b/hw/
On 2023/01/28 22:46, Sriram Yagnaraman wrote:
Also add checks for RXDCTL/TXDCTL queue enable bits
Signed-off-by: Sriram Yagnaraman
---
hw/net/igb_core.c | 42 +++---
hw/net/igb_regs.h | 3 ++-
2 files changed, 33 insertions(+), 12 deletions(-)
diff --gi
On 2023/01/30 21:07, Sriram Yagnaraman wrote:
-Original Message-
From: Akihiko Odaki
Sent: Sunday, 29 January 2023 08:25
To: Sriram Yagnaraman
Cc: qemu-devel@nongnu.org; Jason Wang ; Dmitry
Fleytman ; Michael S . Tsirkin
; Marcel Apfelbaum
Subject: Re: [PATCH 5/9] igb: respect
On 2023/01/30 19:16, Sriram Yagnaraman wrote:
-Original Message-
From: Akihiko Odaki
Sent: Sunday, 29 January 2023 10:16
To: Sriram Yagnaraman
Cc: qemu-devel@nongnu.org; Jason Wang ; Dmitry
Fleytman ; Michael S . Tsirkin
; Marcel Apfelbaum
Subject: Re: [PATCH 3/9] igb: implement
igb implementation first starts off by copying e1000e code. Correct the
code style before that.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c | 41
hw/net/e1000e.c| 72 ++--
hw/net/e1000e_core.c
pointer indirection.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000e_core.c | 38 +++---
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index 736708407c..d143f2ae6f
Use memcpy instead of memmove to initialize registers. The initial
register templates and register table instances will never overlap.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/net/e1000e_core.c b/hw/net
Before this change, e1000e_write_packet_to_guest() allocated the
receive descriptor buffer as an array of uint8_t. This does not ensure
the buffer is sufficiently aligned.
Introduce e1000_rx_desc_union type, a union type of all receive
descriptor types to correct this.
Signed-off-by: Akihiko
Signed-off-by: Akihiko Odaki
Acked-by: Thomas Huth
---
MAINTAINERS | 2 ++
1 file changed, 2 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 958915f227..e920d0061e 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2218,6 +2218,8 @@ R: Akihiko Odaki
S: Maintained
F: hw/net/e1000e*
F
implementation; igb provides loopback feature for VMDq and the feature
relies on software segmentation.
Implement proper TCP segmentation in net_tx_pkt to fix such a scenario.
Signed-off-by: Akihiko Odaki
---
hw/net/net_tx_pkt.c | 248
include/net
e1000x_is_vlan_packet() had a pointer to uint8_t as a parameter, but
it does not have to be uint8_t. Change the type to void *.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000x_common.c | 2 +-
hw/net/e1000x_common.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/net
hw/net/mii.h provides common definitions for MII.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c | 86 ++--
hw/net/e1000_regs.h| 46
hw/net/e1000e.c| 1 +
hw/net/e1000e_core.c | 99
The definitions will be used by igb.
Signed-off-by: Akihiko Odaki
---
include/hw/net/mii.h | 13 -
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/include/hw/net/mii.h b/include/hw/net/mii.h
index 4ae4dcce7e..c6a767a49a 100644
--- a/include/hw/net/mii.h
+++ b/include
NetTxPkt has a valid virtio-net header.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 16
hw/net/net_rx_pkt.c | 11 +--
hw/net/net_rx_pkt.h | 12 +---
hw/net/trace-events | 1 -
hw/net/virtio-net.c | 2 +-
hw/net/vmxnet3.c | 12 ++--
6
ation if VIRTIO_NET_HDR_F_DATA_VALID is set.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 27 ++--
hw/net/net_rx_pkt.c | 7
hw/net/net_rx_pkt.h | 8 +
hw/net/net_tx_pkt.c | 76 +---
hw/net/net_tx_pkt.h | 21 ++
I want to know to be notified when there is a new change for e1000e
as e1000e is similar to igb and such a change may also be applicable for
igb.
Signed-off-by: Akihiko Odaki
---
MAINTAINERS | 2 ++
1 file changed, 2 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 08ad1e5341
This change makes e1000e reset more things when software reset was
triggered. Some registers are exempted from software reset in the
datasheet and this change also implements the behavior accordingly.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 24 +++-
1 file
The new function qemu_get_using_vnet_hdr() allows to automatically
determine if virtio-net header is used.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 3 +--
hw/net/net_tx_pkt.c | 19 ++-
hw/net/net_tx_pkt.h | 3 +--
hw/net/vmxnet3.c | 6 ++
4 files
-off-by: Akihiko Odaki
---
include/net/net.h | 6 ++
net/dump.c| 11 +++
net/net.c | 18 ++
net/tap.c | 16
4 files changed, 47 insertions(+), 4 deletions(-)
diff --git a/include/net/net.h b/include/net/net.h
index dc20b31e9f
mismatch.
> ACTION: Configure the link partner for auto-negotiation.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000e_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index d8c17baf8f
They are duplicate of running throttling timer flags and incomplete as
the flags are not cleared when the interrupts are fired or the device is
reset.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e.c | 5 ++---
hw/net/e1000e_core.c | 19 +++
hw/net/e1000e_core.h | 2
When a register has effective bits fewer than their width, the old code
inconsistently masked when writing or reading. Make the code consistent
by always masking when writing, and remove some code duplication.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000.c | 84
Use memcpy instead of memmove to initialize registers. The initial
register templates and register table instances will never overlap.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/net/e1000.c b/hw/net/e1000.c
index
This is part of recent efforts of refactoring e1000 and e1000e.
DeviceClass's reset member is deprecated so migrate to ResettableClass.
There is no behavioral difference.
Signed-off-by: Akihiko Odaki
Reviewed-by: Peter Maydell
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c
/crash_47dfe62d9f911bf523ff48cd441b61c0013ed805
Signed-off-by: Akihiko Odaki
---
softmmu/physmem.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/softmmu/physmem.c b/softmmu/physmem.c
index cb998cdf23..3cd27b1c9d 100644
--- a/softmmu/physmem.c
+++ b/softmmu/physmem.c
@@ -2828,7 +2828,7 @@ static MemTxResult
er is
used".
- Added "hw/net/net_rx_pkt: Remove net_rx_pkt_has_virt_hdr".
- Added "e1000e: Perform software segmentation for loopback".
- Added "hw/net/net_tx_pkt: Implement TCP segmentation"
- Added "MAINTAINERS: Add Akihiko Odaki as a e1000e reviewer&quo
, E1000_MC_TBL_SIZE, and
E1000_VLAN_FILTER_TBL_SIZE were copied from:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/net/ethernet/intel/e1000/e1000_hw.h?h=v6.0.9#n707
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c | 50
net_tx_pkt_build_vheader() inspects TCP header but had no check for
the header size, resulting in an undefined behavior. Check the header
size and drop the packet if the header is too small.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 19 ++-
hw/net/net_tx_pkt.c
ot;)
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 4
1 file changed, 4 deletions(-)
diff --git a/hw/net/e1000e_core.c b/hw/net/e1000e_core.c
index ff93547f88..76c7814cb8 100644
--- a/hw/net/e1000e_core.c
+++ b/hw/net/e1000e_core.c
@@ -162,8 +162,6 @@ e1000e_intrmgr_on_thrott
The definitions of SW Semaphore Register were copied from:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/net/ethernet/intel/e1000e/defines.h?h=v6.0.9#n374
Signed-off-by: Akihiko Odaki
---
hw/net/e1000_regs.h | 7 +++
hw/net/e1000e_core.c | 49
...@bu.edu/
The fixed test case is:
fuzz/crash_2d7036941dcda1ad4380bb8a9174ed0c949bcefd
Fixes: 16b29ae180 ("Add HPET emulation to qemu (Beth Kon)")
Signed-off-by: Akihiko Odaki
---
hw/timer/hpet.c | 19 +--
1 file changed, 13 insertions(+), 6 deletions(-)
diff --git
This is part of recent efforts of refactoring e1000 and e1000e.
DeviceClass's reset member is deprecated so migrate to ResettableClass.
There is no behavioral difference.
Signed-off-by: Akihiko Odaki
Reviewed-by: Peter Maydell
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000e.c
/crash_6aeaa33e7211ecd603726c53e834df4c6d1e08bc
Fixes: e263cd49c7 ("Packet abstraction for VMWARE network devices")
Signed-off-by: Akihiko Odaki
---
hw/net/net_tx_pkt.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/hw/net/net_tx_pkt.c b/hw/net/net_tx_pkt.c
index 4a35e8429d..986a3adfe9 100644
--- a/hw/net/net_tx_p
When a register has effective bits fewer than their width, the old code
inconsistently masked when writing or reading. Make the code consistent
by always masking when writing, and remove some code duplication.
Signed-off-by: Akihiko Odaki
---
hw/net/e1000e_core.c | 94
hw/net/mii.h provides common definitions for MII.
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/fsl_etsec/etsec.c | 11 ++-
hw/net/fsl_etsec/etsec.h | 17 -
hw/net/fsl_etsec/miim.c | 5 +++--
include/hw/net/mii.h | 1 +
4 files
vhost_dev_cleanup() clears vhost_dev so back up its vqs member to free
the memory pointed by the member.
Fixes: 98fc1ada4c ("virtio: add vhost-user-fs base device")
Signed-off-by: Akihiko Odaki
---
hw/virtio/vhost-user-fs.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
di
vhost_dev_cleanup().
Fixes: 27ba7b027f ("hw/virtio: add boilerplate for vhost-user-gpio device")
Signed-off-by: Akihiko Odaki
---
hw/virtio/vhost-user-gpio.c | 10 ++
include/hw/virtio/vhost-user-gpio.h | 2 +-
2 files changed, 7 insertions(+), 5 deletions(-)
diff
vhost_dev_cleanup() clears vhost_dev so back up its vqs member to free
the memory pointed by the member.
Fixes: 7221d3b634 ("hw/virtio: add boilerplate for vhost-user-i2c device")
Signed-off-by: Akihiko Odaki
---
hw/virtio/vhost-user-i2c.c | 5 +++--
1 file changed, 3 insertions(+), 2
vhost_dev_cleanup() clears vhost_dev so back up its vqs member to free
the memory pointed by the member.
Fixes: 821d28b88f ("vhost-user-rng: Add vhost-user-rng implementation")
Signed-off-by: Akihiko Odaki
---
hw/virtio/vhost-user-rng.c | 5 +++--
1 file changed, 3 insertions(+), 2
e1000e understands ethernet header so fabricate something convincing.
Signed-off-by: Akihiko Odaki
---
tests/qtest/e1000e-test.c | 17 +++--
tests/qtest/libqos/e1000e.h | 2 ++
2 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/tests/qtest/e1000e-test.c b/tests/qtest
Signed-off-by: Akihiko Odaki
---
MAINTAINERS | 1 +
docs/system/device-emulation.rst | 1 +
docs/system/devices/igb.rst | 71
3 files changed, 73 insertions(+)
create mode 100644 docs/system/devices/igb.rst
diff --git a/MAINTAINERS b
They will be useful for igb testing.
Signed-off-by: Akihiko Odaki
---
tests/qtest/libqos/e1000e.c | 12
tests/qtest/libqos/e1000e.h | 12
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/tests/qtest/libqos/e1000e.c b/tests/qtest/libqos/e1000e.c
index
igb can use this function to change its behavior depending on the
number of virtual functions currently enabled.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/pci/pcie_sriov.c | 5 +
include/hw
Expose the ethernet header so that igb can utilize it to perform the
internal routing among its SR-IOV functions.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
---
hw/net/net_tx_pkt.c | 6 ++
hw/net/net_tx_pkt.h | 8
2 files changed, 14
This automates ethtool tests for igb registers, interrupts, etc.
Signed-off-by: Akihiko Odaki
---
MAINTAINERS | 1 +
.../org.centos/stream/8/x86_64/test-avocado | 1 +
tests/avocado/igb.py | 38 +++
3 files changed
Spun off e1000e general improvements to a distinct series.
- Restored vnet_hdr offload as there seems nothing preventing from that.
Akihiko Odaki (9):
hw/net/net_tx_pkt: Introduce net_tx_pkt_get_eth_hdr
pcie: Introduce pcie_sriov_num_vfs
e1000: Split header files
Intrdocue igb device emulati
This change is derived from qtest for e1000e device.
Signed-off-by: Akihiko Odaki
---
MAINTAINERS | 2 +
tests/qtest/fuzz/generic_fuzz_configs.h | 5 +
tests/qtest/igb-test.c | 243
tests/qtest/libqos/igb.c
Some definitions in the header files are invalid for igb so extract
them to new header files to keep igb from referring to them.
Signed-off-by: Gal Hammer
Signed-off-by: Marcel Apfelbaum
Signed-off-by: Akihiko Odaki
Reviewed-by: Philippe Mathieu-Daudé
---
hw/net/e1000.c | 1 +
hw
On 2023/01/30 22:22, Sriram Yagnaraman wrote:
Use PFRSTD to reset RSTI bit for VFs, and raise VFLRE interrupt when VF
is reset.
Signed-off-by: Sriram Yagnaraman
---
hw/net/e1000x_regs.h | 1 +
hw/net/igb_core.c| 33 +
hw/net/trace-events | 2 ++
3 fil
On 2023/01/30 22:22, Sriram Yagnaraman wrote:
Also add checks for RXDCTL/TXDCTL queue enable bits
Signed-off-by: Sriram Yagnaraman
---
hw/net/igb_core.c | 41 ++---
hw/net/igb_regs.h | 4 +++-
2 files changed, 33 insertions(+), 12 deletions(-)
diff --gi
On 2023/01/30 23:19, Akihiko Odaki wrote:
On 2023/01/30 22:22, Sriram Yagnaraman wrote:
Also add checks for RXDCTL/TXDCTL queue enable bits
Signed-off-by: Sriram Yagnaraman
---
hw/net/igb_core.c | 41 ++---
hw/net/igb_regs.h | 4 +++-
2 files changed
On 2023/01/30 22:23, Sriram Yagnaraman wrote:
Signed-off-by: Sriram Yagnaraman
---
hw/net/igb_core.c | 48 +++
1 file changed, 40 insertions(+), 8 deletions(-)
diff --git a/hw/net/igb_core.c b/hw/net/igb_core.c
index cea7c036f0..89650fcfd4 100644
-
On 2023/01/29 5:57, Sriram Yagnaraman wrote:
-Original Message-
From: Akihiko Odaki
Sent: Thursday, 26 January 2023 12:32
To: Sriram Yagnaraman ; Jason Wang
Cc: Dmitry Fleytman ; Michael S. Tsirkin
; Marcel Apfelbaum ;
Alex Bennée ; Philippe Mathieu-Daudé
; Thomas Huth ; Wainer dos
://gitlab.freedesktop.org/slirp/libslirp/-/merge_requests/131
Regards,
Akihiko Odaki
On 2023/01/31 0:12, Michael S. Tsirkin wrote:
On Mon, Jan 30, 2023 at 10:47:07PM +0900, Akihiko Odaki wrote:
filter-dump specifiees Ethernet as PCAP LinkType, which does not expect
virtio-net header. Having virtio-net header in such PCAP file breaks
PCAP unconsumable. Unfortunately currently
701 - 800 of 3289 matches
Mail list logo