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

From: Nikolay Aleksandrov <[email-masked]>
Date: Wed, 2 Dec 2015 12:07:51 +0100

On 12/02/2015 12:06 PM, Jiri Pirko wrote:
> Wed, Dec 02, 2015 at 11:59:59AM CET, [email-masked] wrote:
>> On 12/01/2015 02:48 PM, Jiri Pirko wrote:
>>> From: Jiri Pirko <[email-masked]>
>>>
>>> This struct will be shared by bonding and team to pass internal
>>> information to notifier listeners.
>>>
>>> Signed-off-by: Jiri Pirko <[email-masked]>
>>> ---
>>>  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.
> 

Out of curiosity, is _RANDOM needed to be identified by the driver ? :-)

> 
>>
>>> +
>>> +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
>>>
>>