fix ethernet driver crash when using bridging

SVN-Revision: 1521
master
Felix Fietkau 19 years ago
parent 29a4b712e8
commit fca68688cc
  1. 11
      openwrt/target/linux/linux-2.4/patches/ar7/003-net_driver_cpmac.patch

@ -815,8 +815,8 @@ diff -urN linux.old/drivers/net/avalanche_cpmac/cpcommon_cpmac.h linux.dev/drive
+ +
diff -urN linux.old/drivers/net/avalanche_cpmac/cpmac.c linux.dev/drivers/net/avalanche_cpmac/cpmac.c diff -urN linux.old/drivers/net/avalanche_cpmac/cpmac.c linux.dev/drivers/net/avalanche_cpmac/cpmac.c
--- linux.old/drivers/net/avalanche_cpmac/cpmac.c 1970-01-01 01:00:00.000000000 +0100 --- linux.old/drivers/net/avalanche_cpmac/cpmac.c 1970-01-01 01:00:00.000000000 +0100
+++ linux.dev/drivers/net/avalanche_cpmac/cpmac.c 2005-07-12 03:21:00.298934472 +0200 +++ linux.dev/drivers/net/avalanche_cpmac/cpmac.c 2005-07-22 01:03:12.609318544 +0200
@@ -0,0 +1,2509 @@ @@ -0,0 +1,2504 @@
+/****************************************************************************** +/******************************************************************************
+ * FILE PURPOSE: CPMAC Linux Network Device Driver Source + * FILE PURPOSE: CPMAC Linux Network Device Driver Source
+ ****************************************************************************** + ******************************************************************************
@ -3035,12 +3035,7 @@ diff -urN linux.old/drivers/net/avalanche_cpmac/cpmac.c linux.dev/drivers/net/av
+ skb_trim(p_skb, packet_size); + skb_trim(p_skb, packet_size);
+#endif +#endif
+ +
+#ifndef TI_SLOW_PATH + p_skb->protocol = eth_type_trans(p_skb, p_dev);
+ /* TI Optimization: This is NOT required if the ethernet resides below the bridge. But is
+ * required only if the ethernet is directly connected to the IP stack. */
+ if (p_dev->br_port == NULL)
+#endif
+ p_skb->protocol = eth_type_trans(p_skb, p_dev);
+ +
+ netif_rx(p_skb); + netif_rx(p_skb);
+ +

Loading…
Cancel
Save