Bug 443452 - TCP traffic is dropped if TX checksum flag is enabled in guest
Summary: TCP traffic is dropped if TX checksum flag is enabled in guest
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: xenner
Version: rawhide
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Gerd Hoffmann
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-04-21 16:47 UTC by Daniel Berrangé
Modified: 2008-05-13 09:09 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-05-13 09:09:59 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Xenstore data (3.78 KB, text/plain)
2008-04-21 16:48 UTC, Daniel Berrangé
no flags Details
netbackd log file (17.77 KB, text/plain)
2008-04-21 16:48 UTC, Daniel Berrangé
no flags Details
tcpdump log when tx is enabled (and traffic fails) (17.08 KB, text/plain)
2008-04-21 16:49 UTC, Daniel Berrangé
no flags Details
tcpdump log when tx is disabled (and traffic succeeds) (47.08 KB, text/plain)
2008-04-21 16:49 UTC, Daniel Berrangé
no flags Details

Description Daniel Berrangé 2008-04-21 16:47:39 UTC
Description of problem:
Booting up a F8 guest, the eth0 device has following settings by default:


# ethtool -k eth0
Offload parameters for eth0:
rx-checksumming: off
tx-checksumming: on
scatter-gather: off
tcp segmentation offload: off
udp fragmentation offload: off
generic segmentation offload: off


If I try to 'wget http://google.com' the connections all fail - some, but not
all, packets are not replied to.

If I turn off checksum offload with

  ethtool -K eth0 tx off

then, everything works fine. This blocks install of new guests becasue they have
TX checksum enabled by default.

Version-Release number of selected component (if applicable):
Guest kernel: 2.6.21-2950.fc8xen
xenner-0.29-1.fc9.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Setup guest config to use libvirt 'default' network, ie connect the TAP
device to 'virbr0', which is connected to outside world with NAT.
1. Boot the guest 
2. Run wget http://google.com
3.
  
Actual results:
No reply

Expected results:
Fetches index.html

Additional info:

Comment 1 Daniel Berrangé 2008-04-21 16:48:34 UTC
Created attachment 303167 [details]
Xenstore data

Comment 2 Daniel Berrangé 2008-04-21 16:48:57 UTC
Created attachment 303168 [details]
netbackd log file

Comment 3 Daniel Berrangé 2008-04-21 16:49:28 UTC
Created attachment 303169 [details]
tcpdump log when tx is enabled (and traffic fails)

Comment 4 Daniel Berrangé 2008-04-21 16:49:45 UTC
Created attachment 303170 [details]
tcpdump log when tx is disabled (and traffic succeeds)

Comment 5 Gerd Hoffmann 2008-04-22 07:57:56 UTC
Ok, can reproduce it, investigating ...

Comment 6 Gerd Hoffmann 2008-04-22 13:12:26 UTC
Fixed: http://hg.et.redhat.com/kvm/xenner?cs=34f0d0f825f1

Comment 7 Gerd Hoffmann 2008-04-22 13:25:52 UTC
https://koji.fedoraproject.org/koji/taskinfo?taskID=574802
(scratch build, seems cvs isn't fully up'n'running yet).

Comment 8 Gerd Hoffmann 2008-04-23 11:20:22 UTC
http://koji.fedoraproject.org/packages/xenner/0.29/2.fc9/
please retest

Comment 9 Daniel Berrangé 2008-05-09 21:29:49 UTC
Confirm this works now - although on i386 Xenner fails with a exception about
missing instruction emulation. Xenner 0.33 works though, so be good to get that
pushed to F9 updates

Comment 10 Gerd Hoffmann 2008-05-13 09:09:59 UTC
Thanks for testing.

F10 has 0.33 already.  F9 update is planned but I think I'll address the libvirt
integration issues first ...


Note You need to log in before you can comment on or make changes to this bug.