From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Dumazet Subject: Re: [PATCH net-next 02/13] sk_buff: add skb extension infrastructure Date: Thu, 13 Dec 2018 03:16:25 -0800 Message-ID: <2f1509fa-649f-cfc8-7c41-94cd9979ccae@gmail.com> References: <20181210145006.19098-3-fw@strlen.de> <4a43ca01-d09b-71e8-18e1-9a5707787ae0@gmail.com> <20181212184446.gyjwbwoyzhrk7kxw@breakpoint.cc> <7906a8d9-c2f9-0883-3d13-5ef38e53f10c@gmail.com> <20181212205236.sja4fw4sf5egtkyw@breakpoint.cc> <8ae68a38-c981-f317-39b1-1092e7efbeeb@gmail.com> <20181213092706.fq4mulrp73r2wpq2@breakpoint.cc> <46920c3f-564d-e9ef-f714-22f96239736d@gmail.com> <20181213103918.rfh3battqdn7u6b6@breakpoint.cc> <20181213110347.2lopxrbmseiuum7n@breakpoint.cc> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: netdev@vger.kernel.org, cpaasch@apple.com, peter.krystad@intel.com, mathew.j.martineau@linux.intel.com To: Florian Westphal , Eric Dumazet Return-path: Received: from mail-wm1-f65.google.com ([209.85.128.65]:52395 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728067AbeLMLQa (ORCPT ); Thu, 13 Dec 2018 06:16:30 -0500 Received: by mail-wm1-f65.google.com with SMTP id m1so1932485wml.2 for ; Thu, 13 Dec 2018 03:16:28 -0800 (PST) In-Reply-To: <20181213110347.2lopxrbmseiuum7n@breakpoint.cc> Content-Language: en-US Sender: netdev-owner@vger.kernel.org List-ID: On 12/13/2018 03:03 AM, Florian Westphal wrote: > Eric Dumazet wrote: >> >> >> On 12/13/2018 02:39 AM, Florian Westphal wrote: >>> >>> Thats whats done in the MPTCP out-of-tree implementation, but I don't >>> think its needed. >>> >>> It could just delete the extension before ->queue_xmit() AFAIU. >> >> So, cloning would do an refcount_inc(), and deleting the extension would do an refcount_dec_and_test() ? >> >> That is what I called an extra pair of atomic operations. > > If it replaces 1:1 current mptcp skb->private out-of-tree storage, then > yes. > One day I will write a book on the number of atomic operations done on a TCP sendmsg() system call :/