Lin Feng Shen d64b1c878f [PATCH] NFS: fix error handling on access_ok in compat_sys_nfsservctl
Functions compat_nfs_svc_trans, compat_nfs_clnt_trans,
compat_nfs_exp_trans, compat_nfs_getfd_trans and compat_nfs_getfs_trans,
which are called by compat_sys_nfsservctl(fs/compat.c), don't handle the
return value of access_ok properly.  access_ok return 1 when the addr is
valid, and 0 when it's not, but these functions have the reversed
understanding.  When the address is valid, they always return -EFAULT to
compat_sys_nfsservctl.

An example is to run /usr/sbin/rpc.nfsd(32bit program on Power5).  It
doesn't function as expected.  strace showes that nfsservctl returns
-EFAULT.

The patch fixes this by correcting the error handling on the return value
of access_ok in the five functions.

Signed-off-by: Lin Feng Shen <shenlinf@cn.ibm.com>
Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
Acked-by: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-05-21 12:59:16 -07:00
..
2006-05-15 11:20:56 -07:00
2006-03-31 12:18:51 -08:00
2006-05-15 11:20:58 -07:00
2006-04-19 12:43:47 -04:00
2006-03-31 12:18:55 -08:00
2006-03-24 07:33:19 -08:00
2006-04-19 09:13:51 -07:00
2006-04-22 09:19:53 -07:00
2006-04-02 13:39:21 +02:00
2006-04-02 13:40:13 +02:00
2006-03-31 12:18:55 -08:00
2006-01-11 18:42:13 -08:00
2006-01-10 08:01:25 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-04-02 13:36:13 +02:00
2006-01-08 20:12:40 -08:00
2006-04-02 13:37:19 +02:00
2006-04-11 13:53:33 +02:00
2005-10-30 17:37:32 -08:00
2006-04-02 13:38:18 +02:00
2006-01-11 18:42:13 -08:00
2006-01-11 18:42:13 -08:00
2006-05-08 08:07:17 -07:00
2006-03-28 09:16:08 -08:00
2006-03-24 07:33:19 -08:00
2006-05-15 11:20:54 -07:00
2006-03-24 07:33:24 -08:00
2005-11-07 18:18:11 -08:00
2005-04-16 15:20:36 -07:00
2006-03-23 07:38:11 -08:00
2006-03-23 07:38:11 -08:00
2006-03-23 07:38:12 -08:00
2006-04-28 21:04:59 +10:00
2006-03-26 08:56:55 -08:00
2005-04-16 15:20:36 -07:00