From: rwhron@earthlink.net It returns sizeof(compat_ulong_t) even if put_user() faulted. 25-akpm/kernel/compat.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff -puN kernel/compat.c~compat_sys_sched_getaffinity-return-fix kernel/compat.c --- 25/kernel/compat.c~compat_sys_sched_getaffinity-return-fix Mon Jul 7 16:39:16 2003 +++ 25-akpm/kernel/compat.c Mon Jul 7 16:39:16 2003 @@ -425,11 +425,9 @@ asmlinkage int compat_sys_sched_getaffin &kernel_mask); set_fs(old_fs); - if (ret > 0) { + if (ret > 0) if (put_user(kernel_mask, user_mask_ptr)) - ret = -EFAULT; - ret = sizeof(compat_ulong_t); - } + return -EFAULT; return ret; } _