Received: by 10.192.165.148 with SMTP id m20csp1104864imm; Wed, 2 May 2018 14:15:27 -0700 (PDT) X-Google-Smtp-Source: AB8JxZpaS38drU0sWFRggsvhkD7sMLeyf825VxJno8ZgZ+0MQ7TDS7EPKo4d3kMUvOlINlxde9HW X-Received: by 2002:a17:902:14cb:: with SMTP id y11-v6mr21567802plg.23.1525295727125; Wed, 02 May 2018 14:15:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525295727; cv=none; d=google.com; s=arc-20160816; b=U6khsVNUZ5PtisMIxvPHvwWZndjzhEWL2D7R9F2/jfLEYvuXhS3G04oqE9ZtjFUEOT aOVaLaAdBywh8UX3PwNwC0ghRY8w0u0qpb9e5QML7zFU2p1IEjmZFwklClGDVAkPFXfN KSJQ0LzY+/4FbChKpxdEzJvjK5Spa2VJKemn3wiZYEPoVTauAoLmAu7xNEo5PkV3LbGu A4941VoErfwPyEvSmRy+ggKCWM9CxHwQ0Pi+Dgo+UOcIiijQOLC+YwbdzY3XteggMw7I rK6AbVnOdcgwsaXlIxOOC7BPcenWr2QhsX2MLCQWOUeqpU1TwROQJm0Dm8kA+lDd/UbO zfXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=tx9JMSRzjPLrWt2sK4qFiq+A3kxt8eJbkW1rUKZcLMg=; b=gvIrjvKmGlRBGE8yeO7SyPiZhUc/hyD2Ti+yj3jpLamlI6jELiKkQl8fjzU8/S1R14 Lhu+z4JmeQyffZSm4Ul+tDTvQstAPxF6NE4q/2R+zTIv2ERDvkuEuchnhU63Thg4DhyY i4/hDpFxRE+9XpmC3Hes1EW3jQiPoV7qRanDepff7AqmrC9DMdtS6qCoip684Zek/tiK 9LHL4mUiSplp1GMr6RNS/C4JKrgO3lNVVqkeXZOTZExEZGQkl2s9OqbfQt2Gdt/02b68 9PSzSTHlLV41PUE3Ug5r824+rMHxjRy8GBtrEihSIKDu4xKE3o4JK4Td2YDSw9dFZIC9 BdmA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@infradead.org header.s=bombadil.20170209 header.b=LnLv+vvC; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c1-v6si12145024pld.510.2018.05.02.14.15.12; Wed, 02 May 2018 14:15:27 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@infradead.org header.s=bombadil.20170209 header.b=LnLv+vvC; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751532AbeEBVO4 (ORCPT + 99 others); Wed, 2 May 2018 17:14:56 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:37810 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751336AbeEBVOz (ORCPT ); Wed, 2 May 2018 17:14:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Message-Id:Date:Subject:Cc:To:From: Sender:Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=tx9JMSRzjPLrWt2sK4qFiq+A3kxt8eJbkW1rUKZcLMg=; b=LnLv+vvC9C74m13LdqtFredJw 8D4XXIRdMDIpjyoHATF0NOmhkp7X50E/TWf0eWKS2lGb40BoctH68dlG9kVWsf1US4Y8xAO0sIIK/ sPak/kzOadYs+RfmafsElxG/fKVg50wivGXc/yZvfOX0TKvRa8d/Qq/YvZXE13GQT4rDcHcyK7mlu H2GzqGSjr8EUHktlycY1fP/2RcD+keK29YXo0DwU++PYJyPB9AepAplJEAaEgTGPAE0nZNvfcXJm9 O7Yi+20eDD/zWInJxoTGkMtjpygt6fwIzMOMKP+Ol0S3zRWg6ydwSmR5IL4mm8j7ic8J16NDAw/QG nJLJO5fPg==; Received: from 089144213252.atnat0022.highway.a1.net ([89.144.213.252] helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.90_1 #2 (Red Hat Linux)) id 1fDz5Q-0007Ax-Qj; Wed, 02 May 2018 21:14:53 +0000 From: Christoph Hellwig To: viro@zeniv.linux.org.uk Cc: Avi Kivity , linux-aio@kvack.org, linux-fsdevel@vger.kernel.org, linux-api@vger.kernel.org, linux-kernel@vger.kernel.org Subject: io_pgetevents & aio fsync V4 Date: Wed, 2 May 2018 23:14:41 +0200 Message-Id: <20180502211448.18276-1-hch@lst.de> X-Mailer: git-send-email 2.17.0 X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi all, this patch adds workqueue based fsync offload. Version of this patch have been floating around for a couple years, but we now have a user with seastar used by ScyllaDB (who sponsored this work) that really wants this in addition to the aio poll support. More details are in the patch itself. Because the iocb types have been defined sine day one (and probably were supported by RHEL3) libaio already supports these calls as-is. This also pulls in the aio cleanups and io_pgetevents support previously submitted and review as part of the aio poll series. The aio poll series will be resubmitted on top of this series A git tree is available here: git://git.infradead.org/users/hch/vfs.git aio-fsync.4 Gitweb: http://git.infradead.org/users/hch/vfs.git/shortlog/refs/heads/aio-fsync.4 Changes since V3: - rebased on top of 4.17-rc3 - improved/added a few comments Changes since V2: - don't introduce a use after free for lockdep sb release tracking - set up list for cancellation before I/O submission Changes since V1: - remove a BUG_ON_ONE(is_sync_kiocb(kiocb)); - moved cancellation patches to the poll series - improve a list_empty check