123456789101112131415161718192021222324252627282930 |
- From: Wright Feng <wright.feng@broadcom.com>
- Date: Fri, 3 Jun 2016 23:31:09 +0200
- Subject: [PATCH] brcmfmac: use ndev->needed_headroom to reserve additional
- header space
- When using nmap tool with FMAC, the nmap packets were be dropped by kernel
- because the size was too short. The kernel message showed like
- "nmap: packet size is too short (42 <= 50)". It is caused by the packet
- length is shorter than ndev->hard_header_len. According to definition of
- LL_RESERVED_SPACE() and hard_header_len, we should use hard_header_len
- to reserve for L2 header, like ethernet header(ETH_HLEN) in our case and
- use needed_headroom for the additional headroom needed by hardware.
- Reviewed-by: Arend Van Spriel <arend@broadcom.com>
- Signed-off-by: Wright Feng <wright.feng@broadcom.com>
- Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
- Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
- ---
- --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
- +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/core.c
- @@ -516,7 +516,7 @@ int brcmf_net_attach(struct brcmf_if *if
- /* set appropriate operations */
- ndev->netdev_ops = &brcmf_netdev_ops_pri;
-
- - ndev->hard_header_len += drvr->hdrlen;
- + ndev->needed_headroom += drvr->hdrlen;
- ndev->ethtool_ops = &brcmf_ethtool_ops;
-
- drvr->rxsz = ndev->mtu + ndev->hard_header_len +
|