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

Nikolay Aleksandrov
2015-12-02T11:07:54Z

On 12/02/2015 12:06 PM, Jiri Pirko wrote:
> 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.
>

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