351-0012-brcmfmac-fix-skb-priority-handling.patch 1.1 KB

12345678910111213141516171819202122232425262728
  1. From: Hante Meuleman <hante.meuleman@broadcom.com>
  2. Date: Fri, 3 Jun 2016 23:31:07 +0200
  3. Subject: [PATCH] brcmfmac: fix skb priority handling
  4. SKBs can come with a prioriy. Currently a priority of 0..7 is
  5. assumed. But this assumption is incorrect. To fix this any
  6. priority of 0 or higher then 7 will be adjusted by calling
  7. cfg80211_classify8021d
  8. Reviewed-by: Arend Van Spriel <arend@broadcom.com>
  9. Reviewed-by: Franky Lin <franky.lin@broadcom.com>
  10. Reviewed-by: Pieter-Paul Giesberts <pieter-paul.giesberts@broadcom.com>
  11. Signed-off-by: Hante Meuleman <hante.meuleman@broadcom.com>
  12. Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
  13. Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  14. ---
  15. --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c
  16. +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwsignal.c
  17. @@ -2101,7 +2101,7 @@ int brcmf_fws_process_skb(struct brcmf_i
  18. brcmf_dbg(DATA, "tx proto=0x%X\n", ntohs(eh->h_proto));
  19. /* determine the priority */
  20. - if (!skb->priority)
  21. + if ((skb->priority == 0) || (skb->priority > 7))
  22. skb->priority = cfg80211_classify8021d(skb, NULL);
  23. drvr->tx_multicast += !!multicast;