Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-09 Thread Neil Horman
On Thu, Jan 09, 2014 at 04:28:49PM +0800, Jason Wang wrote: > On 01/08/2014 10:40 PM, Neil Horman wrote: > > On Wed, Jan 08, 2014 at 11:21:21AM +0800, Jason Wang wrote: > >> On 01/07/2014 09:17 PM, Neil Horman wrote: > >>> On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: > On

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-09 Thread Jason Wang
On 01/08/2014 10:40 PM, Neil Horman wrote: > On Wed, Jan 08, 2014 at 11:21:21AM +0800, Jason Wang wrote: >> On 01/07/2014 09:17 PM, Neil Horman wrote: >>> On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: On 01/06/2014 08:42 PM, Neil Horman wrote: > On Mon, Jan 06, 2014 at

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-09 Thread Jason Wang
On 01/08/2014 10:40 PM, Neil Horman wrote: On Wed, Jan 08, 2014 at 11:21:21AM +0800, Jason Wang wrote: On 01/07/2014 09:17 PM, Neil Horman wrote: On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: On 01/06/2014 08:42 PM, Neil Horman wrote: On Mon, Jan 06, 2014 at 11:21:07AM +0800,

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-09 Thread Neil Horman
On Thu, Jan 09, 2014 at 04:28:49PM +0800, Jason Wang wrote: On 01/08/2014 10:40 PM, Neil Horman wrote: On Wed, Jan 08, 2014 at 11:21:21AM +0800, Jason Wang wrote: On 01/07/2014 09:17 PM, Neil Horman wrote: On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: On 01/06/2014 08:42 PM,

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-08 Thread Neil Horman
On Wed, Jan 08, 2014 at 11:21:21AM +0800, Jason Wang wrote: > On 01/07/2014 09:17 PM, Neil Horman wrote: > > On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: > >> On 01/06/2014 08:42 PM, Neil Horman wrote: > >>> On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: >

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-08 Thread Neil Horman
On Wed, Jan 08, 2014 at 11:21:21AM +0800, Jason Wang wrote: On 01/07/2014 09:17 PM, Neil Horman wrote: On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: On 01/06/2014 08:42 PM, Neil Horman wrote: On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-07 Thread Jason Wang
On 01/07/2014 09:17 PM, Neil Horman wrote: > On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: >> On 01/06/2014 08:42 PM, Neil Horman wrote: >>> On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit().

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-07 Thread Neil Horman
On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: > On 01/06/2014 08:42 PM, Neil Horman wrote: > > On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: > >> Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). > >> The > >> will cause several issues: > >> >

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-07 Thread John Fastabend
[...] +int dfwd_direct_xmit(struct sk_buff *skb, struct net_device *dev, + void *accel_priv) +{ +struct netdev_queue *txq; +int ret = NETDEV_TX_BUSY; +int index; + +BUG_ON(!dev->netdev_ops->ndo_dfwd_select_queue); +index =

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-07 Thread John Fastabend
On 1/5/2014 7:21 PM, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock contention. - dev_hard_start_xmit() was called with NULL txq which

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-07 Thread John Fastabend
On 1/5/2014 7:21 PM, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock contention. - dev_hard_start_xmit() was called with NULL txq which

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-07 Thread John Fastabend
[...] +int dfwd_direct_xmit(struct sk_buff *skb, struct net_device *dev, + void *accel_priv) +{ +struct netdev_queue *txq; +int ret = NETDEV_TX_BUSY; +int index; + +BUG_ON(!dev-netdev_ops-ndo_dfwd_select_queue); +index =

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-07 Thread Neil Horman
On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: On 01/06/2014 08:42 PM, Neil Horman wrote: On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-07 Thread Jason Wang
On 01/07/2014 09:17 PM, Neil Horman wrote: On Tue, Jan 07, 2014 at 11:42:24AM +0800, Jason Wang wrote: On 01/06/2014 08:42 PM, Neil Horman wrote: On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread Jason Wang
On 01/06/2014 08:42 PM, Neil Horman wrote: > On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: >> Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). >> The >> will cause several issues: >> >> - NETIF_F_LLTX was forced for macvlan device in this case which lead

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread Neil Horman
On Mon, Jan 06, 2014 at 07:06:25AM -0800, John Fastabend wrote: > On 01/06/2014 04:42 AM, Neil Horman wrote: > >On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: > >>Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). > >>The > >>will cause several issues: > >> >

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread John Fastabend
On 01/06/2014 04:42 AM, Neil Horman wrote: On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread Neil Horman
On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: > Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The > will cause several issues: > > - NETIF_F_LLTX was forced for macvlan device in this case which lead extra > lock > contention. > -

Re: [E1000-devel] [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread Jeff Kirsher
On Mon, 2014-01-06 at 11:21 +0800, Jason Wang wrote: > Currently, the tx queue were selected implicitly in > ndo_dfwd_start_xmit(). The > will cause several issues: > > - NETIF_F_LLTX was forced for macvlan device in this case which lead > extra lock > contention. > - dev_hard_start_xmit() was

Re: [E1000-devel] [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread Jeff Kirsher
On Mon, 2014-01-06 at 11:21 +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock contention. - dev_hard_start_xmit() was called

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread Neil Horman
On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock contention. - dev_hard_start_xmit() was

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread John Fastabend
On 01/06/2014 04:42 AM, Neil Horman wrote: On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread Neil Horman
On Mon, Jan 06, 2014 at 07:06:25AM -0800, John Fastabend wrote: On 01/06/2014 04:42 AM, Neil Horman wrote: On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX

Re: [PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-06 Thread Jason Wang
On 01/06/2014 08:42 PM, Neil Horman wrote: On Mon, Jan 06, 2014 at 11:21:07AM +0800, Jason Wang wrote: Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock

[PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-05 Thread Jason Wang
Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock contention. - dev_hard_start_xmit() was called with NULL txq which bypasses the net device watchdog -

[PATCH net 2/2] net: core: explicitly select a txq before doing l2 forwarding

2014-01-05 Thread Jason Wang
Currently, the tx queue were selected implicitly in ndo_dfwd_start_xmit(). The will cause several issues: - NETIF_F_LLTX was forced for macvlan device in this case which lead extra lock contention. - dev_hard_start_xmit() was called with NULL txq which bypasses the net device watchdog -