Date: Thu, 16 Apr 2009 22:14:59 +0200 From: Andre Oppermann <andre@freebsd.org> To: Renaud Lienhart <renaud@vmware.com> Cc: freebsd-net@freebsd.org Subject: Re: tcp_output() might generate invalid TSO frames Message-ID: <49E791C3.7060703@freebsd.org> In-Reply-To: <20090415084031.6d149fef@renaud-dev1> References: <20090415084031.6d149fef@renaud-dev1>
next in thread | previous in thread | raw e-mail | index | archive | help
Renaud Lienhart wrote: > Hi, > > We're having trouble virtualizing FreeBSD 7+ on ESX because of an issue > with the stack's TSO implementation: it sometimes generates TSO packets > whose payload size is actually smaller than the MSS. > > The faulty logic is described, along with a patch, in PR #132832. It > has been opened for a while now, without any apparent activity, which > is why I'm reaching the mailing list directly. > > ESX currently drops these packets as many physical nics are known to > choke on such frames, which effectively limits FreeBSD guests' > performance. Network cards should not choke on frames with TSO but less than one MSS worth of data. Though it's not useful to create such frames in the stack. > I don't know about other virtualization stacks' behavior. > > http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/132832 Your patch should fix the issue. I don't have time to commit it and to run the MFC process though. Maybe Kip or Jack can run that process. -- Andre
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49E791C3.7060703>