mac80211: fix and refresh NSS support patch
This commit is contained in:
@@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
--- a/local-symbols
|
--- a/local-symbols
|
||||||
+++ b/local-symbols
|
+++ b/local-symbols
|
||||||
@@ -39,6 +39,7 @@ LIB80211_CRYPT_CCMP=
|
@@ -31,6 +31,7 @@ LIB80211_CRYPT_CCMP=
|
||||||
LIB80211_CRYPT_TKIP=
|
LIB80211_CRYPT_TKIP=
|
||||||
LIB80211_DEBUG=
|
LIB80211_DEBUG=
|
||||||
MAC80211=
|
MAC80211=
|
||||||
@@ -35,9 +35,9 @@
|
|||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
struct ieee80211_local;
|
struct ieee80211_local;
|
||||||
|
struct ieee80211_mesh_fast_tx;
|
||||||
|
|
||||||
/* Maximum number of broadcast/multicast frames to buffer when some of the
|
@@ -1118,6 +1122,12 @@ struct ieee80211_sub_if_data {
|
||||||
@@ -1097,6 +1101,12 @@ struct ieee80211_sub_if_data {
|
|
||||||
} debugfs;
|
} debugfs;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -73,7 +73,7 @@
|
|||||||
/**
|
/**
|
||||||
* DOC: Interface list locking
|
* DOC: Interface list locking
|
||||||
*
|
*
|
||||||
@@ -439,6 +446,64 @@ static int ieee80211_open(struct net_dev
|
@@ -441,6 +448,64 @@ static int ieee80211_open(struct net_dev
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -138,7 +138,7 @@
|
|||||||
static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata, bool going_down)
|
static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata, bool going_down)
|
||||||
{
|
{
|
||||||
struct ieee80211_local *local = sdata->local;
|
struct ieee80211_local *local = sdata->local;
|
||||||
@@ -800,8 +865,24 @@ static void ieee80211_teardown_sdata(str
|
@@ -802,8 +867,24 @@ static void ieee80211_teardown_sdata(str
|
||||||
ieee80211_link_stop(&sdata->deflink);
|
ieee80211_link_stop(&sdata->deflink);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -163,7 +163,7 @@
|
|||||||
ieee80211_teardown_sdata(IEEE80211_DEV_TO_SUB_IF(dev));
|
ieee80211_teardown_sdata(IEEE80211_DEV_TO_SUB_IF(dev));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -814,6 +895,9 @@ ieee80211_get_stats64(struct net_device
|
@@ -831,6 +912,9 @@ static int ieee80211_netdev_setup_tc(str
|
||||||
static const struct net_device_ops ieee80211_dataif_ops = {
|
static const struct net_device_ops ieee80211_dataif_ops = {
|
||||||
.ndo_open = ieee80211_open,
|
.ndo_open = ieee80211_open,
|
||||||
.ndo_stop = ieee80211_stop,
|
.ndo_stop = ieee80211_stop,
|
||||||
@@ -236,7 +236,7 @@
|
|||||||
/*
|
/*
|
||||||
* monitor mode reception
|
* monitor mode reception
|
||||||
*
|
*
|
||||||
@@ -2635,10 +2689,16 @@ static void ieee80211_deliver_skb_to_loc
|
@@ -2611,14 +2665,16 @@ static void ieee80211_deliver_skb_to_loc
|
||||||
ether_addr_copy(ehdr->h_dest, sdata->vif.addr);
|
ether_addr_copy(ehdr->h_dest, sdata->vif.addr);
|
||||||
|
|
||||||
/* deliver to local stack */
|
/* deliver to local stack */
|
||||||
@@ -246,7 +246,11 @@
|
|||||||
+ }
|
+ }
|
||||||
+#else
|
+#else
|
||||||
if (rx->list)
|
if (rx->list)
|
||||||
|
-#if LINUX_VERSION_IS_GEQ(4,19,0)
|
||||||
list_add_tail(&skb->list, rx->list);
|
list_add_tail(&skb->list, rx->list);
|
||||||
|
-#else
|
||||||
|
- __skb_queue_tail(rx->list, skb);
|
||||||
|
-#endif
|
||||||
else
|
else
|
||||||
netif_receive_skb(skb);
|
netif_receive_skb(skb);
|
||||||
+#endif
|
+#endif
|
||||||
@@ -267,7 +271,7 @@
|
|||||||
/* misc utils */
|
/* misc utils */
|
||||||
|
|
||||||
static __le16 ieee80211_duration(struct ieee80211_tx_data *tx,
|
static __le16 ieee80211_duration(struct ieee80211_tx_data *tx,
|
||||||
@@ -1729,6 +1734,16 @@ static bool ieee80211_tx_frags(struct ie
|
@@ -1734,6 +1739,16 @@ static bool ieee80211_tx_frags(struct ie
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -284,7 +288,7 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Since queue is stopped, queue up frames for
|
* Since queue is stopped, queue up frames for
|
||||||
@@ -4448,6 +4463,35 @@ static void ieee80211_mlo_multicast_tx(s
|
@@ -4477,6 +4492,35 @@ static void ieee80211_mlo_multicast_tx(s
|
||||||
kfree_skb(skb);
|
kfree_skb(skb);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -320,7 +324,7 @@
|
|||||||
/**
|
/**
|
||||||
* ieee80211_subif_start_xmit - netif start_xmit function for 802.3 vifs
|
* ieee80211_subif_start_xmit - netif start_xmit function for 802.3 vifs
|
||||||
* @skb: packet to be sent
|
* @skb: packet to be sent
|
||||||
@@ -4461,6 +4505,10 @@ netdev_tx_t ieee80211_subif_start_xmit(s
|
@@ -4490,6 +4534,10 @@ netdev_tx_t ieee80211_subif_start_xmit(s
|
||||||
struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev);
|
struct ieee80211_sub_if_data *sdata = IEEE80211_DEV_TO_SUB_IF(dev);
|
||||||
const struct ethhdr *eth = (void *)skb->data;
|
const struct ethhdr *eth = (void *)skb->data;
|
||||||
|
|
||||||
@@ -331,7 +335,7 @@
|
|||||||
if (likely(!is_multicast_ether_addr(eth->h_dest)))
|
if (likely(!is_multicast_ether_addr(eth->h_dest)))
|
||||||
goto normal;
|
goto normal;
|
||||||
|
|
||||||
@@ -4646,6 +4694,10 @@ netdev_tx_t ieee80211_subif_start_xmit_8
|
@@ -4675,6 +4723,10 @@ netdev_tx_t ieee80211_subif_start_xmit_8
|
||||||
struct ieee80211_key *key;
|
struct ieee80211_key *key;
|
||||||
struct sta_info *sta;
|
struct sta_info *sta;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user