[Bridge] [PATCH net-next v2 0/9] net: bridge: convert bool options to bits

David Miller davem at davemloft.net
Wed Sep 26 17:04:47 UTC 2018


From: Nikolay Aleksandrov <nikolay at cumulusnetworks.com>
Date: Wed, 26 Sep 2018 17:04:03 +0300

> On 26/09/18 17:00, Nikolay Aleksandrov wrote:
>> Hi,
>> A lot of boolean bridge options have been added around the net_bridge
>> structure resulting in holes and more importantly different cache lines
>> that need to be fetched in the fast path. This set moves all of those
>> to bits in a bitfield which resides in a hot cache line thus reducing
>> the size of net_bridge, the number of holes and the number of cache
>> lines needed for the fast path.
>> The set is also sent in preparation for new boolean options to avoid
>> spreading them in the structure and making new holes.
>> One nice side-effect is that we avoid potential race conditions by using
>> the bitops since some of the options were bits being directly set in
>> parallel risking hard to debug issues (has_ipv6_addr).
>> 
>> Before:
>>  size: 1184, holes: 8, sum holes: 30
>> After:
>>  size: 1160, holes: 3, sum holes: 7
>> 
>> Patch 01 is a trivial style fix
>> Patch 02 adds the new options bitfield and converts the vlan boolean
>>          options to bits
>> Patches 03-08 convert the rest of the boolean options to bits
>> Patch 09 re-arranges a few fields in net_bridge to further reduce size
>> 
>> v2: patch 09: remove the comment about offload_fwd_mark in net_bridge and
>>     leave it in the last 4 bytes, thanks to Ido for spotting it
> 
> And obviously it's not in the last 4 bytes, but that's fine. That
> must've said just: "leave it where it is now".

I fixed up the wording and applied this series, looks great!

Thanks!


More information about the Bridge mailing list