From: Kirill Korotaev Date: Fri, 9 Sep 2005 09:59:48 +0000 (+0400) Subject: [PATCH] Lost sockfd_put() in routing_ioctl() X-Git-Tag: v2.6.14-rc1~263 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d99901d6fdfb4098b9996de89ffbbae890e08288;p=linux-2.6 [PATCH] Lost sockfd_put() in routing_ioctl() This patch adds lost sockfd_put() in 32bit compat rounting_ioctl() on 64bit platforms Signed-Off-By: Kirill Korotaev Signed-Off-By: Maxim Giryaev Signed-off-By: Linus Torvalds --- diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c index 155e612635..e28a74203f 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) r = (void *) &r4; } - if (ret) - return -EFAULT; + if (ret) { + ret = -EFAULT; + goto out; + } set_fs (KERNEL_DS); ret = sys_ioctl (fd, cmd, (unsigned long) r); set_fs (old_fs); +out: if (mysock) sockfd_put(mysock);