On Thu, Jul 02, 2015 at 04:03:07PM -0500, Eric W. Biederman wrote: > > Eric's Commit 1d5da757da860a6916adbf68b09e868062b4b3b8 (ax25: Stop using > > magic neighbour cache operations.) breaks IP traffic over the AX.25 bpqether > > driver. > > Sigh. NETIF_F_LLTX is not set so recursion does not work :( > > So we can either set NETIF_F_LLTX or just rever the offending commit.
The AX.25 stack has a sufficient number of hacks that attempts to fix any hack is likely to cause issues somewhere else and the header and neighbour stuff is the worst minefield. I'm happy that your patch at least concentrates all those hacks in the AX.25 stack itself removing the impact from the generic networking code. > I think either will work. ax25 is so very weird it just abuses the > neighbour table something awful. It ax25 is not caching ip address to > ax25 address translations in there, ax25 should really not be using the > neighbour table. Sigh. > > So perhaps something like the below will be good enough. > > diff --git a/drivers/net/hamradio/bpqether.c b/drivers/net/hamradio/bpqether.c > index 63ff08a26da8..fc2be36c9425 100644 > --- a/drivers/net/hamradio/bpqether.c > +++ b/drivers/net/hamradio/bpqether.c > @@ -483,6 +483,7 @@ static void bpq_setup(struct net_device *dev) > memcpy(dev->dev_addr, &ax25_defaddr, AX25_ADDR_LEN); > > dev->flags = 0; > + dev->features = NETIF_F_LLTX; /* Allow recursion */ > > #if defined(CONFIG_AX25) || defined(CONFIG_AX25_MODULE) > dev->header_ops = &ax25_header_ops; Thanks, that restored bpqether to work. I will cook up a patch to fix all other AX.25 drivers. Thanks! Ralf -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html