[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1481131924.4930.40.camel@edumazet-glaptop3.roam.corp.google.com>
Date: Wed, 07 Dec 2016 09:32:04 -0800
From: Eric Dumazet <eric.dumazet@...il.com>
To: David Laight <David.Laight@...LAB.COM>
Cc: 'Paolo Abeni' <pabeni@...hat.com>,
David Miller <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Willem de Bruijn <willemb@...gle.com>
Subject: Re: [PATCH] net/udp: do not touch skb->peeked unless really needed
On Wed, 2016-12-07 at 17:09 +0000, David Laight wrote:
> From: Paolo Abeni
> > Sent: 06 December 2016 17:08
> ...
> > @@ -79,6 +82,9 @@ struct udp_sock {
> > int (*gro_complete)(struct sock *sk,
> > struct sk_buff *skb,
> > int nhoff);
> > +
> > + /* since we are prone to drops, avoid dirtying any sk cacheline */
> > + atomic_t drops ____cacheline_aligned_in_smp;
> > };
>
> Isn't that likely to create a large hole on systems with large cache lines.
> (Same as any other use of ____cacheline_aligned_in_smp.)
Yes, I would like to avoid that, unless we come to the conclusion it is
absolutely needed.
I feel that we could simply use a pointer, and allocate memory on
demand, since many sockets do not ever experience a drop.
The pointer could stay in a read mostly section.
We even could use per cpu or node counter for some heavy drop cases.
Powered by blists - more mailing lists