diff options
Diffstat (limited to 'fs/compat_ioctl.c')
| -rw-r--r-- | fs/compat_ioctl.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c index 155e612635f1..e28a74203f3b 100644 --- a/fs/compat_ioctl.c +++ b/fs/compat_ioctl.c | |||
| @@ -798,13 +798,16 @@ static int routing_ioctl(unsigned int fd, unsigned int cmd, unsigned long arg) | |||
| 798 | r = (void *) &r4; | 798 | r = (void *) &r4; |
| 799 | } | 799 | } |
| 800 | 800 | ||
| 801 | if (ret) | 801 | if (ret) { |
| 802 | return -EFAULT; | 802 | ret = -EFAULT; |
| 803 | goto out; | ||
| 804 | } | ||
| 803 | 805 | ||
| 804 | set_fs (KERNEL_DS); | 806 | set_fs (KERNEL_DS); |
| 805 | ret = sys_ioctl (fd, cmd, (unsigned long) r); | 807 | ret = sys_ioctl (fd, cmd, (unsigned long) r); |
| 806 | set_fs (old_fs); | 808 | set_fs (old_fs); |
| 807 | 809 | ||
| 810 | out: | ||
| 808 | if (mysock) | 811 | if (mysock) |
| 809 | sockfd_put(mysock); | 812 | sockfd_put(mysock); |
| 810 | 813 | ||
