[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1461696598.5535.35.camel@edumazet-glaptop3.roam.corp.google.com>
Date: Tue, 26 Apr 2016 11:49:58 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: Neil Horman <nhorman@...driver.com>
Cc: netdev@...r.kernel.org, Jamal Hadi Salim <jhs@...atatu.com>,
"David S. Miller" <davem@...emloft.net>,
netem@...ts.linux-foundation.org
Subject: Re: [PATCH] netem: Segment GSO packets on enqueue.
On Tue, 2016-04-26 at 13:43 -0400, Neil Horman wrote:
> This was recently reported to me, and reproduced on the latest net kernel, when
> attempting to run netperf from a host that had a netem qdisc attached to the
> egress interface:
..
> The problem occurs because netem is not prepared to handle GSO packets (as it
> uses skb_checksum_help in its enqueue path, which cannot manipulate these
> frames).
>
> The solution I think is to simply segment the skb in a simmilar fashion to the
> way we do in __dev_queue_xmit (via validate_xmit_skb), except here we always
> segment, instead of only when the interface needs us to do it. This allows
> netem to properly drop/mangle/pass/etc the correct percentages of frames as per
> its qdisc configuration, and avoid failing its checksum operations
>
> tested successfully by myself on the latest net kernel, to whcih this applies
>
> Signed-off-by: Neil Horman <nhorman@...driver.com>
> CC: Jamal Hadi Salim <jhs@...atatu.com>
> CC: "David S. Miller" <davem@...emloft.net>
> CC: netem@...ts.linux-foundation.org
> ---
> net/sched/sch_netem.c | 34 +++++++++++++++++++++++++++++++++-
> 1 file changed, 33 insertions(+), 1 deletion(-)
This is not correct.
I want my TSO packets being still TSO after netem traversal.
Some of us use netem at 40Gbit speed ;)
Powered by blists - more mailing lists