Re: [Linuxarm] [PATCH RFC v4 0/3] Some optimization for lockless qdisc

From: Vladimir Oltean
Date: Thu May 20 2021 - 09:47:02 EST


Hi Yunsheng,

On Thu, May 20, 2021 at 05:45:14PM +0800, Yunsheng Lin wrote:
> On 2021/5/20 17:27, Yunsheng Lin wrote:
> > Patch 1: remove unnecessary seqcount operation.
> > Patch 2: implement TCQ_F_CAN_BYPASS.
> > Patch 3: remove qdisc->empty.
> >
> > RFC v4: Use STATE_MISSED and STATE_DRAINING to indicate non-empty
> > qdisc, and add patch 1 and 3.
>
> @Vladimir, Ahmad
> It would be good to run your testcase to see if there are any
> out of order for this version, because this version has used
> STATE_MISSED and STATE_DRAINING to indicate non-empty qdisc,
> thanks.
>
> It is based on newest net branch with qdisc stuck patchset.
>
> Some performance data as below:
>
> pktgen + dummy netdev:
> threads without+this_patch with+this_patch delta
> 1 2.60Mpps 3.18Mpps +22%
> 2 3.84Mpps 5.72Mpps +48%
> 4 5.52Mpps 5.52Mpps +0.0%
> 8 2.77Mpps 2.81Mpps +1.4%
> 16 2.24Mpps 2.29Mpps +2.2%
>
> IP forward testing: 1.05Mpps increases to 1.15Mpps

I will start the regression test with the flexcan driver on LS1028A and
let you know tomorrow or so if there is any TX reordering issue.