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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.