El 14/02/17 a las 10:24, maomao xu escribió:
drivers/staging/gdm724x/gdm_lte.c:311:39: warning: incorrect type in assignment
(different base types)
drivers/staging/gdm724x/gdm_lte.c:311:39: expected restricted __sum16
[addressable] [assigned] [usertype] icmp6_cksum
drivers/staging/gdm724x/gdm_lte.c:311:39: got int
Signed-off-by: maomao xu <albert008...@gmail.com>
diff --git a/drivers/staging/gdm724x/gdm_lte.c
b/drivers/staging/gdm724x/gdm_lte.c
index a3e046c..ddec6d0 100644
--- a/drivers/staging/gdm724x/gdm_lte.c
+++ b/drivers/staging/gdm724x/gdm_lte.c
@@ -308,7 +308,7 @@ static int gdm_lte_emulate_ndp(struct sk_buff *skb_in, u32
nic_type)
memcpy(icmp_na + sizeof(struct icmp6hdr), &na,
sizeof(struct neighbour_advertisement));
- icmp6_out.icmp6_cksum = icmp6_checksum(&ipv6_out,
+ icmp6_out.icmp6_cksum = (__force
__sum16)icmp6_checksum(&ipv6_out,
(u16 *)icmp_na, sizeof(icmp_na));
} else {
return -1;
This is not correct. You should use the kernel checksum functions in
icmp6_checksum. I have a patch ready to be submitted.
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel