Subject: Re: [RFC net-next] net ipv6: convert fib6_table rwlock to a percpu lock

From: Stephen Hemminger <[email-masked]>
Date: Tue, 1 Aug 2017 07:45:28 -0700

On Mon, 31 Jul 2017 19:57:04 -0700
Shaohua Li <[email-masked]> wrote:

> On Mon, Jul 31, 2017 at 04:10:07PM -0700, Stephen Hemminger wrote:
> > On Mon, 31 Jul 2017 10:18:57 -0700
> > Shaohua Li <[email-masked]> wrote:
> >   
> > > From: Shaohua Li <[email-masked]>
> > > 
> > > In a syn flooding test, the fib6_table rwlock is a significant
> > > bottleneck. While converting the rwlock to rcu sounds straighforward,
> > > but is very challenging if it's possible. A percpu spinlock is quite
> > > trival for this problem since updating the routing table is a rare
> > > event. In my test, the server receives around 1.5 Mpps in syn flooding
> > > test without the patch in a dual sockets and 56-CPU system. With the
> > > patch, the server receives around 3.8Mpps, and perf report doesn't show
> > > the locking issue.
> > > 
> > > Cc: Wei Wang <[email-masked]>  
> > 
> > You just reinvented brlock...

It was a long time ago (2.4) that brlock came in
 https://lwn.net/Articles/378781/

I removed it in 2.5.64 or so.