Return-Path: Received: from mail-pl1-f195.google.com ([209.85.214.195]:41877 "EHLO mail-pl1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726065AbeLGWUX (ORCPT ); Fri, 7 Dec 2018 17:20:23 -0500 Received: by mail-pl1-f195.google.com with SMTP id u6so2424574plm.8 for ; Fri, 07 Dec 2018 14:20:23 -0800 (PST) From: Jens Axboe To: linux-block@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-aio@kvack.org Cc: hch@lst.de, jmoyer@redhat.com, clm@fb.com Subject: [PATCHSET v6] Support for polled aio (and more) Date: Fri, 7 Dec 2018 15:19:50 -0700 Message-Id: <20181207222016.29387-1-axboe@kernel.dk> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: For the grand introduction to this feature, see my original posting here: https://lore.kernel.org/linux-block/20181117235317.7366-1-axboe@kernel.dk/ and refer to the previous postings of this patchset for whatever features were added there. Particularly v4 has some performance results: https://lore.kernel.org/linux-block/20181130165646.27341-1-axboe@kernel.dk/ No new features in this version, I think we've got what we need. Just a collection of fixes. Especially interesting is probably that XFS is tested in all configurations now, it works with both IO polling and fixed user buffers. Find it here for your cgit browsing: http://git.kernel.dk/cgit/linux-block/log/?h=aio-poll or clone/pull from this branch: git://git.kernel.dk/linux-block aio-poll Since v5 - Correct spin/no-spin condition for polling - Add some comments - Fix missing io_event_ring(2) if !CONFIG_AIO - Make sure XFS works for all cases - Fix cq/sq ring sizing - Make cq/sq ring work with non-polled IO - Make cq/sq ring work without fixed buffers - Ensure that io_ring_enter() doesn't race with kill_ioctx() - Rebase on top of for-4.21/block Documentation/filesystems/vfs.txt | 3 + arch/x86/entry/syscalls/syscall_64.tbl | 2 + block/bio.c | 33 +- fs/aio.c | 1538 +++++++++++++++++++++--- fs/block_dev.c | 34 +- fs/file.c | 15 +- fs/file_table.c | 10 +- fs/gfs2/file.c | 2 + fs/iomap.c | 57 +- fs/xfs/xfs_file.c | 1 + include/linux/bio.h | 1 + include/linux/blk_types.h | 2 + include/linux/file.h | 2 + include/linux/fs.h | 5 +- include/linux/iomap.h | 1 + include/linux/syscalls.h | 5 + include/uapi/asm-generic/unistd.h | 4 +- include/uapi/linux/aio_abi.h | 32 + kernel/sys_ni.c | 2 + 19 files changed, 1552 insertions(+), 197 deletions(-) -- Jens Axboe