qemu/hw/net
Antoine Damhet af01cf195b Revert "virtio-net: Copy received header to buffer"
This reverts commit 7987d2be5a.

The goal was to remove the need to patch the (const) input buffer
with a recomputed UDP checksum by copying headers to a RW region and
inject the checksum there. The patch computed the checksum only from the
header fields (missing the rest of the payload) producing an invalid one
and making guests fail to acquire a DHCP lease.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2727
Cc: qemu-stable@nongnu.org
Signed-off-by: Antoine Damhet <adamhet@scaleway.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Message-ID: <20250408145345.142947-1-adamhet@scaleway.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit e28fbd1c52)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2025-04-16 09:41:22 +03:00
..
can hw/net/can/xlnx-versal-canfd: Fix FIFO issues 2024-09-13 15:31:49 +01:00
fsl_etsec hw/net/fsl_etsec/etsec: Prefer DEFINE_TYPES() macro 2024-11-05 23:32:25 +00:00
rocker hw/net/rocker/rocker_of_dpa.c: Remove superfluous error check 2024-11-19 13:02:05 +00:00
allwinner-sun8i-emac.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
allwinner_emac.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
cadence_gem.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
dp8393x.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
e1000.c hw, target: Add ResetType argument to hold and exit phase methods 2024-04-25 10:21:06 +01:00
e1000_common.h e1000: Split header files 2023-03-10 15:35:38 +08:00
e1000_regs.h hw/net: spelling fixes 2023-09-20 07:54:34 +03:00
e1000e.c tap: Remove qemu_using_vnet_hdr() 2024-06-04 15:14:25 +08:00
e1000e_core.c hw/net: remove return after g_assert_not_reached() 2024-09-24 13:53:35 +02:00
e1000e_core.h e1000e: fix link state on resume 2024-03-12 19:28:32 +08:00
e1000x_common.c e1000x: Take CRC into consideration for size check 2023-05-23 15:20:15 +08:00
e1000x_common.h e1000x: Share more Rx filtering logic 2023-05-23 15:20:15 +08:00
e1000x_regs.h hw/net: spelling fixes 2023-09-20 07:54:34 +03:00
eepro100.c license: Simplify GPL-2.0-or-later license descriptions 2024-09-20 10:11:59 +03:00
ftgmac100.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
i82596.c * Convert more Avocado tests to the new functional test framework 2024-09-28 12:34:38 +01:00
i82596.h hw/net: Make NetCanReceive() return a boolean 2020-03-31 21:14:35 +08:00
igb.c Revert "pcie_sriov: Ensure VF function number does not overflow" 2024-08-01 04:32:00 -04:00
igb_common.h igb: Add a VF reset handler 2023-11-13 15:33:37 +08:00
igb_core.c hw/net: remove return after g_assert_not_reached() 2024-09-24 13:53:35 +02:00
igb_core.h igb: fix link state on resume 2024-03-12 19:28:31 +08:00
igb_regs.h license: Update deprecated SPDX tag GPL-2.0 to GPL-2.0-only 2024-09-20 10:11:59 +03:00
igbvf.c hw, target: Add ResetType argument to hold and exit phase methods 2024-04-25 10:21:06 +01:00
imx_fec.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
Kconfig kconfig: Add PCIe devices to s390x machines 2023-07-14 11:10:57 +02:00
lan9118.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
lance.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
lasi_i82596.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
mcf_fec.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
meson.build hw/net: Remove TYPE_ETRAX_FS_ETH device 2024-09-13 20:11:12 +02:00
mipsnet.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
msf2-emac.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
mv88w8618_eth.c hw/net: Constify VMState 2023-12-30 07:38:06 +11:00
ne2000-isa.c hw/net: Constify VMState 2023-12-30 07:38:06 +11:00
ne2000-pci.c hw/net: Constify VMState 2023-12-30 07:38:06 +11:00
ne2000.c hw/net: Constify VMState 2023-12-30 07:38:06 +11:00
ne2000.h Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
net_rx_pkt.c hw/net/net_rx_pkt: Remove deadcode 2024-10-03 17:26:05 +03:00
net_rx_pkt.h hw/net/net_rx_pkt: Remove deadcode 2024-10-03 17:26:05 +03:00
net_tx_pkt.c tap: Remove qemu_using_vnet_hdr() 2024-06-04 15:14:25 +08:00
net_tx_pkt.h igb: Implement Tx SCTP CSO 2023-05-23 15:20:15 +08:00
npcm7xx_emc.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
npcm_gmac.c hw/net/npcm_gmac: Change error log to trace event 2024-11-05 10:10:00 +00:00
opencores_eth.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
pcnet-pci.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
pcnet.c Avoid unaligned fetch in ladr_match() 2024-03-12 19:28:32 +08:00
pcnet.h net: Replace TAB indentations with spaces 2022-11-11 09:39:03 +01:00
rtl8139.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
smc91c111.c hw/net/smc91c111: Don't allow data register access to overrun buffer 2025-03-18 09:02:48 +03:00
spapr_llan.c hw/net/spapr: prevent potential NULL dereference 2024-07-02 06:47:51 +02:00
stellaris_enet.c mark <zlib.h> with for-crc32 in a consistent manner 2024-09-20 08:06:56 +03:00
sungem.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
sunhme.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
trace-events hw/net/npcm_gmac: Change error log to trace event 2024-11-05 10:10:00 +00:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
tulip.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
tulip.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
vhost_net-stub.c virtio-net: add support for configure interrupt 2023-01-08 01:54:22 -05:00
vhost_net.c vhost_net: fix assertion triggered by batch of host notifiers processing 2024-11-26 16:35:51 -05:00
virtio-net.c Revert "virtio-net: Copy received header to buffer" 2025-04-16 09:41:22 +03:00
vmware_utils.h hw/net/vmxnet3: Fix code to work on big endian hosts, too 2017-11-20 11:08:00 +08:00
vmxnet3.c hw/net: remove return after g_assert_not_reached() 2024-09-24 13:53:35 +02:00
vmxnet3.h hw/net: spelling fixes 2023-09-20 07:54:34 +03:00
vmxnet3_defs.h include/hw/pci: Split pci_device.h off pci.h 2023-01-08 01:54:22 -05:00
vmxnet_debug.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
xen_nic.c hw/net/xen_nic: Fix missing ERRP_GUARD() for error_prepend() 2024-03-09 18:51:45 +01:00
xgmac.c hw/net: Constify VMState 2023-12-30 07:38:06 +11:00
xilinx_axienet.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00
xilinx_ethlite.c hw: Use device_class_set_legacy_reset() instead of opencoding 2024-09-13 15:31:44 +01:00