On Wed, Aug 02, 2023 at 02:21:06PM +0200, Nicolas Dichtel wrote: > This kind of interface doesn't have a mac header. Well, PPP does have a link layer header. Do you instead mean that PPP automatically adds it? > This patch fixes bpf_redirect() to a ppp interface. Can you give more details? Which kind of packets are you trying to redirect to PPP interfaces? To me this looks like a hack to work around the fact that ppp_start_xmit() automatically adds a PPP header. Maybe that's the best we can do given the current state of ppp_generic.c, but the commit message should be clear about what the real problem is and why the patch takes this approach to fix or work around it. > CC: stable@xxxxxxxxxxxxxxx > Fixes: 27b29f63058d ("bpf: add bpf_redirect() helper") > Signed-off-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx> > Tested-by: Siwar Zitouni <siwar.zitouni@xxxxxxxxx> > --- > > v1 -> v2: > - I forgot the 'Tested-by' tag in the v1 :/ > > include/linux/if_arp.h | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/include/linux/if_arp.h b/include/linux/if_arp.h > index 1ed52441972f..8efbe29a6f0c 100644 > --- a/include/linux/if_arp.h > +++ b/include/linux/if_arp.h > @@ -53,6 +53,7 @@ static inline bool dev_is_mac_header_xmit(const struct net_device *dev) > case ARPHRD_NONE: > case ARPHRD_RAWIP: > case ARPHRD_PIMREG: > + case ARPHRD_PPP: > return false; > default: > return true; > -- > 2.39.2 > >