diff options
Diffstat (limited to 'package/kernel/mac80211/patches/009-revert-mtu-changes.patch')
-rw-r--r-- | package/kernel/mac80211/patches/009-revert-mtu-changes.patch | 338 |
1 files changed, 0 insertions, 338 deletions
diff --git a/package/kernel/mac80211/patches/009-revert-mtu-changes.patch b/package/kernel/mac80211/patches/009-revert-mtu-changes.patch deleted file mode 100644 index f5e2757d3f..0000000000 --- a/package/kernel/mac80211/patches/009-revert-mtu-changes.patch +++ /dev/null @@ -1,338 +0,0 @@ ---- a/net/mac80211/iface.c -+++ b/net/mac80211/iface.c -@@ -151,6 +151,15 @@ void ieee80211_recalc_idle(struct ieee80 - ieee80211_hw_config(local, change); - } - -+static int ieee80211_change_mtu(struct net_device *dev, int new_mtu) -+{ -+ if (new_mtu < 256 || new_mtu > IEEE80211_MAX_DATA_LEN) -+ return -EINVAL; -+ -+ dev->mtu = new_mtu; -+ return 0; -+} -+ - static int ieee80211_verify_mac(struct ieee80211_sub_if_data *sdata, u8 *addr, - bool check_dup) - { -@@ -1168,6 +1177,7 @@ static const struct net_device_ops ieee8 - .ndo_uninit = ieee80211_uninit, - .ndo_start_xmit = ieee80211_subif_start_xmit, - .ndo_set_rx_mode = ieee80211_set_multicast_list, -+ .ndo_change_mtu = ieee80211_change_mtu, - .ndo_set_mac_address = ieee80211_change_mac, - .ndo_select_queue = ieee80211_netdev_select_queue, - .ndo_get_stats64 = ieee80211_get_stats64, -@@ -1211,6 +1221,7 @@ static const struct net_device_ops ieee8 - .ndo_uninit = ieee80211_uninit, - .ndo_start_xmit = ieee80211_monitor_start_xmit, - .ndo_set_rx_mode = ieee80211_set_multicast_list, -+ .ndo_change_mtu = ieee80211_change_mtu, - .ndo_set_mac_address = ieee80211_change_mac, - .ndo_select_queue = ieee80211_monitor_select_queue, - .ndo_get_stats64 = ieee80211_get_stats64, -@@ -1919,10 +1930,6 @@ int ieee80211_if_add(struct ieee80211_lo - - netdev_set_default_ethtool_ops(ndev, &ieee80211_ethtool_ops); - -- /* MTU range: 256 - 2304 */ -- ndev->min_mtu = 256; -- ndev->max_mtu = IEEE80211_MAX_DATA_LEN; -- - ret = register_netdevice(ndev); - if (ret) { - ieee80211_if_free(ndev); ---- a/drivers/net/wireless/ath/wil6210/netdev.c -+++ b/drivers/net/wireless/ath/wil6210/netdev.c -@@ -42,6 +42,21 @@ static int wil_stop(struct net_device *n - return wil_down(wil); - } - -+static int wil_change_mtu(struct net_device *ndev, int new_mtu) -+{ -+ struct wil6210_priv *wil = ndev_to_wil(ndev); -+ -+ if (new_mtu < 68 || new_mtu > mtu_max) { -+ wil_err(wil, "invalid MTU %d\n", new_mtu); -+ return -EINVAL; -+ } -+ -+ wil_dbg_misc(wil, "change MTU %d -> %d\n", ndev->mtu, new_mtu); -+ ndev->mtu = new_mtu; -+ -+ return 0; -+} -+ - static int wil_do_ioctl(struct net_device *ndev, struct ifreq *ifr, int cmd) - { - struct wil6210_priv *wil = ndev_to_wil(ndev); -@@ -55,6 +70,7 @@ static const struct net_device_ops wil_n - .ndo_start_xmit = wil_start_xmit, - .ndo_set_mac_address = eth_mac_addr, - .ndo_validate_addr = eth_validate_addr, -+ .ndo_change_mtu = wil_change_mtu, - .ndo_do_ioctl = wil_do_ioctl, - }; - -@@ -111,7 +127,6 @@ static int wil6210_netdev_poll_tx(struct - static void wil_dev_setup(struct net_device *dev) - { - ether_setup(dev); -- dev->max_mtu = mtu_max; - dev->tx_queue_len = WIL_TX_Q_LEN_DEFAULT; - } - ---- a/drivers/net/wireless/atmel/atmel.c -+++ b/drivers/net/wireless/atmel/atmel.c -@@ -1295,6 +1295,14 @@ static struct iw_statistics *atmel_get_w - return &priv->wstats; - } - -+static int atmel_change_mtu(struct net_device *dev, int new_mtu) -+{ -+ if ((new_mtu < 68) || (new_mtu > 2312)) -+ return -EINVAL; -+ dev->mtu = new_mtu; -+ return 0; -+} -+ - static int atmel_set_mac_address(struct net_device *dev, void *p) - { - struct sockaddr *addr = p; -@@ -1498,6 +1506,7 @@ static const struct file_operations atme - static const struct net_device_ops atmel_netdev_ops = { - .ndo_open = atmel_open, - .ndo_stop = atmel_close, -+ .ndo_change_mtu = atmel_change_mtu, - .ndo_set_mac_address = atmel_set_mac_address, - .ndo_start_xmit = start_tx, - .ndo_do_ioctl = atmel_ioctl, -@@ -1591,10 +1600,6 @@ struct net_device *init_atmel_card(unsig - dev->irq = irq; - dev->base_addr = port; - -- /* MTU range: 68 - 2312 */ -- dev->min_mtu = 68; -- dev->max_mtu = MAX_WIRELESS_BODY - ETH_FCS_LEN; -- - SET_NETDEV_DEV(dev, sys_dev); - - if ((rc = request_irq(dev->irq, service_interrupt, IRQF_SHARED, dev->name, dev))) { ---- a/drivers/net/wireless/cisco/airo.c -+++ b/drivers/net/wireless/cisco/airo.c -@@ -2329,6 +2329,14 @@ static int airo_set_mac_address(struct n - return 0; - } - -+static int airo_change_mtu(struct net_device *dev, int new_mtu) -+{ -+ if ((new_mtu < 68) || (new_mtu > 2400)) -+ return -EINVAL; -+ dev->mtu = new_mtu; -+ return 0; -+} -+ - static LIST_HEAD(airo_devices); - - static void add_airo_dev(struct airo_info *ai) -@@ -2648,6 +2656,7 @@ static const struct net_device_ops airo1 - .ndo_get_stats = airo_get_stats, - .ndo_set_mac_address = airo_set_mac_address, - .ndo_do_ioctl = airo_ioctl, -+ .ndo_change_mtu = airo_change_mtu, - }; - - static void wifi_setup(struct net_device *dev) -@@ -2659,8 +2668,6 @@ static void wifi_setup(struct net_device - dev->type = ARPHRD_IEEE80211; - dev->hard_header_len = ETH_HLEN; - dev->mtu = AIRO_DEF_MTU; -- dev->min_mtu = 68; -- dev->max_mtu = MIC_MSGLEN_MAX; - dev->addr_len = ETH_ALEN; - dev->tx_queue_len = 100; - -@@ -2747,6 +2754,7 @@ static const struct net_device_ops airo_ - .ndo_set_rx_mode = airo_set_multicast_list, - .ndo_set_mac_address = airo_set_mac_address, - .ndo_do_ioctl = airo_ioctl, -+ .ndo_change_mtu = airo_change_mtu, - .ndo_validate_addr = eth_validate_addr, - }; - -@@ -2758,6 +2766,7 @@ static const struct net_device_ops mpi_n - .ndo_set_rx_mode = airo_set_multicast_list, - .ndo_set_mac_address = airo_set_mac_address, - .ndo_do_ioctl = airo_ioctl, -+ .ndo_change_mtu = airo_change_mtu, - .ndo_validate_addr = eth_validate_addr, - }; - -@@ -2813,7 +2822,6 @@ static struct net_device *_init_airo_car - dev->irq = irq; - dev->base_addr = port; - dev->priv_flags &= ~IFF_TX_SKB_SHARING; -- dev->max_mtu = MIC_MSGLEN_MAX; - - SET_NETDEV_DEV(dev, dmdev); - ---- a/drivers/net/wireless/intel/ipw2x00/ipw2100.c -+++ b/drivers/net/wireless/intel/ipw2x00/ipw2100.c -@@ -6039,6 +6039,7 @@ static const struct net_device_ops ipw21 - .ndo_open = ipw2100_open, - .ndo_stop = ipw2100_close, - .ndo_start_xmit = libipw_xmit, -+ .ndo_change_mtu = libipw_change_mtu, - .ndo_tx_timeout = ipw2100_tx_timeout, - .ndo_set_mac_address = ipw2100_set_address, - .ndo_validate_addr = eth_validate_addr, -@@ -6074,8 +6075,6 @@ static struct net_device *ipw2100_alloc_ - dev->wireless_data = &priv->wireless_data; - dev->watchdog_timeo = 3 * HZ; - dev->irq = 0; -- dev->min_mtu = 68; -- dev->max_mtu = LIBIPW_DATA_LEN; - - /* NOTE: We don't use the wireless_handlers hook - * in dev as the system will start throwing WX requests ---- a/drivers/net/wireless/intel/ipw2x00/ipw2200.c -+++ b/drivers/net/wireless/intel/ipw2x00/ipw2200.c -@@ -11561,6 +11561,7 @@ static const struct net_device_ops ipw_p - .ndo_open = ipw_prom_open, - .ndo_stop = ipw_prom_stop, - .ndo_start_xmit = ipw_prom_hard_start_xmit, -+ .ndo_change_mtu = libipw_change_mtu, - .ndo_set_mac_address = eth_mac_addr, - .ndo_validate_addr = eth_validate_addr, - }; -@@ -11586,9 +11587,6 @@ static int ipw_prom_alloc(struct ipw_pri - priv->prom_net_dev->type = ARPHRD_IEEE80211_RADIOTAP; - priv->prom_net_dev->netdev_ops = &ipw_prom_netdev_ops; - -- priv->prom_net_dev->min_mtu = 68; -- priv->prom_net_dev->max_mtu = LIBIPW_DATA_LEN; -- - priv->prom_priv->ieee->iw_mode = IW_MODE_MONITOR; - SET_NETDEV_DEV(priv->prom_net_dev, &priv->pci_dev->dev); - -@@ -11621,6 +11619,7 @@ static const struct net_device_ops ipw_n - .ndo_set_rx_mode = ipw_net_set_multicast_list, - .ndo_set_mac_address = ipw_net_set_mac_address, - .ndo_start_xmit = libipw_xmit, -+ .ndo_change_mtu = libipw_change_mtu, - .ndo_validate_addr = eth_validate_addr, - }; - -@@ -11730,9 +11729,6 @@ static int ipw_pci_probe(struct pci_dev - net_dev->wireless_handlers = &ipw_wx_handler_def; - net_dev->ethtool_ops = &ipw_ethtool_ops; - -- net_dev->min_mtu = 68; -- net_dev->max_mtu = LIBIPW_DATA_LEN; -- - err = sysfs_create_group(&pdev->dev.kobj, &ipw_attribute_group); - if (err) { - IPW_ERROR("failed to create sysfs device attributes\n"); ---- a/drivers/net/wireless/intel/ipw2x00/libipw.h -+++ b/drivers/net/wireless/intel/ipw2x00/libipw.h -@@ -948,6 +948,7 @@ static inline int libipw_is_cck_rate(u8 - /* libipw.c */ - void free_libipw(struct net_device *dev, int monitor); - struct net_device *alloc_libipw(int sizeof_priv, int monitor); -+int libipw_change_mtu(struct net_device *dev, int new_mtu); - - void libipw_networks_age(struct libipw_device *ieee, unsigned long age_secs); - ---- a/drivers/net/wireless/intel/ipw2x00/libipw_module.c -+++ b/drivers/net/wireless/intel/ipw2x00/libipw_module.c -@@ -118,6 +118,15 @@ static void libipw_networks_initialize(s - &ieee->network_free_list); - } - -+int libipw_change_mtu(struct net_device *dev, int new_mtu) -+{ -+ if ((new_mtu < 68) || (new_mtu > LIBIPW_DATA_LEN)) -+ return -EINVAL; -+ dev->mtu = new_mtu; -+ return 0; -+} -+EXPORT_SYMBOL(libipw_change_mtu); -+ - struct net_device *alloc_libipw(int sizeof_priv, int monitor) - { - struct libipw_device *ieee; ---- a/drivers/net/wireless/intersil/hostap/hostap_main.c -+++ b/drivers/net/wireless/intersil/hostap/hostap_main.c -@@ -765,6 +765,16 @@ static void hostap_set_multicast_list(st - } - - -+static int prism2_change_mtu(struct net_device *dev, int new_mtu) -+{ -+ if (new_mtu < PRISM2_MIN_MTU || new_mtu > PRISM2_MAX_MTU) -+ return -EINVAL; -+ -+ dev->mtu = new_mtu; -+ return 0; -+} -+ -+ - static void prism2_tx_timeout(struct net_device *dev) - { - struct hostap_interface *iface; -@@ -803,6 +813,7 @@ static const struct net_device_ops hosta - .ndo_do_ioctl = hostap_ioctl, - .ndo_set_mac_address = prism2_set_mac_address, - .ndo_set_rx_mode = hostap_set_multicast_list, -+ .ndo_change_mtu = prism2_change_mtu, - .ndo_tx_timeout = prism2_tx_timeout, - .ndo_validate_addr = eth_validate_addr, - }; -@@ -815,6 +826,7 @@ static const struct net_device_ops hosta - .ndo_do_ioctl = hostap_ioctl, - .ndo_set_mac_address = prism2_set_mac_address, - .ndo_set_rx_mode = hostap_set_multicast_list, -+ .ndo_change_mtu = prism2_change_mtu, - .ndo_tx_timeout = prism2_tx_timeout, - .ndo_validate_addr = eth_validate_addr, - }; -@@ -827,6 +839,7 @@ static const struct net_device_ops hosta - .ndo_do_ioctl = hostap_ioctl, - .ndo_set_mac_address = prism2_set_mac_address, - .ndo_set_rx_mode = hostap_set_multicast_list, -+ .ndo_change_mtu = prism2_change_mtu, - .ndo_tx_timeout = prism2_tx_timeout, - .ndo_validate_addr = eth_validate_addr, - }; -@@ -838,8 +851,6 @@ void hostap_setup_dev(struct net_device - - iface = netdev_priv(dev); - ether_setup(dev); -- dev->min_mtu = PRISM2_MIN_MTU; -- dev->max_mtu = PRISM2_MAX_MTU; - dev->priv_flags &= ~IFF_TX_SKB_SHARING; - - /* kernel callbacks */ ---- a/drivers/net/wireless/intersil/orinoco/main.c -+++ b/drivers/net/wireless/intersil/orinoco/main.c -@@ -322,6 +322,9 @@ int orinoco_change_mtu(struct net_device - { - struct orinoco_private *priv = ndev_priv(dev); - -+ if ((new_mtu < ORINOCO_MIN_MTU) || (new_mtu > ORINOCO_MAX_MTU)) -+ return -EINVAL; -+ - /* MTU + encapsulation + header length */ - if ((new_mtu + ENCAPS_OVERHEAD + sizeof(struct ieee80211_hdr)) > - (priv->nicbuf_size - ETH_HLEN)) -@@ -2285,9 +2288,6 @@ int orinoco_if_add(struct orinoco_privat - dev->base_addr = base_addr; - dev->irq = irq; - -- dev->min_mtu = ORINOCO_MIN_MTU; -- dev->max_mtu = ORINOCO_MAX_MTU; -- - SET_NETDEV_DEV(dev, priv->dev); - ret = register_netdev(dev); - if (ret) |