[dpdk-dev] [PATCH] net/bonding: not handle vlan slow packet

2016-11-04 Thread linhaifeng
Hi,all

please ignore the patch which title is "net/bonding: not handle vlan slow 
packet",
I will send another one.

? 2016/11/1 20:32, linhaifeng ??:
> ? 2016/11/1 18:46, Ferruh Yigit ??:
>> Hi Haifeng,
>>
>> On 10/31/2016 3:52 AM, linhaifeng wrote:
>>> From: Haifeng Lin 
>>>
>>> if rx vlan offload is enable we should not handle vlan slow
>>> packets too.
>>>
>>> Signed-off-by: Haifeng Lin 
>>> ---
>>>  drivers/net/bonding/rte_eth_bond_pmd.c | 3 ++-
>>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c 
>>> b/drivers/net/bonding/rte_eth_bond_pmd.c
>>> index 09ce7bf..ca17898 100644
>>> --- a/drivers/net/bonding/rte_eth_bond_pmd.c
>>> +++ b/drivers/net/bonding/rte_eth_bond_pmd.c
>>> @@ -169,7 +169,8 @@ bond_ethdev_rx_burst_8023ad(void *queue, struct 
>>> rte_mbuf **bufs,
>>> /* Remove packet from array if it is slow packet or 
>>> slave is not
>>>  * in collecting state or bondign interface is not in 
>>> promiscus
>>>  * mode and packet address does not match. */
>>> -   if (unlikely(hdr->ether_type == ether_type_slow_be ||
>>> +   if (unlikely((hdr->ether_type == ether_type_slow_be &&
>>> +   !bufs[j]->vlan_tci) ||
>>> !collecting || (!promisc &&
>>> !is_multicast_ether_addr(&hdr->d_addr) 
>>> &&
>>> !is_same_ether_addr(&bond_mac, 
>>> &hdr->d_addr {
>>>
>>
>> There are a few version of this patch, I guess this one is the correct
>> one, can you please confirm?
>> Also this one supersede following one, right?
>> http://dpdk.org/dev/patchwork/patch/16840/
> 
> yes?this is
> 
>>
>> It helps a lot if you use versioning in the patches [PATCH -vN] and add
>> a description of changes in commit log (after "---") between patch versions.
>>
> 
> ok?i think should not send patch so worry??
> 
> I have a question to ask?
> Is there any other packets' type also is 0x8809 except with lacp packets?
> I saw some guests try to use this type to check link status between VM
> but droped by lacp bond recv function.
> 
> 
>> Thanks,
>> ferruh
>>
>> .
>>
> 




[dpdk-dev] [PATCH] net/bonding: not handle vlan slow packet

2016-11-01 Thread linhaifeng
? 2016/11/1 18:46, Ferruh Yigit ??:
> Hi Haifeng,
> 
> On 10/31/2016 3:52 AM, linhaifeng wrote:
>> From: Haifeng Lin 
>>
>> if rx vlan offload is enable we should not handle vlan slow
>> packets too.
>>
>> Signed-off-by: Haifeng Lin 
>> ---
>>  drivers/net/bonding/rte_eth_bond_pmd.c | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c 
>> b/drivers/net/bonding/rte_eth_bond_pmd.c
>> index 09ce7bf..ca17898 100644
>> --- a/drivers/net/bonding/rte_eth_bond_pmd.c
>> +++ b/drivers/net/bonding/rte_eth_bond_pmd.c
>> @@ -169,7 +169,8 @@ bond_ethdev_rx_burst_8023ad(void *queue, struct rte_mbuf 
>> **bufs,
>>  /* Remove packet from array if it is slow packet or 
>> slave is not
>>   * in collecting state or bondign interface is not in 
>> promiscus
>>   * mode and packet address does not match. */
>> -if (unlikely(hdr->ether_type == ether_type_slow_be ||
>> +if (unlikely((hdr->ether_type == ether_type_slow_be &&
>> +!bufs[j]->vlan_tci) ||
>>  !collecting || (!promisc &&
>>  !is_multicast_ether_addr(&hdr->d_addr) 
>> &&
>>  !is_same_ether_addr(&bond_mac, 
>> &hdr->d_addr {
>>
> 
> There are a few version of this patch, I guess this one is the correct
> one, can you please confirm?
> Also this one supersede following one, right?
> http://dpdk.org/dev/patchwork/patch/16840/

yes?this is

> 
> It helps a lot if you use versioning in the patches [PATCH -vN] and add
> a description of changes in commit log (after "---") between patch versions.
> 

ok?i think should not send patch so worry??

I have a question to ask?
Is there any other packets' type also is 0x8809 except with lacp packets?
I saw some guests try to use this type to check link status between VM
but droped by lacp bond recv function.


> Thanks,
> ferruh
> 
> .
> 




[dpdk-dev] [PATCH] net/bonding: not handle vlan slow packet

2016-11-01 Thread Ferruh Yigit
Hi Haifeng,

On 10/31/2016 3:52 AM, linhaifeng wrote:
> From: Haifeng Lin 
> 
> if rx vlan offload is enable we should not handle vlan slow
> packets too.
> 
> Signed-off-by: Haifeng Lin 
> ---
>  drivers/net/bonding/rte_eth_bond_pmd.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c 
> b/drivers/net/bonding/rte_eth_bond_pmd.c
> index 09ce7bf..ca17898 100644
> --- a/drivers/net/bonding/rte_eth_bond_pmd.c
> +++ b/drivers/net/bonding/rte_eth_bond_pmd.c
> @@ -169,7 +169,8 @@ bond_ethdev_rx_burst_8023ad(void *queue, struct rte_mbuf 
> **bufs,
>   /* Remove packet from array if it is slow packet or 
> slave is not
>* in collecting state or bondign interface is not in 
> promiscus
>* mode and packet address does not match. */
> - if (unlikely(hdr->ether_type == ether_type_slow_be ||
> + if (unlikely((hdr->ether_type == ether_type_slow_be &&
> + !bufs[j]->vlan_tci) ||
>   !collecting || (!promisc &&
>   !is_multicast_ether_addr(&hdr->d_addr) 
> &&
>   !is_same_ether_addr(&bond_mac, 
> &hdr->d_addr {
> 

There are a few version of this patch, I guess this one is the correct
one, can you please confirm?
Also this one supersede following one, right?
http://dpdk.org/dev/patchwork/patch/16840/

It helps a lot if you use versioning in the patches [PATCH -vN] and add
a description of changes in commit log (after "---") between patch versions.

Thanks,
ferruh


[dpdk-dev] [PATCH] net/bonding: not handle vlan slow packet

2016-10-31 Thread linhaifeng
From: Haifeng Lin 

if rx vlan offload is enable we should not handle vlan slow
packets too.

Signed-off-by: Haifeng Lin 
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c 
b/drivers/net/bonding/rte_eth_bond_pmd.c
index 09ce7bf..ca17898 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -169,7 +169,8 @@ bond_ethdev_rx_burst_8023ad(void *queue, struct rte_mbuf 
**bufs,
/* Remove packet from array if it is slow packet or 
slave is not
 * in collecting state or bondign interface is not in 
promiscus
 * mode and packet address does not match. */
-   if (unlikely(hdr->ether_type == ether_type_slow_be ||
+   if (unlikely((hdr->ether_type == ether_type_slow_be &&
+   !bufs[j]->vlan_tci) ||
!collecting || (!promisc &&
!is_multicast_ether_addr(&hdr->d_addr) 
&&
!is_same_ether_addr(&bond_mac, 
&hdr->d_addr {
-- 
1.8.3.1




[dpdk-dev] [PATCH] net/bonding: not handle vlan slow packet

2016-10-31 Thread linhaifeng
From: Haifeng Lin 

if rx vlan offload is enable we should not handle vlan slow
packets too.

Signed-off-by: Haifeng Lin 
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c 
b/drivers/net/bonding/rte_eth_bond_pmd.c
index 09ce7bf..9e99442 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -169,7 +169,7 @@ bond_ethdev_rx_burst_8023ad(void *queue, struct rte_mbuf 
**bufs,
/* Remove packet from array if it is slow packet or 
slave is not
 * in collecting state or bondign interface is not in 
promiscus
 * mode and packet address does not match. */
-   if (unlikely(hdr->ether_type == ether_type_slow_be ||
+   if (unlikely((hdr->ether_type == ether_type_slow_be && 
&& !bufs[j]->vlan_tci) ||
!collecting || (!promisc &&
!is_multicast_ether_addr(&hdr->d_addr) 
&&
!is_same_ether_addr(&bond_mac, 
&hdr->d_addr {
-- 
1.8.3.1




[dpdk-dev] [PATCH] net/bonding: not handle vlan slow packet

2016-10-31 Thread linhaifeng
From: ZengGanghui 

if rx vlan offload is enable we should not handle vlan slow
packets too.

Signed-off-by: Haifeng Lin 
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c 
b/drivers/net/bonding/rte_eth_bond_pmd.c
index 43334f7..6c74bba 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -169,7 +169,7 @@ bond_ethdev_rx_burst_8023ad(void *queue, struct rte_mbuf 
**bufs,
/* Remove packet from array if it is slow packet or 
slave is not
 * in collecting state or bondign interface is not in 
promiscus
 * mode and packet address does not match. */
-   if (unlikely((hdr->ether_type == ether_type_slow_be ||
+   if (unlikely(((hdr->ether_type == ether_type_slow_be && 
!bufs[j]->vlan_tci) ||
!collecting || (!promisc &&
!is_multicast_ether_addr(&hdr->d_addr) 
&&
!is_same_ether_addr(&bond_mac, 
&hdr->d_addr))) &&
-- 
1.8.3.1




[dpdk-dev] [PATCH] net/bonding: not handle vlan slow packet

2016-10-28 Thread linhaifeng
If rx vlan offload is enable we should not handle vlan slow
packets too.

Signed-off-by: Haifeng Lin  
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c 
b/drivers/net/bonding/rte_eth_bond_pmd.c
index 09ce7bf..7765017 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -169,10 +169,11 @@ bond_ethdev_rx_burst_8023ad(void *queue, struct rte_mbuf 
**bufs,
/* Remove packet from array if it is slow packet or slave is not
 * in collecting state or bondign interface is not in promiscus
 * mode and packet address does not match. */
-   if (unlikely(hdr->ether_type == ether_type_slow_be ||
+   if (unlikely(!bufs[j]->vlan_tci &&
+(hdr->ether_type == ether_type_slow_be ||
!collecting || (!promisc &&
!is_multicast_ether_addr(&hdr->d_addr) &&
-   !is_same_ether_addr(&bond_mac, &hdr->d_addr {
+   !is_same_ether_addr(&bond_mac, &hdr->d_addr) {

if (hdr->ether_type == ether_type_slow_be) {
bond_mode_8023ad_handle_slow_pkt(internals, slaves[i],
--
1.8.3.1