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

Reply via email to