git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
KVM: unbreak userspace that does not sets tss address
[pandora-kernel.git]
/
net
/
socket.c
diff --git
a/net/socket.c
b/net/socket.c
index
9fa1e3b
..
937d0fc
100644
(file)
--- a/
net/socket.c
+++ b/
net/socket.c
@@
-2648,7
+2648,8
@@
static int bond_ioctl(struct net *net, unsigned int cmd,
old_fs = get_fs();
set_fs(KERNEL_DS);
old_fs = get_fs();
set_fs(KERNEL_DS);
- err = dev_ioctl(net, cmd, &kifr);
+ err = dev_ioctl(net, cmd,
+ (struct ifreq __user __force *) &kifr);
set_fs(old_fs);
return err;
set_fs(old_fs);
return err;
@@
-2757,7
+2758,7
@@
static int compat_sioc_ifmap(struct net *net, unsigned int cmd,
old_fs = get_fs();
set_fs(KERNEL_DS);
old_fs = get_fs();
set_fs(KERNEL_DS);
- err = dev_ioctl(net, cmd, (void
__user
*)&ifr);
+ err = dev_ioctl(net, cmd, (void
__user __force
*)&ifr);
set_fs(old_fs);
if (cmd == SIOCGIFMAP && !err) {
set_fs(old_fs);
if (cmd == SIOCGIFMAP && !err) {
@@
-2862,7
+2863,8
@@
static int routing_ioctl(struct net *net, struct socket *sock,
ret |= __get_user(rtdev, &(ur4->rt_dev));
if (rtdev) {
ret |= copy_from_user(devname, compat_ptr(rtdev), 15);
ret |= __get_user(rtdev, &(ur4->rt_dev));
if (rtdev) {
ret |= copy_from_user(devname, compat_ptr(rtdev), 15);
- r4.rt_dev = devname; devname[15] = 0;
+ r4.rt_dev = (char __user __force *)devname;
+ devname[15] = 0;
} else
r4.rt_dev = NULL;
} else
r4.rt_dev = NULL;