Message ID | 20170211033030.28827-6-Larry.Finger@lwfinger.net |
---|---|
State | Not Applicable, archived |
Delegated to: | David Miller |
Headers | show |
From: Larry Finger > Sent: 11 February 2017 03:30 > 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> > --- > drivers/staging/rtl8712/rtl871x_recv.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/staging/rtl8712/rtl871x_recv.c b/drivers/staging/rtl8712/rtl871x_recv.c > index 147b75b..2ef31a4 100644 > --- a/drivers/staging/rtl8712/rtl871x_recv.c > +++ b/drivers/staging/rtl8712/rtl871x_recv.c > @@ -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); Just do: ptr[12] = len << 8; ptr[13] = len; David
diff --git a/drivers/staging/rtl8712/rtl871x_recv.c b/drivers/staging/rtl8712/rtl871x_recv.c index 147b75b..2ef31a4 100644 --- a/drivers/staging/rtl8712/rtl871x_recv.c +++ b/drivers/staging/rtl8712/rtl871x_recv.c @@ -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; }
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> --- drivers/staging/rtl8712/rtl871x_recv.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)