tun: add VNET_LE flag
Hello Michael S. Tsirkin,
The patch e999d6ea2a4f: "tun: add VNET_LE flag" from Nov 18, 2014, leads to the following static checker warning:
drivers/net/tun.c:1694 tun_set_iff() warn: 0x17100 is larger than 16 bits
drivers/net/tun.c
1692
1693 tun->flags = (tun->flags & ~TUN_FEATURES) |
1694 (ifr->ifr_flags & TUN_FEATURES);
1695
It's complaining because the "ifr->ifr_flags" variable is a short (should it be unsigned?). The new define:
#define IFF_VNET_LE 0x10000
doesn't fit in two bytes. Other suspect looking code could be:
return __virtio16_to_cpu(q->flags & IFF_VNET_LE, val);
regards,
dan carpenter
Quoted 17 lines · Dan Carpenter
Hello Michael S. Tsirkin,
The patch
e999d6ea2a4f: "tun: addVNET_LEflag" from Nov 18, 2014, leads to the following static checker warning:drivers/net/tun.c:1694 tun_set_iff() warn: 0x17100 is larger than 16 bits
drivers/net/tun.c
1692
1693tun->flags= (tun->flags& ~TUN_FEATURES) |
1694 (ifr->ifr_flags&TUN_FEATURES);
1695It's complaining because the "
ifr->ifr_flags" variable is a short (should it be unsigned?). The new define:
Quoted 8 lines
#define
IFF_VNET_LE0x10000doesn't fit in two bytes. Other suspect looking code could be:
return __virtio16_to_cpu(q->flags & IFF_VNET_LE, val);regards,
dan carpenter
Thanks!
Of course most testing is on an LE host so it's hard to notice. I'll fix it up.
Signature · 1 line
MST