Message ID | 20190507145201.xcu4dv7rjc3a3nhg@angus.ind.wpi.edu (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Johannes Berg |
Headers | show |
Series | ath9k on ASUS X202E hangs after 4.20.13 | expand |
diff -urb '--exclude=.git' kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/drivers/phy/qualcomm/phy-ath79-usb.c kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/drivers/phy/qualcomm/phy-ath79-usb.c --- kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/drivers/phy/qualcomm/phy-ath79-usb.c 2018-12-23 18:55:59.000000000 -0500 +++ kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/drivers/phy/qualcomm/phy-ath79-usb.c 2019-04-15 17:47:40.605610254 -0400 @@ -31,7 +31,7 @@ err = reset_control_deassert(priv->reset); if (err && priv->no_suspend_override) - reset_control_assert(priv->no_suspend_override); + reset_control_deassert(priv->no_suspend_override); return err; } @@ -69,7 +69,7 @@ if (!priv) return -ENOMEM; - priv->reset = devm_reset_control_get(&pdev->dev, "usb-phy"); + priv->reset = devm_reset_control_get(&pdev->dev, "phy"); if (IS_ERR(priv->reset)) return PTR_ERR(priv->reset); diff -urb '--exclude=.git' kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/include/linux/if_arp.h kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/include/linux/if_arp.h --- kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/include/linux/if_arp.h 2018-12-23 18:55:59.000000000 -0500 +++ kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/include/linux/if_arp.h 2019-04-15 17:47:40.889617050 -0400 @@ -54,6 +54,7 @@ case ARPHRD_IPGRE: case ARPHRD_VOID: case ARPHRD_NONE: + case ARPHRD_RAWIP: return false; default: return true; diff -urb '--exclude=.git' kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/net/mac80211/cfg.c kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/net/mac80211/cfg.c --- kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/net/mac80211/cfg.c 2019-04-15 17:43:06.394863881 -0400 +++ kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/net/mac80211/cfg.c 2019-04-15 17:47:41.034620519 -0400 @@ -1494,6 +1494,10 @@ if (params->sta_flags_set & BIT(NL80211_STA_FLAG_TDLS_PEER)) sta->sta.tdls = true; + if (sta->sta.tdls && sdata->vif.type == NL80211_IFTYPE_STATION && + !sdata->u.mgd.associated) + return -EINVAL; + err = sta_apply_parameters(local, sta, params); if (err) { sta_info_free(local, sta); diff -urb '--exclude=.git' kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/net/mac80211/rx.c kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/net/mac80211/rx.c --- kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/net/mac80211/rx.c 2019-04-15 17:43:06.397863955 -0400 +++ kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/net/mac80211/rx.c 2019-04-15 17:47:41.038620615 -0400 @@ -231,7 +231,7 @@ struct ieee80211_hdr_3addr hdr; u8 category; u8 action_code; - } __packed action; + } __packed __aligned(2) action; if (!sdata) return; @@ -2720,7 +2720,9 @@ skb_set_queue_mapping(skb, q); if (!--mesh_hdr->ttl) { - IEEE80211_IFSTA_MESH_CTR_INC(ifmsh, dropped_frames_ttl); + if (!is_multicast_ether_addr(hdr->addr1)) + IEEE80211_IFSTA_MESH_CTR_INC(ifmsh, + dropped_frames_ttl); goto out; } diff -urb '--exclude=.git' kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/net/wireless/reg.c kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/net/wireless/reg.c --- kernel-4.20.13-200.fc29/kernel-4.20.fc29/linux-4.20.13-200.fc29.x86_64/net/wireless/reg.c 2018-12-23 18:55:59.000000000 -0500 +++ kernel-4.20.14-200.fc29/kernel-4.20.fc29/linux-4.20.14-200.fc29.x86_64/net/wireless/reg.c 2019-04-15 17:47:41.086621763 -0400 @@ -1255,7 +1255,7 @@ * definitions (the "2.4 GHz band", the "5 GHz band" and the "60GHz band"), * however it is safe for now to assume that a frequency rule should not be * part of a frequency's band if the start freq or end freq are off by more - * than 2 GHz for the 2.4 and 5 GHz bands, and by more than 10 GHz for the + * than 2 GHz for the 2.4 and 5 GHz bands, and by more than 20 GHz for the * 60 GHz band. * This resolution can be lowered and should be considered as we add * regulatory rule support for other "bands". @@ -1270,7 +1270,7 @@ * with the Channel starting frequency above 45 GHz. */ u32 limit = freq_khz > 45 * ONE_GHZ_IN_KHZ ? - 10 * ONE_GHZ_IN_KHZ : 2 * ONE_GHZ_IN_KHZ; + 20 * ONE_GHZ_IN_KHZ : 2 * ONE_GHZ_IN_KHZ; if (abs(freq_khz - freq_range->start_freq_khz) <= limit) return true; if (abs(freq_khz - freq_range->end_freq_khz) <= limit)