Re: [RFC] aio: remove retry and cancel

2012-10-16 Thread Zach Brown
Not all IOs will complete within a bounded amount of time. Think of things like pipes, network send/receive, even the USB gadget code. Yes, I know. That's the theoretical position. But reality doesn't match that view. People aren't using it. If the usb gadget code can do without then the

Re: [RFC] aio: remove retry and cancel

2012-10-16 Thread Zach Brown
Gadget cannot. The code has no control over when a request completes. Think of things like talking to a USB serial port or keyboard directly. Well, boo. That'd do it. The patch was crossing its fingers for the usb reqs to complete promptly :). - z -- To unsubscribe from this list: send

[RFC] aio: remove retry and cancel

2012-10-15 Thread Zach Brown
The possibility of removing retry and cancelation came up a few times plumbers this year. I finally gave it a try. Removing retry is a good iea. It's of little value because retry happens in a kernel thread, not in the submitter's task. I'm ambivalent about removing cancelation. The code is

[PATCH 2/5] aio: remove dead code from aio.h

2012-10-15 Thread Zach Brown
Signed-off-by: Zach Brown z...@redhat.com --- include/linux/aio.h | 24 1 file changed, 24 deletions(-) diff --git a/include/linux/aio.h b/include/linux/aio.h index 31ff6db..b46a09f 100644 --- a/include/linux/aio.h +++ b/include/linux/aio.h @@ -9,44 +9,22 @@ #include

[PATCH 1/5] mm: remove old aio use_mm() comment

2012-10-15 Thread Zach Brown
use_mm() is used in more places than just aio. There's no need to mention callers when describing the function. Signed-off-by: Zach Brown z...@redhat.com --- mm/mmu_context.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/mm/mmu_context.c b/mm/mmu_context.c index 3dcfaf4..8a8cd02 100644

[PATCH 3/5] gadget: remove only user of aio retry and cancel

2012-10-15 Thread Zach Brown
stops the ability to cancel pending IOs. This is safe in principle because applications always had to deal with the possibility of the IO finishing before the cancel was attempted. My hope is that cancelation is not heavily used. Signed-off-by: Zach Brown z...@redhat.com --- drivers/usb/gadget

[PATCH 5/5] aio: remove dead cancellation code

2012-10-15 Thread Zach Brown
This removes the aio cancel infrastructure now that nothing in-tree is setting ki_cancel. It maintains the current behaviour of returning -EAGAIN on cancel attempts. The most significant benefit of this is removing the serialization of the list of active iocbs during submission. It'll be easier

[PATCH 4/5] aio: remove retry-based AIO

2012-10-15 Thread Zach Brown
This removes the retry-based AIO infrastructure now that nothing in tree is using it. We want to remove retry-based AIO because it is fundemantally unsafe. It retries IO submission from a kernel thread that has only assumed the mm of the submitting task. All other task_struct references in the