mirror of https://gitee.com/openkylin/linux.git
ethtool: fix sparse warning
Fixes sparse complaints about dropping __user in casts. warning: cast removes address space of expression Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
b2748267d6
commit
954b124453
18
net/socket.c
18
net/socket.c
|
@ -2837,7 +2837,7 @@ static int ethtool_ioctl(struct net *net, struct compat_ifreq __user *ifr32)
|
||||||
}
|
}
|
||||||
|
|
||||||
ifr = compat_alloc_user_space(buf_size);
|
ifr = compat_alloc_user_space(buf_size);
|
||||||
rxnfc = (void *)ifr + ALIGN(sizeof(struct ifreq), 8);
|
rxnfc = (void __user *)ifr + ALIGN(sizeof(struct ifreq), 8);
|
||||||
|
|
||||||
if (copy_in_user(&ifr->ifr_name, &ifr32->ifr_name, IFNAMSIZ))
|
if (copy_in_user(&ifr->ifr_name, &ifr32->ifr_name, IFNAMSIZ))
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
|
@ -2861,12 +2861,12 @@ static int ethtool_ioctl(struct net *net, struct compat_ifreq __user *ifr32)
|
||||||
offsetof(struct ethtool_rxnfc, fs.ring_cookie));
|
offsetof(struct ethtool_rxnfc, fs.ring_cookie));
|
||||||
|
|
||||||
if (copy_in_user(rxnfc, compat_rxnfc,
|
if (copy_in_user(rxnfc, compat_rxnfc,
|
||||||
(void *)(&rxnfc->fs.m_ext + 1) -
|
(void __user *)(&rxnfc->fs.m_ext + 1) -
|
||||||
(void *)rxnfc) ||
|
(void __user *)rxnfc) ||
|
||||||
copy_in_user(&rxnfc->fs.ring_cookie,
|
copy_in_user(&rxnfc->fs.ring_cookie,
|
||||||
&compat_rxnfc->fs.ring_cookie,
|
&compat_rxnfc->fs.ring_cookie,
|
||||||
(void *)(&rxnfc->fs.location + 1) -
|
(void __user *)(&rxnfc->fs.location + 1) -
|
||||||
(void *)&rxnfc->fs.ring_cookie) ||
|
(void __user *)&rxnfc->fs.ring_cookie) ||
|
||||||
copy_in_user(&rxnfc->rule_cnt, &compat_rxnfc->rule_cnt,
|
copy_in_user(&rxnfc->rule_cnt, &compat_rxnfc->rule_cnt,
|
||||||
sizeof(rxnfc->rule_cnt)))
|
sizeof(rxnfc->rule_cnt)))
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
|
@ -2878,12 +2878,12 @@ static int ethtool_ioctl(struct net *net, struct compat_ifreq __user *ifr32)
|
||||||
|
|
||||||
if (convert_out) {
|
if (convert_out) {
|
||||||
if (copy_in_user(compat_rxnfc, rxnfc,
|
if (copy_in_user(compat_rxnfc, rxnfc,
|
||||||
(const void *)(&rxnfc->fs.m_ext + 1) -
|
(const void __user *)(&rxnfc->fs.m_ext + 1) -
|
||||||
(const void *)rxnfc) ||
|
(const void __user *)rxnfc) ||
|
||||||
copy_in_user(&compat_rxnfc->fs.ring_cookie,
|
copy_in_user(&compat_rxnfc->fs.ring_cookie,
|
||||||
&rxnfc->fs.ring_cookie,
|
&rxnfc->fs.ring_cookie,
|
||||||
(const void *)(&rxnfc->fs.location + 1) -
|
(const void __user *)(&rxnfc->fs.location + 1) -
|
||||||
(const void *)&rxnfc->fs.ring_cookie) ||
|
(const void __user *)&rxnfc->fs.ring_cookie) ||
|
||||||
copy_in_user(&compat_rxnfc->rule_cnt, &rxnfc->rule_cnt,
|
copy_in_user(&compat_rxnfc->rule_cnt, &rxnfc->rule_cnt,
|
||||||
sizeof(rxnfc->rule_cnt)))
|
sizeof(rxnfc->rule_cnt)))
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
|
|
Loading…
Reference in New Issue