Skip to content

Commit

Permalink
rtlwifi: Improve handling of IPv6 packets
Browse files Browse the repository at this point in the history
Routine rtl_is_special_data() is supposed to identify packets that need to
use a low bit rate so that the probability of successful transmission is
high. The current version has a bug that causes all IPv6 packets to be
labelled as special, with a corresponding low rate of transmission. A
complete fix will be quite intrusive, but until that is available, all
IPv6 packets are identified as regular.

This patch also removes a magic number.

Reported-and-tested-by: Alan Fisher <acf@unixcube.org>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@vger.kernel.org> [3.18+]
Cc: Alan Fisher <acf@unixcube.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  • Loading branch information
Larry Finger authored and Kalle Valo committed Mar 3, 2015
1 parent 0ff66cf commit c8f0345
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions drivers/net/wireless/rtlwifi/base.c
Original file line number Diff line number Diff line change
Expand Up @@ -1386,8 +1386,11 @@ u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx)
}

return true;
} else if (0x86DD == ether_type) {
return true;
} else if (ETH_P_IPV6 == ether_type) {
/* TODO: Handle any IPv6 cases that need special handling.
* For now, always return false
*/
goto end;
}

end:
Expand Down

0 comments on commit c8f0345

Please sign in to comment.