From: Oliver Hartkopp <socketcan@hartkopp.net>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: David Miller <davem@davemloft.net>,
jhautbois@gmail.com, netdev@vger.kernel.org
Subject: Re: [PATCH] net: remove skb_orphan_try()
Date: Fri, 15 Jun 2012 09:15:59 +0200 [thread overview]
Message-ID: <4FDAE12F.5000804@hartkopp.net> (raw)
In-Reply-To: <1339692164.7491.64.camel@edumazet-glaptop>
On 14.06.2012 18:42, Eric Dumazet wrote:
>
> [PATCH] net: remove skb_orphan_try()
>
> Orphaning skb in dev_hard_start_xmit() makes bonding behavior
> unfriendly for applications sending big UDP bursts : Once packets
> pass the bonding device and come to real device, they might hit a full
> qdisc and be dropped. Without orphaning, the sender is automatically
> throttled because sk->sk_wmemalloc reaches sk->sk_sndbuf (assuming
> sk_sndbuf is not too big)
>
> We could try to defer the orphaning adding another test in
> dev_hard_start_xmit(), but all this seems of little gain,
> now that BQL tends to make packets more likely to be parked
> in Qdisc queues instead of NIC TX ring, in cases where performance
> matters.
>
> Reverts commits :
> fc6055a5ba31 net: Introduce skb_orphan_try()
> 87fd308cfc6b net: skb_tx_hash() fix relative to skb_orphan_try()
> and removes SKBTX_DRV_NEEDS_SK_REF flag
>
> Reported-and-bisected-by: Jean-Michel Hautbois <jhautbois@gmail.com>
> Signed-off-by: Eric Dumazet <edumazet@google.com>
> ---
> include/linux/skbuff.h | 7 ++-----
> net/can/raw.c | 3 ---
> net/core/dev.c | 23 +----------------------
> net/iucv/af_iucv.c | 1 -
> 4 files changed, 3 insertions(+), 31 deletions(-)
>
As i originally introduced the SKBTX_DRV_NEEDS_SK_REF flag to preserve the skb
packet flow for CAN i'm pretty happy to see that skb_orphan_try() goes away
again :-)
I also tested this patch with my test-apps that would detect these problems.
Tested-by: Oliver Hartkopp <socketcan@hartkopp.net>
Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
Tnx Eric!
Regards,
Oliver
next prev parent reply other threads:[~2012-06-15 7:16 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-14 8:58 Regression on TX throughput when using bonding Jean-Michel Hautbois
2012-06-14 9:21 ` Eric Dumazet
2012-06-14 9:40 ` Jean-Michel Hautbois
2012-06-14 9:50 ` Eric Dumazet
2012-06-14 10:00 ` David Miller
2012-06-14 10:07 ` Eric Dumazet
2012-06-14 10:31 ` David Miller
2012-06-14 16:42 ` [PATCH] net: remove skb_orphan_try() Eric Dumazet
2012-06-15 7:15 ` Oliver Hartkopp [this message]
2012-06-15 22:31 ` David Miller
2012-06-14 10:15 ` Regression on TX throughput when using bonding Jean-Michel Hautbois
2012-06-14 14:14 ` Jean-Michel Hautbois
2012-06-14 14:29 ` Eric Dumazet
2012-06-14 15:43 ` Jean-Michel Hautbois
2012-06-14 17:46 ` Rick Jones
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4FDAE12F.5000804@hartkopp.net \
--to=socketcan@hartkopp.net \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=jhautbois@gmail.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).