]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/commit - include/linux/aio.h
aio: io_cancel() no longer returns the io_event
authorKent Overstreet <koverstreet@google.com>
Mon, 13 May 2013 21:45:08 +0000 (14:45 -0700)
committerBenjamin LaHaise <bcrl@kvack.org>
Tue, 30 Jul 2013 15:53:11 +0000 (11:53 -0400)
commitbec68faaf3ba74ed0dcd5dc3a881b30aec542973
treefc8704d99fea0108346de7c1ca2500ac7199f1ae
parent723be6e39d14254bb5bb9f422b434566d359fa6e
aio: io_cancel() no longer returns the io_event

Originally, io_event() was documented to return the io_event if
cancellation succeeded - the io_event wouldn't be delivered via the ring
buffer like it normally would.

But this isn't what the implementation was actually doing; the only
driver implementing cancellation, the usb gadget code, never returned an
io_event in its cancel function. And aio_complete() was recently changed
to no longer suppress event delivery if the kiocb had been cancelled.

This gets rid of the unused io_event argument to kiocb_cancel() and
kiocb->ki_cancel(), and changes io_cancel() to return -EINPROGRESS if
kiocb->ki_cancel() returned success.

Also tweak the refcounting in kiocb_cancel() to make more sense.

Signed-off-by: Kent Overstreet <koverstreet@google.com>
Cc: Zach Brown <zab@redhat.com>
Cc: Felipe Balbi <balbi@ti.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Mark Fasheh <mfasheh@suse.com>
Cc: Joel Becker <jlbec@evilplan.org>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Asai Thambi S P <asamymuthupa@micron.com>
Cc: Selvan Mani <smani@micron.com>
Cc: Sam Bradshaw <sbradshaw@micron.com>
Cc: Jeff Moyer <jmoyer@redhat.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Benjamin LaHaise <bcrl@kvack.org>
Signed-off-by: Benjamin LaHaise <bcrl@kvack.org>
drivers/usb/gadget/inode.c
fs/aio.c
include/linux/aio.h