diff --git a/package/mac80211/patches/570-ath9k_bcnslot_leak.patch b/package/mac80211/patches/570-ath9k_bcnslot_leak.patch
new file mode 100644
index 0000000000000000000000000000000000000000..bbd94894ee6d841c9551a450a7dda9509c5c8f4e
--- /dev/null
+++ b/package/mac80211/patches/570-ath9k_bcnslot_leak.patch
@@ -0,0 +1,14 @@
+--- a/drivers/net/wireless/ath/ath9k/main.c
++++ b/drivers/net/wireless/ath/ath9k/main.c
+@@ -1471,10 +1471,10 @@ static void ath9k_remove_interface(struc
+ 	    (sc->sc_ah->opmode == NL80211_IFTYPE_MESH_POINT)) {
+ 		ath9k_ps_wakeup(sc);
+ 		ath9k_hw_stoptxdma(sc->sc_ah, sc->beacon.beaconq);
+-		ath_beacon_return(sc, avp);
+ 		ath9k_ps_restore(sc);
+ 	}
+ 
++	ath_beacon_return(sc, avp);
+ 	sc->sc_flags &= ~SC_OP_BEACONS;
+ 
+ 	for (i = 0; i < ARRAY_SIZE(sc->beacon.bslot); i++) {