[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <VE1PR04MB667057A99CCF246A613155378B230@VE1PR04MB6670.eurprd04.prod.outlook.com>
Date: Tue, 23 Apr 2019 15:04:47 +0000
From: Vakul Garg <vakul.garg@....com>
To: Florian Westphal <fw@...len.de>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: RE: ipsec tunnel performance degrade
> -----Original Message-----
> From: Florian Westphal <fw@...len.de>
> Sent: Tuesday, April 23, 2019 11:27 AM
> To: Vakul Garg <vakul.garg@....com>
> Cc: Florian Westphal <fw@...len.de>; netdev@...r.kernel.org
> Subject: Re: ipsec tunnel performance degrade
>
> Vakul Garg <vakul.garg@....com> wrote:
> > > Do you use xfrm interfaces?
> >
> > I don't think so. I use setkey to create policies/SAs.
> > Can you please give me some hint about it?
>
> Then you're not using ipsec interfaces.
>
Instead of creating policies/SA using setkey, I shifted to using 'ip xfrm' commands.
With this, I get good performance improvement (20% better in one case).
Now xfrm_state_find() function is not taking much cpu.
Is this what you meant by 'xfrm interfaces'?
> > > > Further, perf show that a lot of atomic primitives such as
> > > > __ll_sc___cmpxchg_case_mb_4(),
> > > > __ll_sc_atomic_sub_return() are being invoked. On 16 core system,
> > > > they
> > > consume more than 30% of cpu.
> > >
> > > Thats not good, perhaps we should look at pcpu refcounts for the
> > > xfrm state structs.
> >
> > What else data can I collect?
>
> I have no further suggestions. I don't know yet when I will have time to look
> into refcnt optimizations.
>
> Idea would be to make them same as dev_hold/put.
I will try to address it. Can you provide some guidance? Thanks.
Powered by blists - more mailing lists