Re: [patch net-next 08/26] net: add info struct for LAG changeupper

Jiri Pirko
2015-12-02T11:06:50Z

Wed, Dec 02, 2015 at 11:59:59AM CET, nikolay@cumulusnetworks.com wrote:
>On 12/01/2015 02:48 PM, Jiri Pirko wrote:
>> From: Jiri Pirko <jiri@mellanox.com>
>>
>> This struct will be shared by bonding and team to pass internal
>> information to notifier listeners.
>>
>> Signed-off-by: Jiri Pirko <jiri@mellanox.com>
>> ---
>> include/linux/netdevice.h | 13 +++++++++++++
>> 1 file changed, 13 insertions(+)
>>
>> diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
>> index a55be5b..7ea3e83 100644
>> --- a/include/linux/netdevice.h
>> +++ b/include/linux/netdevice.h
>> @@ -2108,6 +2108,19 @@ struct pcpu_sw_netstats {
>> #define netdev_alloc_pcpu_stats(type) \
>> __netdev_alloc_pcpu_stats(type, GFP_KERNEL);
>>
>> +enum netdev_lag_tx_type {
>> + NETDEV_LAG_TX_TYPE_UNKNOWN,
>> + NETDEV_LAG_TX_TYPE_RANDOM,
>> + NETDEV_LAG_TX_TYPE_BROADCAST,
>> + NETDEV_LAG_TX_TYPE_ROUNDROBIN,
>> + NETDEV_LAG_TX_TYPE_ACTIVEBACKUP,
>> + NETDEV_LAG_TX_TYPE_HASH,
>> +};
>
>There're 2 more modes supported by the bonding which aren't supported by team,
>RLB and TLB. Since you've included _RANDOM, for completeness you can add
>these, too.

For now it is "NETDEV_LAG_TX_TYPE_UNKNOWN". If needed to be identified
by driver, it can be easily added.

>
>> +
>> +struct netdev_lag_upper_info {
>> + enum netdev_lag_tx_type tx_type;
>> +};
>> +
>> #include <linux/notifier.h>
>>
>> /* netdevice notifier chain. Please remember to update the rtnetlink
>>
>