Re: [PATCH v2 3/5] staging: r8188eu: incorrect type in csum_ipv6_magic
From: Larry Finger <hidden>
Date: 2021-08-20 21:48:40
Also in:
lkml
On 8/19/21 3:17 AM, Aakash Hemadri wrote:
quoted hunk ↗ jump to hunk
Fix sparse warning:quoted
rtw_br_ext.c:771:84: got restricted __be16 [usertype] payload_len rtw_br_ext.c:773:110: warning: incorrect type in argument 2(different base types)quoted
rtw_br_ext.c:773:110: expected int len rtw_br_ext.c:773:110: got restricted __be16 [usertype] payload_lencsum_ipv6_magic and csum_partial expect int len not __be16, use ntohs() Signed-off-by: Aakash Hemadri <redacted> --- drivers/staging/r8188eu/core/rtw_br_ext.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)diff --git a/drivers/staging/r8188eu/core/rtw_br_ext.c b/drivers/staging/r8188eu/core/rtw_br_ext.c index 6a0462ce6230..d4acf02ca64f 100644 --- a/drivers/staging/r8188eu/core/rtw_br_ext.c +++ b/drivers/staging/r8188eu/core/rtw_br_ext.c@@ -615,9 +615,9 @@ 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, + ntohs(iph->payload_len), IPPROTO_ICMPV6, - csum_partial((__u8 *)hdr, iph->payload_len, 0)); + csum_partial((__u8 *)hdr, ntohs(iph->payload_len), 0)); } } }
This patch is correct. Again, I like be16_to_cpu() better than ntohs(), but that is not a deal breaker. The kernel is split on the usage. Larry