qemu-stable
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH for-7.2 v3 0/3] rtl8139: honor large send MSS value


From: Stefan Hajnoczi
Subject: [PATCH for-7.2 v3 0/3] rtl8139: honor large send MSS value
Date: Thu, 17 Nov 2022 11:55:51 -0500

v3:
- Add Patch 1 to avoid clobbering tx descriptor bits
- Add Patch 2 to avoid confusing tx command modes
- Exclude IP and TCP headers from large send MSS value

The rtl8139 large send offload currently does not honor the MSS value provided
by the driver. This is a problem especially when the MTU is small because IP
fragmentation occurs and leads to poor performance.

These patches make use of the large send MSS value.

I have done basic testing by running the following Python code inside the
guest:

  import socket
  s = socket.socket()
  s.connect(('10.0.2.2', 1234))
  buf = b'A' * 4096
  s.send(buf)

The device sees a 4150 byte tx descriptor that results in the transmission of 3
Ethernet frames with sizes of 1514, 1514, and 1230 bytes when the large send
MSS value is 1460 bytes.

Stefan Hajnoczi (3):
  rtl8139: avoid clobbering tx descriptor bits
  rtl8139: keep Tx command mode 0 and 1 separate
  rtl8139: honor large send MSS value

 hw/net/rtl8139.c | 47 ++++++++++++++++++++++++-----------------------
 1 file changed, 24 insertions(+), 23 deletions(-)

-- 
2.38.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]