summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWendy Cheng <wcheng@redhat.com>2005-09-10 00:02:08 +0400
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-10 00:57:32 +0400
commit8f58202bf6b915656e116ece3bc4ace14bfe533a (patch)
treea50d0a3e3b1f7593557fa06379ac4b284717e87c
parent6f519165a97924ab3eeb99f388718d12ff97f1f4 (diff)
downloadlinux-8f58202bf6b915656e116ece3bc4ace14bfe533a.tar.xz
[PATCH] change io_cancel return code for no cancel case
Note that other than few exceptions, most of the current filesystem and/or drivers do not have aio cancel specifically defined (kiob->ki_cancel field is mostly NULL). However, sys_io_cancel system call universally sets return code to -EAGAIN. This gives applications a wrong impression that this call is implemented but just never works. We have customer inquires about this issue. Changed by Benjamin LaHaise to EINVAL instead of ENOSYS Signed-off-by: S. Wendy Cheng <wcheng@redhat.com> Acked-by: Benjamin LaHaise <bcrl@kvack.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--fs/aio.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/aio.c b/fs/aio.c
index 4f641abac3c0..769791df36b4 100644
--- a/fs/aio.c
+++ b/fs/aio.c
@@ -1673,7 +1673,7 @@ asmlinkage long sys_io_cancel(aio_context_t ctx_id, struct iocb __user *iocb,
ret = -EFAULT;
}
} else
- printk(KERN_DEBUG "iocb has no cancel operation\n");
+ ret = -EINVAL;
put_ioctx(ctx);