Description of problem: boot a rhel5.9 64bit guest with e1000 or virtio NIC, disable/enable the 'TX' via 'ethtool -K eth0 tx off/on' in guest, and then transfer a big file between guest and anther host by scp, and capture packet size by tcpdump, but find that no mater the TX is on or off, all cksum listenned by "tcpdump" were "correct...". the virtio/e1000 nic are the same results. Version-Release number of selected component (if applicable): host info: # uname -r && rpm -q kvm 2.6.18-333.el5 kvm-83-258.el5 guest info: # uname -r 2.6.18-333.el5 How reproducible: almost every time Steps to Reproduce: 1.boot a guest with the virtio or e1000 nic. eg: # /usr/libexec/qemu-kvm -m 2G -smp 2,cores=2,threads=1,sockets=1 -M rhel5.6.0 -cpu qemu64,+sse2 -name virtio_nic_test -drive file=/home/RHEL-Server-5.9-64-virtio.qcow2,format=qcow2,media=disk,if=ide,cache=none,werror=stop,boot=on -net nic,vlan=0,model=e1000,macaddr=08:2E:5F:0A:0D:1A -net tap,sndbuf=0,vlan=0,script=/etc/qemu-ifup,downscript=no -uuid `uuidgen` -monitor unix:/tmp/virt-nic-sluo,server,nowait -spice port=5931,disable-ticketing -qxl 1 -usbdevice tablet -soundhw ac97 -no-hpet -rtc-td-hack -no-kvm-pit-reinjection -monitor stdio -boot c 2.turn on/off TX and check the TX status in guest. # ethtool -K eth0 tx on/off # ethtool -k eth0 3.scp a big file from guest to anther host. 4.capture packet size by tcpdump in the guest. # tcpdump -vvv -i eth0 Actual results: 1).turn the TX on, after the step 4, # ethtool -K eth0 tx on # ethtool -k eth0 Offload parameters for eth0: Cannot get device udp large send offload settings: Operation not supported rx-checksumming: on tx-checksumming: on scatter-gather: off tcp segmentation offload: off udp fragmentation offload: off generic segmentation offload: off generic-receive-offload: off ... 15:19:51.095530 IP (tos 0x0, ttl 64, id 39640, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40249: ., cksum 0xc2a1 (correct), 28465:28465(0) ack 68170272 win 1267 <nop,nop,timestamp 164822716 1709393> 15:19:51.095567 IP (tos 0x0, ttl 64, id 39641, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40249: ., cksum 0xb751 (correct), 28465:28465(0) ack 68173168 win 1267 <nop,nop,timestamp 164822716 1709393> 15:19:51.095571 IP (tos 0x0, ttl 64, id 39642, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40249: ., cksum 0xac01 (correct), 28465:28465(0) ack 68176064 win 1267 <nop,nop,timestamp 164822716 1709393> 15:19:51.095690 IP (tos 0x0, ttl 64, id 39645, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40249: ., cksum 0x8dc0 (correct), 28465:28465(0) ack 68183808 win 1267 <nop,nop,timestamp 164822717 1709393> ... 2).turn the TX off, after the step 4, # ethtool -K eth0 tx off # ethtool -k eth0 Offload parameters for eth0: Cannot get device udp large send offload settings: Operation not supported rx-checksumming: on tx-checksumming: off scatter-gather: off tcp segmentation offload: off udp fragmentation offload: off generic segmentation offload: off generic-receive-offload: off ... 15:21:44.531913 IP (tos 0x0, ttl 64, id 19979, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40250: ., cksum 0x2549 (correct), 88849:88849(0) ack 216437168 win 5635 <nop,nop,timestamp 164936152 1822829> 15:21:44.531918 IP (tos 0x0, ttl 64, id 19980, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40250: ., cksum 0x19f9 (correct), 88849:88849(0) ack 216440064 win 5635 <nop,nop,timestamp 164936152 1822829> 15:21:44.531920 IP (tos 0x0, ttl 64, id 19981, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40250: ., cksum 0x0ea9 (correct), 88849:88849(0) ack 216442960 win 5635 <nop,nop,timestamp 164936152 1822829> 15:21:44.531984 IP (tos 0x0, ttl 64, id 19982, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40250: ., cksum 0x0359 (correct), 88849:88849(0) ack 216445856 win 5635 <nop,nop,timestamp 164936152 1822829> 15:21:44.531988 IP (tos 0x0, ttl 64, id 19983, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40250: ., cksum 0xf808 (correct), 88849:88849(0) ack 216448752 win 5635 <nop,nop,timestamp 164936152 1822829> 15:21:44.531991 IP (tos 0x0, ttl 64, id 19984, offset 0, flags [DF], proto: TCP (6), length: 52) 10.66.9.242.ssh > 10.66.11.83.40250: ., cksum 0xf068 (correct), 88849:88849(0) ack 216450704 win 5635 <nop,nop,timestamp 164936152 1822829> ... Expected results: all cksum listenned by "tcpdump" should be "(incorrect...)" if "tx" in "on", while "tx" in "off" it be "(correct)". Additional info:
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux release for currently deployed products. This request is not yet committed for inclusion in a release.
(In reply to comment #0) > Add some important information about this bug. > Actual results: > 1).turn the TX on, after the step 4, > when test this scenario, the 'TX' of eth0 and switch for the host were also turned on. # ethtool -K eth0 tx on # ethtool -K switch tx on # ethtool -k eth0 ... tx-checksumming: on ... # ethtool -k switch ... tx-checksumming: on ... > 2).turn the TX off, after the step 4, > when test this scenario, the 'TX' of eth0 and switch for the host were also turned off. # ethtool -K eth0 tx off # ethtool -K switch tx off # ethtool -k eth0 ... tx-checksumming: off ... # ethtool -k switch ... tx-checksumming: off ...
Hi Sibiao, does rhel5.9 host has the same behavior? If host works well, could you please check if this is a regression compared with rhel5.8 guest?
(In reply to comment #3) > Hi Sibiao, does rhel5.9 host has the same behavior? If host works well, > could you please check if this is a regression compared with rhel5.8 guest? ok, i will check it tommorow, thx for your kindly reminds.
Hi all, I check this issue on the rhel5.9 host, it has the same behavior, no mater the TX is on or off, all cksum listenned by "tcpdump" were "correct...". btw, rhel5.8 guest also can hit this issue, this is not a regression bug. Above all, move this issue to the kernel component. Best wish. sluo
This request was not resolved in time for the current release. Red Hat invites you to ask your support representative to propose this request, if still desired, for consideration in the next release of Red Hat Enterprise Linux.
This bug/component is not included in scope for RHEL-5.11.0 which is the last RHEL5 minor release. This Bugzilla will soon be CLOSED as WONTFIX (at the end of RHEL5.11 development phase (Apr 22, 2014)). Please contact your account manager or support representative in case you need to escalate this bug.
(In reply to RHEL Product and Program Management from comment #7) > This bug/component is not included in scope for RHEL-5.11.0 which is the > last RHEL5 minor release. This Bugzilla will soon be CLOSED as WONTFIX (at > the end of RHEL5.11 development phase (Apr 22, 2014)). Please contact your > account manager or support representative in case you need to escalate this > bug. Checked it with kernel and kvm QE POV that will not have function affect, so agree to close as WONTFIX. Please correct me if any mistake, thanks. Best Regards, sluo
Thanks, closing WONTFIX.