Thread (29 messages) 29 messages, 4 authors, 2008-06-15

Re: [PATCH 0/2] Disable forwarding of LRO skbs

From: Ben Hutchings <hidden>
Date: 2008-05-01 11:03:47

Herbert Xu wrote:
Ben Hutchings [off-list ref] wrote:
quoted
Large Receive Offload (LRO) destroys packet headers that should be
preserved when forwarding.  Currently it also triggers a BUG() or WARN()
in skb_gso_segment().  We should disable it wherever forwarding is
enabled, and discard LRO skbs with a warning if it is turned back on.
I don't think forwarding GSO packets is bad per se.  However,
doing LRO on forwarded traffic is broken because it breaks the
end-to-end connection.  So I agree that we should detect this
but preferrably not based on the GSO flag as LRO isn't the only
source of GSO traffic and the rest of them can be forwarded just
fine.
My understanding is that at the points I'm adding the check, we're only
considering received skbs and gso_size will only be set if LRO was used.

I was going to raise the virtualisation issue because Kieran has been
in contact with XenSource over this and they believed LRO was not a
problem in Xen.  So long as the bridges in dom0 each connect a single
physical interface to other domains running paravirtualised Linux, this
is probably true.  But I have no idea how to "whitelist" this sort of
case.

Ben.

-- 
Ben Hutchings, Senior Software Engineer, Solarflare Communications
Not speaking for my employer; that's the marketing department's job.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help