Re: aio poll and a new in-kernel poll API V12
From: Al Viro <viro@ZenIV.linux.org.uk>
Date: 2018-05-22 22:07:50
Also in:
linux-api, linux-fsdevel, lkml
From: Al Viro <viro@ZenIV.linux.org.uk>
Date: 2018-05-22 22:07:50
Also in:
linux-api, linux-fsdevel, lkml
On Tue, May 22, 2018 at 01:30:37PM +0200, Christoph Hellwig wrote:
Hi all, this series adds support for the IOCB_CMD_POLL operation to poll for the readyness of file descriptors using the aio subsystem. The API is based on patches that existed in RHAS2.1 and RHEL3, which means it already is supported by libaio. To implement the poll support efficiently new methods to poll are introduced in struct file_operations: get_poll_head and poll_mask. The first one returns a wait_queue_head to wait on (lifetime is bound by the file), and the second does a non-blocking check for the POLL* events. This allows aio poll to work without any additional context switches, unlike epoll.
I can live with that, modulo bug in #8 (see reply to that one). There's some nitpicking, but that can be dealt with in followups.