Re: CFT: if_bridge performance improvements

From: Kristof Provost <kp_at_FreeBSD.org>
Date: Wed, 22 Apr 2020 10:45:49 +0200
On 22 Apr 2020, at 10:20, Xin Li wrote:
> Hi,
>
> On 4/14/20 02:51, Kristof Provost wrote:
>> Hi,
>>
>> Thanks to support from The FreeBSD Foundation I’ve been able to 
>> work on
>> improving the throughput of if_bridge.
>> It changes the (data path) locking to use the NET_EPOCH 
>> infrastructure.
>> Benchmarking shows substantial improvements (x5 in test setups).
>>
>> This work is ready for wider testing now.
>>
>> It’s under review here: https://reviews.freebsd.org/D24250
>>
>> Patch for CURRENT: https://reviews.freebsd.org/D24250?download=true
>> Patches for stable/12: 
>> https://people.freebsd.org/~kp/if_bridge/stable_12/
>>
>> I’m not currently aware of any panics or issues resulting from 
>> these
>> patches.
>
> I have observed the following panic with latest stable/12 after 
> applying
> the stable_12 patchset, it appears like a race condition related NULL
> pointer deference, but I haven't took a deeper look yet.
>
> The box have 7 igb(4) NICs, with several bridge and VLAN configured
> acting as a router.  Please let me know if you need additional
> information; I can try -CURRENT as well, but it would take some time 
> as
> the box is relatively slow (it's a ZFS based system so I can create a
> separate boot environment for -CURRENT if needed, but that would take
> some time as I might have to upgrade the packages, should there be any
> ABI breakages).
>
Thanks for the report. I don’t immediately see how this could happen.

Are you running an L2 firewall on that bridge by any chance? An earlier 
version of the patch had issues with a stray unlock in that code path.

Best regards,
Kristof
Received on Wed Apr 22 2020 - 06:45:55 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:23 UTC