Re: [PATCH 4/5] virtio_net: add dedicated XDP transmit queues

2016-11-19 Thread John Fastabend
On 16-11-18 07:23 PM, Jakub Kicinski wrote: > On Fri, 18 Nov 2016 19:20:58 -0800, Eric Dumazet wrote: >> On Fri, 2016-11-18 at 18:57 -0800, Jakub Kicinski wrote: >>> On Fri, 18 Nov 2016 18:43:55 -0800, John Fastabend wrote: On 16-11-18 06:10 PM, Jakub Kicinski wrote: >> [...]

Re: [PATCH 4/5] virtio_net: add dedicated XDP transmit queues

2016-11-18 Thread Jakub Kicinski
On Fri, 18 Nov 2016 19:20:58 -0800, Eric Dumazet wrote: > On Fri, 2016-11-18 at 18:57 -0800, Jakub Kicinski wrote: > > On Fri, 18 Nov 2016 18:43:55 -0800, John Fastabend wrote: > > > On 16-11-18 06:10 PM, Jakub Kicinski wrote: > [...] > > > > > > Seem like a valid concerns to me how about n

Re: [PATCH 4/5] virtio_net: add dedicated XDP transmit queues

2016-11-18 Thread Eric Dumazet
On Fri, 2016-11-18 at 18:57 -0800, Jakub Kicinski wrote: > On Fri, 18 Nov 2016 18:43:55 -0800, John Fastabend wrote: > > On 16-11-18 06:10 PM, Jakub Kicinski wrote: > > > On Fri, 18 Nov 2016 13:09:53 -0800, Jakub Kicinski wrote: > > >> Looks very cool! :) > > >> > > >> On Fri, 18 Nov 2016 11:00:4

Re: [PATCH 4/5] virtio_net: add dedicated XDP transmit queues

2016-11-18 Thread Jakub Kicinski
On Fri, 18 Nov 2016 18:43:55 -0800, John Fastabend wrote: > On 16-11-18 06:10 PM, Jakub Kicinski wrote: > > On Fri, 18 Nov 2016 13:09:53 -0800, Jakub Kicinski wrote: > >> Looks very cool! :) > >> > >> On Fri, 18 Nov 2016 11:00:41 -0800, John Fastabend wrote: > [...] > >> > >> Is num_online_c

Re: [PATCH 4/5] virtio_net: add dedicated XDP transmit queues

2016-11-18 Thread John Fastabend
On 16-11-18 06:10 PM, Jakub Kicinski wrote: > On Fri, 18 Nov 2016 13:09:53 -0800, Jakub Kicinski wrote: >> Looks very cool! :) >> >> On Fri, 18 Nov 2016 11:00:41 -0800, John Fastabend wrote: >>> @@ -1542,12 +1546,34 @@ static int virtnet_xdp_set(struct net_device *dev, >>> struct bpf_prog *prog) >

Re: [PATCH 4/5] virtio_net: add dedicated XDP transmit queues

2016-11-18 Thread Jakub Kicinski
On Fri, 18 Nov 2016 13:09:53 -0800, Jakub Kicinski wrote: > Looks very cool! :) > > On Fri, 18 Nov 2016 11:00:41 -0800, John Fastabend wrote: > > @@ -1542,12 +1546,34 @@ static int virtnet_xdp_set(struct net_device *dev, > > struct bpf_prog *prog) > > return -EINVAL; > > } > > >

Re: [PATCH 4/5] virtio_net: add dedicated XDP transmit queues

2016-11-18 Thread Jakub Kicinski
Looks very cool! :) On Fri, 18 Nov 2016 11:00:41 -0800, John Fastabend wrote: > @@ -1542,12 +1546,34 @@ static int virtnet_xdp_set(struct net_device *dev, > struct bpf_prog *prog) > return -EINVAL; > } > > + curr_qp = vi->curr_queue_pairs - vi->xdp_queue_pairs; > + i

[PATCH 4/5] virtio_net: add dedicated XDP transmit queues

2016-11-18 Thread John Fastabend
XDP requires using isolated transmit queues to avoid interference with normal networking stack (BQL, NETDEV_TX_BUSY, etc). This patch adds a XDP queue per cpu when a XDP program is loaded and does not expose the queues to the OS via the normal API call to netif_set_real_num_tx_queues(). This way th