|
@@ -849,11 +849,13 @@ segment:
|
|
if (tcp_payload_len > mss) {
|
|
if (tcp_payload_len > mss) {
|
|
skb_shinfo(tmp)->gso_size = mss;
|
|
skb_shinfo(tmp)->gso_size = mss;
|
|
} else {
|
|
} else {
|
|
- qc = ieee80211_get_qos_ctl((void *)tmp->data);
|
|
|
|
|
|
+ if (ieee80211_is_data_qos(hdr->frame_control)) {
|
|
|
|
+ qc = ieee80211_get_qos_ctl((void *)tmp->data);
|
|
|
|
|
|
- if (ipv4)
|
|
|
|
- ip_send_check(ip_hdr(tmp));
|
|
|
|
- *qc &= ~IEEE80211_QOS_CTL_A_MSDU_PRESENT;
|
|
|
|
|
|
+ if (ipv4)
|
|
|
|
+ ip_send_check(ip_hdr(tmp));
|
|
|
|
+ *qc &= ~IEEE80211_QOS_CTL_A_MSDU_PRESENT;
|
|
|
|
+ }
|
|
skb_shinfo(tmp)->gso_size = 0;
|
|
skb_shinfo(tmp)->gso_size = 0;
|
|
}
|
|
}
|
|
|
|
|