Re: [PATCH v4 1/2] drivers: net: prevent tun_build_skb() to exceed the packet size limit
From: David Ahern <hidden>
Date: 2023-08-02 01:07:47
Also in:
linux-kernel-mentees, lkml
From: David Ahern <hidden>
Date: 2023-08-02 01:07:47
Also in:
linux-kernel-mentees, lkml
On 8/1/23 4:07 PM, Andrew Kanner wrote:
@@ -1594,7 +1597,13 @@ static bool tun_can_build_skb(struct tun_struct *tun, struct tun_file *tfile, if (zerocopy) return false; - if (SKB_DATA_ALIGN(len + TUN_RX_PAD) + + rcu_read_lock(); + xdp_prog = rcu_dereference(tun->xdp_prog); + if (xdp_prog) + pad += XDP_PACKET_HEADROOM; + rcu_read_unlock();
since you do not care about the actual xdp_prog (only that one is set) I believe you can use rcu_access_pointer here.