Commit b968e735 authored by Nikita V. Shirokov's avatar Nikita V. Shirokov Committed by Daniel Borkmann

bpf: make bnxt compatible w/ bpf_xdp_adjust_tail

w/ bpf_xdp_adjust_tail helper xdp's data_end pointer could be changed as
well (only "decrease" of pointer's location is going to be supported).
changing of this pointer will change packet's size.
for bnxt driver we will just calculate packet's length unconditionally
Acked-by: default avatarAlexei Starovoitov <ast@kernel.org>
Signed-off-by: default avatarNikita V. Shirokov <tehnerd@tehnerd.com>
Acked-by: default avatarMichael Chan <michael.chan@broadcom.com>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
parent e5e0a59b
...@@ -113,10 +113,10 @@ bool bnxt_rx_xdp(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, u16 cons, ...@@ -113,10 +113,10 @@ bool bnxt_rx_xdp(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, u16 cons,
if (tx_avail != bp->tx_ring_size) if (tx_avail != bp->tx_ring_size)
*event &= ~BNXT_RX_EVENT; *event &= ~BNXT_RX_EVENT;
*len = xdp.data_end - xdp.data;
if (orig_data != xdp.data) { if (orig_data != xdp.data) {
offset = xdp.data - xdp.data_hard_start; offset = xdp.data - xdp.data_hard_start;
*data_ptr = xdp.data_hard_start + offset; *data_ptr = xdp.data_hard_start + offset;
*len = xdp.data_end - xdp.data;
} }
switch (act) { switch (act) {
case XDP_PASS: case XDP_PASS:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment