Finally, after all drivers have a frame size, allow BPF-helper bpf_xdp_adjust_tail() to grow or extend packet size at frame tail. Remember that helper/macro xdp_data_hard_end have reserved some tailroom. Thus, this helper makes sure that the BPF-prog don't have access to this tailroom area. V2: Remove one chicken check and use WARN_ONCE for other
Showing the changes to include/uapi (1 of 2 files). Show all
Unified · Split
| @@ -2015,8 +2015,8 @@ union bpf_attr { · 2014 unmodified lines | ||
| 2015 | 2015 | * int bpf_xdp_adjust_tail(struct xdp_buff *xdp_md, int delta) |
| 2016 | 2016 | * Description |
| 2017 | 2017 | * Adjust (move) *xdp_md*\ **->data_end** by *delta* bytes. It is |
| 2018 | − * only possible to shrink the packet as of this writing, | |
| 2019 | − * therefore *delta* must be a negative integer. | |
| 2018 | + * possible to both shrink and grow the packet tail. | |
| 2019 | + * Shrink done via *delta* being a negative integer. | |
| 2020 | 2020 | * |
| 2021 | 2021 | * A call to this helper is susceptible to change the underlying |
| 2022 | 2022 | * packet buffer. Therefore, at load time, all checks on pointers |