To reviewers: Need some opinions if this is needed? (TODO: Squash patch) --- net/core/filter.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/net/core/filter.c b/net/core/filter.c index 0ceddee0c678..669f29992177 100644 --- a/net/core/filter.c +++ b/net/core/filter.c @@ -3432,6 +3432,12 @@ BPF_CALL_2(bpf_xdp_adjust_tail, struct xdp_buff *, xdp, int, offset) if (unlikely(data_end < xdp->data + ETH_HLEN)) return -EINVAL; + // XXX: To reviewers: How paranoid are we? Do we really need to + /* clear memory area on grow, as in-theory can contain uninit kmem */ + if (offset > 0) { + memset(xdp->data_end, 0, offset); + } + xdp->data_end = data_end; return 0;