2022-03-31 04:37:05

by Charlie Sands

[permalink] [raw]
Subject: [PATCH V2] staging: r8188eu: Fix sparse endianness warnings

This patch fixes sparse warnings about the endianness of different
pieces of data in the driver.

Fixes: 15865124feed ("staging: r8188eu: introduce new core dir for
RTL8188eu driver")
Signed-off-by: Charlie Sands <[email protected]>
---
V2: Added the "fixes" line to the commit at the request of Dan Carpenter.

drivers/staging/r8188eu/core/rtw_br_ext.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/drivers/staging/r8188eu/core/rtw_br_ext.c b/drivers/staging/r8188eu/core/rtw_br_ext.c
index d68611ef22f8..ed41c4e30262 100644
--- a/drivers/staging/r8188eu/core/rtw_br_ext.c
+++ b/drivers/staging/r8188eu/core/rtw_br_ext.c
@@ -70,7 +70,7 @@ static int __nat25_add_pppoe_tag(struct sk_buff *skb, struct pppoe_tag *tag)
struct pppoe_hdr *ph = (struct pppoe_hdr *)(skb->data + ETH_HLEN);
int data_len;

- data_len = tag->tag_len + TAG_HDR_LEN;
+ data_len = be16_to_cpu(tag->tag_len) + TAG_HDR_LEN;
if (skb_tailroom(skb) < data_len)
return -1;

@@ -432,7 +432,7 @@ int nat25_db_handle(struct adapter *priv, struct sk_buff *skb, int method)
/* Handle PPPoE frame */
/*---------------------------------------------------*/
struct pppoe_hdr *ph = (struct pppoe_hdr *)(skb->data + ETH_HLEN);
- unsigned short *pMagic;
+ __be16 *pMagic;

switch (method) {
case NAT25_CHECK:
@@ -471,7 +471,7 @@ int nat25_db_handle(struct adapter *priv, struct sk_buff *skb, int method)
tag->tag_len = htons(MAGIC_CODE_LEN+RTL_RELAY_TAG_LEN+old_tag_len);

/* insert the magic_code+client mac in relay tag */
- pMagic = (unsigned short *)tag->tag_data;
+ pMagic = (__be16 *)tag->tag_data;
*pMagic = htons(MAGIC_CODE);
memcpy(tag->tag_data+MAGIC_CODE_LEN, skb->data+ETH_ALEN, ETH_ALEN);

@@ -557,9 +557,11 @@ int nat25_db_handle(struct adapter *priv, struct sk_buff *skb, int method)
struct icmp6hdr *hdr = (struct icmp6hdr *)(skb->data + ETH_HLEN + sizeof(*iph));
hdr->icmp6_cksum = 0;
hdr->icmp6_cksum = csum_ipv6_magic(&iph->saddr, &iph->daddr,
- iph->payload_len,
+ be16_to_cpu(iph->payload_len),
IPPROTO_ICMPV6,
- csum_partial((__u8 *)hdr, iph->payload_len, 0));
+ csum_partial((__u8 *)hdr,
+ be16_to_cpu(iph->payload_len),
+ 0));
}
}
}
--
2.35.1


2022-03-31 06:46:48

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH V2] staging: r8188eu: Fix sparse endianness warnings

On Wed, Mar 30, 2022 at 02:52:53PM -0400, Charlie Sands wrote:
> This patch fixes sparse warnings about the endianness of different
> pieces of data in the driver.
>
> Fixes: 15865124feed ("staging: r8188eu: introduce new core dir for
> RTL8188eu driver")

Nit, this should be all on one line or our tools get upset.

> Signed-off-by: Charlie Sands <[email protected]>
> ---
> V2: Added the "fixes" line to the commit at the request of Dan Carpenter.

My tools picked this up from the v1 patch thread, no need to resend.

thanks,

greg k-h