[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v4 23/48] vmxnet3: Reset packet state after emptying Tx queue
From: |
Akihiko Odaki |
Subject: |
[PATCH v4 23/48] vmxnet3: Reset packet state after emptying Tx queue |
Date: |
Wed, 26 Apr 2023 19:36:51 +0900 |
Keeping Tx packet state after the transmit queue is emptied but this
behavior is unreliable as the state can be reset anytime the migration
happens.
Always reset Tx packet state always after the queue is emptied.
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
hw/net/vmxnet3.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/hw/net/vmxnet3.c b/hw/net/vmxnet3.c
index 05f41b6dfa..18b9edfdb2 100644
--- a/hw/net/vmxnet3.c
+++ b/hw/net/vmxnet3.c
@@ -681,6 +681,8 @@ static void vmxnet3_process_tx_queue(VMXNET3State *s, int
qidx)
net_tx_pkt_unmap_frag_pci, PCI_DEVICE(s));
}
}
+
+ net_tx_pkt_reset(s->tx_pkt, net_tx_pkt_unmap_frag_pci, PCI_DEVICE(s));
}
static inline void
@@ -1159,7 +1161,6 @@ static void vmxnet3_deactivate_device(VMXNET3State *s)
{
if (s->device_active) {
VMW_CBPRN("Deactivating vmxnet3...");
- net_tx_pkt_reset(s->tx_pkt, net_tx_pkt_unmap_frag_pci, PCI_DEVICE(s));
net_tx_pkt_uninit(s->tx_pkt);
net_rx_pkt_uninit(s->rx_pkt);
s->device_active = false;
--
2.40.0
- [PATCH v4 13/48] hw/net/net_tx_pkt: Remove net_rx_pkt_get_l4_info, (continued)
- [PATCH v4 13/48] hw/net/net_tx_pkt: Remove net_rx_pkt_get_l4_info, Akihiko Odaki, 2023/04/26
- [PATCH v4 14/48] net/eth: Rename eth_setup_vlan_headers_ex, Akihiko Odaki, 2023/04/26
- [PATCH v4 15/48] e1000x: Share more Rx filtering logic, Akihiko Odaki, 2023/04/26
- [PATCH v4 16/48] e1000x: Take CRC into consideration for size check, Akihiko Odaki, 2023/04/26
- [PATCH v4 17/48] e1000x: Rename TcpIpv6 into TcpIpv6Ex, Akihiko Odaki, 2023/04/26
- [PATCH v4 18/48] e1000e: Always log status after building rx metadata, Akihiko Odaki, 2023/04/26
- [PATCH v4 19/48] igb: Always log status after building rx metadata, Akihiko Odaki, 2023/04/26
- [PATCH v4 20/48] igb: Remove goto, Akihiko Odaki, 2023/04/26
- [PATCH v4 21/48] igb: Read DCMD.VLE of the first Tx descriptor, Akihiko Odaki, 2023/04/26
- [PATCH v4 22/48] e1000e: Reset packet state after emptying Tx queue, Akihiko Odaki, 2023/04/26
- [PATCH v4 23/48] vmxnet3: Reset packet state after emptying Tx queue,
Akihiko Odaki <=
- [PATCH v4 25/48] igb: Share common VF constants, Akihiko Odaki, 2023/04/26
- [PATCH v4 24/48] igb: Add more definitions for Tx descriptor, Akihiko Odaki, 2023/04/26
- [PATCH v4 26/48] igb: Fix igb_mac_reg_init coding style alignment, Akihiko Odaki, 2023/04/26
- [PATCH v4 27/48] igb: Clear EICR bits for delayed MSI-X interrupts, Akihiko Odaki, 2023/04/26
- [PATCH v4 28/48] e1000e: Rename a variable in e1000e_receive_internal(), Akihiko Odaki, 2023/04/26
- [PATCH v4 29/48] igb: Rename a variable in igb_receive_internal(), Akihiko Odaki, 2023/04/26
- [PATCH v4 30/48] net/eth: Use void pointers, Akihiko Odaki, 2023/04/26
- [PATCH v4 31/48] net/eth: Always add VLAN tag, Akihiko Odaki, 2023/04/26
- [PATCH v4 32/48] hw/net/net_rx_pkt: Enforce alignment for eth_header, Akihiko Odaki, 2023/04/26