staging: r8712u: Fix Sparse endian warning in rtl871x_recv.c
authorLarry Finger <Larry.Finger@lwfinger.net>
Sat, 11 Feb 2017 03:30:28 +0000 (21:30 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 12 Feb 2017 12:26:55 +0000 (13:26 +0100)
Sparse reports the following:
  CHECK   drivers/staging/rtl8712/rtl871x_recv.c
drivers/staging/rtl8712/rtl871x_recv.c:657:21: warning: incorrect type in assignment (different base types)
drivers/staging/rtl8712/rtl871x_recv.c:657:21:    expected unsigned short [unsigned] [assigned] [usertype] len
drivers/staging/rtl8712/rtl871x_recv.c:657:21:    got restricted __be16 [usertype] <noident>

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8712/rtl871x_recv.c

index 147b75beea7352f6f08ddfa67848d2517b51b7ce..2ef31a4e9a6bf07c88a392c4826955a3989a4b34 100644 (file)
@@ -654,8 +654,9 @@ sint r8712_wlanhdr_to_ethhdr(union recv_frame *precvframe)
        memcpy(ptr, pattrib->dst, ETH_ALEN);
        memcpy(ptr + ETH_ALEN, pattrib->src, ETH_ALEN);
        if (!bsnaphdr) {
-               len = htons(len);
-               memcpy(ptr + 12, &len, 2);
+               __be16 be_tmp = htons(len);
+
+               memcpy(ptr + 12, &be_tmp, 2);
        }
        return _SUCCESS;
 }