Re: DSA and underlying 802.1Q encapsulation

2015-05-28 Thread Guenter Roeck
On 05/28/2015 06:44 AM, Vivien Didelot wrote: Hi Guenter, If yes, the dsa code may need to move the tag into the header. If we are lucky, a call to vlan_hwaccel_push_inside() might do it. Thanks, I'm currently looking into it and doing some tests, I'm coming back to you asap. Issue fixed, t

Re: DSA and underlying 802.1Q encapsulation

2015-05-28 Thread Vivien Didelot
Hi Guenter, >>> If yes, the dsa code may need to move the tag into the header. >>> If we are lucky, a call to vlan_hwaccel_push_inside() might do it. >> >> Thanks, I'm currently looking into it and doing some tests, I'm coming back >> to >> you asap. Issue fixed, thanks! vlan_hwaccel_push_inside

Re: DSA and underlying 802.1Q encapsulation

2015-05-27 Thread Guenter Roeck
On 05/27/2015 06:46 PM, Andrew Lunn wrote: On Wed, May 27, 2015 at 03:51:59PM -0700, Guenter Roeck wrote: On 05/27/2015 02:05 PM, Andrew Lunn wrote: Do you have lock debugging enabled in your code ? I am getting a recursive lock warning due to a recursive call to dev_mc_sync(). I think we may h

Re: DSA and underlying 802.1Q encapsulation

2015-05-27 Thread Andrew Lunn
On Wed, May 27, 2015 at 03:51:59PM -0700, Guenter Roeck wrote: > On 05/27/2015 02:05 PM, Andrew Lunn wrote: > >>Do you have lock debugging enabled in your code ? I am getting a recursive > >>lock warning due to a recursive call to dev_mc_sync(). I think we may have > >>to implement lock nesting for

Re: DSA and underlying 802.1Q encapsulation

2015-05-27 Thread Guenter Roeck
On 05/27/2015 02:05 PM, Andrew Lunn wrote: Do you have lock debugging enabled in your code ? I am getting a recursive lock warning due to a recursive call to dev_mc_sync(). I think we may have to implement lock nesting for dsa, similar to how it id done for vlan support, but I have not been able

Re: DSA and underlying 802.1Q encapsulation

2015-05-27 Thread Andrew Lunn
> Do you have lock debugging enabled in your code ? I am getting a recursive > lock warning due to a recursive call to dev_mc_sync(). I think we may have > to implement lock nesting for dsa, similar to how it id done for vlan > support, but I have not been able to figure out how exactly it works ye

Re: DSA and underlying 802.1Q encapsulation

2015-05-27 Thread Guenter Roeck
On 05/27/2015 01:48 PM, Vivien Didelot wrote: Hi Guenter, Interesting question. Does the underlying network device support VLAN HW acceleration (NETIF_F_HW_VLAN_CTAG_RX, NETIF_F_HW_VLAN_CTAG_TX) ? Yes, in our case, it's an IGB device. I also set the DSA slave_dev->features and slave_dev->vla

Re: DSA and underlying 802.1Q encapsulation

2015-05-27 Thread Vivien Didelot
Hi Guenter, > Interesting question. Does the underlying network device support VLAN HW > acceleration (NETIF_F_HW_VLAN_CTAG_RX, NETIF_F_HW_VLAN_CTAG_TX) ? Yes, in our case, it's an IGB device. I also set the DSA slave_dev->features and slave_dev->vlan_features to master->vlan_features | NETIF_F_

Re: DSA and underlying 802.1Q encapsulation

2015-05-26 Thread Guenter Roeck
On Tue, May 26, 2015 at 06:29:57PM -0400, Vivien Didelot wrote: > Hi, > > I'm doing tests with VLAN support in DSA and I noticed that the EDSA > frame is prepended with a 802.1q header once queued to the underlying > network device, in net/dsa/tag_edsa.c: > > skb->dev = p->parent->dst->mast

DSA and underlying 802.1Q encapsulation

2015-05-26 Thread Vivien Didelot
Hi, I'm doing tests with VLAN support in DSA and I noticed that the EDSA frame is prepended with a 802.1q header once queued to the underlying network device, in net/dsa/tag_edsa.c: skb->dev = p->parent->dst->master_netdev; dev_queue_xmit(skb); This issue can be observed with the follo