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

2015-12-01 Thread Jiri Pirko
From: Jiri Pirko 

This struct will be shared by bonding and team to pass internal
information to notifier listeners.

Signed-off-by: Jiri Pirko 
---
 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,
+};
+
+struct netdev_lag_upper_info {
+   enum netdev_lag_tx_type tx_type;
+};
+
 #include 
 
 /* netdevice notifier chain. Please remember to update the rtnetlink
-- 
1.9.3

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

2015-12-02 Thread Nikolay Aleksandrov
On 12/01/2015 02:48 PM, Jiri Pirko wrote:
> From: Jiri Pirko 
> 
> This struct will be shared by bonding and team to pass internal
> information to notifier listeners.
> 
> Signed-off-by: Jiri Pirko 
> ---
>  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.

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

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

2015-12-02 Thread Jiri Pirko
Wed, Dec 02, 2015 at 11:59:59AM CET, niko...@cumulusnetworks.com wrote:
>On 12/01/2015 02:48 PM, Jiri Pirko wrote:
>> From: Jiri Pirko 
>> 
>> This struct will be shared by bonding and team to pass internal
>> information to notifier listeners.
>> 
>> Signed-off-by: Jiri Pirko 
>> ---
>>  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 
>>  
>>  /* netdevice notifier chain. Please remember to update the rtnetlink
>> 
>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

2015-12-02 Thread Nikolay Aleksandrov
On 12/02/2015 12:06 PM, Jiri Pirko wrote:
> Wed, Dec 02, 2015 at 11:59:59AM CET, niko...@cumulusnetworks.com wrote:
>> On 12/01/2015 02:48 PM, Jiri Pirko wrote:
>>> From: Jiri Pirko 
>>>
>>> This struct will be shared by bonding and team to pass internal
>>> information to notifier listeners.
>>>
>>> Signed-off-by: Jiri Pirko 
>>> ---
>>>  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 
>>>  
>>>  /* netdevice notifier chain. Please remember to update the rtnetlink
>>>
>>

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

2015-12-02 Thread Jiri Pirko
Wed, Dec 02, 2015 at 12:07:51PM CET, niko...@cumulusnetworks.com wrote:
>On 12/02/2015 12:06 PM, Jiri Pirko wrote:
>> Wed, Dec 02, 2015 at 11:59:59AM CET, niko...@cumulusnetworks.com wrote:
>>> On 12/01/2015 02:48 PM, Jiri Pirko wrote:
 From: Jiri Pirko 

 This struct will be shared by bonding and team to pass internal
 information to notifier listeners.

 Signed-off-by: Jiri Pirko 
 ---
  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 ? :-)

RANDOM is easy to handle as it is obvious what it is doing. That cannot
be said about *LB. That is the reason I left those out for now.


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

>>>
>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html