|
minutes: IO VIsor TSC and Dev members call
Brenden Blanco <bblanco@...> wrote: I'm doing my usual benchmark driven development. Which means I'm currently benchmarking the lowest RX layer of the drivers and just dropping packets inside
Brenden Blanco <bblanco@...> wrote: I'm doing my usual benchmark driven development. Which means I'm currently benchmarking the lowest RX layer of the drivers and just dropping packets inside
|
By
Jesper Dangaard Brouer
· #91
·
|
|
minutes: IO VIsor TSC and Dev members call
Alexei Starovoitov <alexei.starovoitov@...> wrote: Yes, but we might as well start up with making the allocator hacks in mlx4 more generic, when adding recycle. But still keep them locally in th
Alexei Starovoitov <alexei.starovoitov@...> wrote: Yes, but we might as well start up with making the allocator hacks in mlx4 more generic, when adding recycle. But still keep them locally in th
|
By
Jesper Dangaard Brouer
· #96
·
|
|
The page-pool as a component for XDP forwarding
I've started a separate document for designing my page-pool idea. I see the page-pool as a component, for allowing fast forwarding with XDP, at the packet-page level, cross device. I want your input o
I've started a separate document for designing my page-pool idea. I see the page-pool as a component, for allowing fast forwarding with XDP, at the packet-page level, cross device. I want your input o
|
By
Jesper Dangaard Brouer
· #153
·
|
|
The page-pool as a component for XDP forwarding
Tom Herbert <tom@...> wrote: I'm not sure how you can get lockless TX with only one XDP-TX queue. Remember we have to build in bulk TX from day one. Why? Remember the TX tailptr write is c
Tom Herbert <tom@...> wrote: I'm not sure how you can get lockless TX with only one XDP-TX queue. Remember we have to build in bulk TX from day one. Why? Remember the TX tailptr write is c
|
By
Jesper Dangaard Brouer
· #155
·
|
|
The page-pool as a component for XDP forwarding
Tom Herbert <tom@...> wrote: I almost agree, but there are some details ;-) Yes, for XDP-TX we likely cannot piggy-back on the normal stack TX queues (like we do on the RX queues). Thus, w
Tom Herbert <tom@...> wrote: I almost agree, but there are some details ;-) Yes, for XDP-TX we likely cannot piggy-back on the normal stack TX queues (like we do on the RX queues). Thus, w
|
By
Jesper Dangaard Brouer
· #164
·
|
|
The page-pool as a component for XDP forwarding
Alexei Starovoitov <alexei.starovoitov@...> wrote: I agree that driver choose TX queue to use to avoid conflicts, allowing lockless access. I think XDP/BPF "forward"-mode" should always select a
Alexei Starovoitov <alexei.starovoitov@...> wrote: I agree that driver choose TX queue to use to avoid conflicts, allowing lockless access. I think XDP/BPF "forward"-mode" should always select a
|
By
Jesper Dangaard Brouer
· #165
·
|
|
The page-pool as a component for XDP forwarding
[...] The page-pool doc section "Feedback loop" was primarily about how the page-pool's need to recycle, offer a way to handle and implement flow control. The doc identified two states, but you just i
[...] The page-pool doc section "Feedback loop" was primarily about how the page-pool's need to recycle, offer a way to handle and implement flow control. The doc identified two states, but you just i
|
By
Jesper Dangaard Brouer
· #185
·
|
|
Porposed XDP summit
Tom Herbert via iovisor-dev <iovisor-dev@...> wrote: [...] I'm very interested in the project. But it is not likely I can attend the mini-conference due to travel funding restrictions. (
Tom Herbert via iovisor-dev <iovisor-dev@...> wrote: [...] I'm very interested in the project. But it is not likely I can attend the mini-conference due to travel funding restrictions. (
|
By
Jesper Dangaard Brouer
· #204
·
|
|
XDP: Make RX packet-pages writable
It is a fundamental requirement that the RX pages (handed over to XDP) are writable. This is usually _not_ the case in NIC drivers. Thus, the current XDP prove-of-concept code violates the DMA API. (W
It is a fundamental requirement that the RX pages (handed over to XDP) are writable. This is usually _not_ the case in NIC drivers. Thus, the current XDP prove-of-concept code violates the DMA API. (W
|
By
Jesper Dangaard Brouer
· #210
·
|
|
XDP: The VLAN offload problem
Many NICs today does VLAN acceleration by delivering the VLAN TCI in the RX descriptor, and stripping/starting the packet-data after the VLAN header. For XDP this special case handling for VLANs is an
Many NICs today does VLAN acceleration by delivering the VLAN TCI in the RX descriptor, and stripping/starting the packet-data after the VLAN header. For XDP this special case handling for VLANs is an
|
By
Jesper Dangaard Brouer
· #211
·
|
|
XDP: DDoS filter use-case
I also want a XDP/eBPF hook placed at TX DMA completion time, or when the page is recycled back to the page-pool. This will allow innovating more advanced DDoS filter solutions, as this creates a feed
I also want a XDP/eBPF hook placed at TX DMA completion time, or when the page is recycled back to the page-pool. This will allow innovating more advanced DDoS filter solutions, as this creates a feed
|
By
Jesper Dangaard Brouer
· #212
·
|
|
XDP: Where to store the meta-data?
Once pages comes from the page-pool, then we actually "own" the struct-page. Thus, we do have the option of storing some meta-data inside struct-page. Another option, given our requirement that the RX
Once pages comes from the page-pool, then we actually "own" the struct-page. Thus, we do have the option of storing some meta-data inside struct-page. Another option, given our requirement that the RX
|
By
Jesper Dangaard Brouer
· #213
·
|
|
XDP: Contents of XDP meta-data
What should be the content of the XDP meta-data structure? I find the HW RX-hash very useful for DDoS filtering, and I would like for it to survive until TX completion. Do we need the (page-)offset an
What should be the content of the XDP meta-data structure? I find the HW RX-hash very useful for DDoS filtering, and I would like for it to survive until TX completion. Do we need the (page-)offset an
|
By
Jesper Dangaard Brouer
· #214
·
|
|
XDP summit agenda
Tom Herbert via iovisor-dev <iovisor-dev@...> wrote: Does this ILA router do multi-leg routing? If not, then I would add the use case for "normal" routing. Use-case: DDoS filter - This w
Tom Herbert via iovisor-dev <iovisor-dev@...> wrote: Does this ILA router do multi-leg routing? If not, then I would add the use case for "normal" routing. Use-case: DDoS filter - This w
|
By
Jesper Dangaard Brouer
· #269
·
|
|
XDP summit agenda
Tom Herbert via iovisor-dev <iovisor-dev@...> wrote: [...] [...] Given I'll not participate physically, I'll give my page-pool status here. The page-pool idea was presented at MM-summit
Tom Herbert via iovisor-dev <iovisor-dev@...> wrote: [...] [...] Given I'll not participate physically, I'll give my page-pool status here. The page-pool idea was presented at MM-summit
|
By
Jesper Dangaard Brouer
· #270
·
|
|
Assertion fails at samples/bpf/test_maps
Alexei Starovoitov <alexei.starovoitov@...> wrote: [...] Strange I get: $ sudo ./test_maps failed to create per-cpu arraymap 'Operation not permitted' strace says: bpf(BPF_MAP_CREATE, {map_type=
Alexei Starovoitov <alexei.starovoitov@...> wrote: [...] Strange I get: $ sudo ./test_maps failed to create per-cpu arraymap 'Operation not permitted' strace says: bpf(BPF_MAP_CREATE, {map_type=
|
By
Jesper Dangaard Brouer
· #271
·
|
|
Assertion fails at samples/bpf/test_maps
Alexei Starovoitov <alexei.starovoitov@...> wrote: # ulimit -l unlimited # ./test_maps test_maps: OK Then it works, thanks. Maybe we could provide some better feedback from the test program, as
Alexei Starovoitov <alexei.starovoitov@...> wrote: # ulimit -l unlimited # ./test_maps test_maps: OK Then it works, thanks. Maybe we could provide some better feedback from the test program, as
|
By
Jesper Dangaard Brouer
· #274
·
|
|
XDP eBPF extending with an input parameter?
How easy is it to extend the XDP/eBPF program with a new input parameter? I see the need for providing the input "source-port" to the eBPF program. E.g. needed when implementing a basic learning bridg
How easy is it to extend the XDP/eBPF program with a new input parameter? I see the need for providing the input "source-port" to the eBPF program. E.g. needed when implementing a basic learning bridg
|
By
Jesper Dangaard Brouer
· #291
·
|
|
XDP seeking input from NIC hardware vendors
Would it make sense from a hardware point of view, to split the XDP eBPF program into two stages. Stage-1: Filter (restricted eBPF / no-helper calls) Stage-2: Program Then the HW can choose to offload
Would it make sense from a hardware point of view, to split the XDP eBPF program into two stages. Stage-1: Filter (restricted eBPF / no-helper calls) Stage-2: Program Then the HW can choose to offload
|
By
Jesper Dangaard Brouer
· #293
·
|
|
XDP seeking input from NIC hardware vendors
I actually disagree. I _do_ want to use the "filter" part of eBPF to direct to NIC queues, and then run a single/specific XDP program on that queue. Why to I want this? This part of solving a very fun
I actually disagree. I _do_ want to use the "filter" part of eBPF to direct to NIC queues, and then run a single/specific XDP program on that queue. Why to I want this? This part of solving a very fun
|
By
Jesper Dangaard Brouer
· #302
·
|