From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 34D68C7EE32 for ; Wed, 31 May 2023 07:50:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A22F06B0072; Wed, 31 May 2023 03:50:48 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9D3F86B0074; Wed, 31 May 2023 03:50:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 89C9A900002; Wed, 31 May 2023 03:50:48 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 7A7436B0072 for ; Wed, 31 May 2023 03:50:48 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 342AC1A0275 for ; Wed, 31 May 2023 07:50:48 +0000 (UTC) X-FDA: 80849778576.12.91AEEDC Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf11.hostedemail.com (Postfix) with ESMTP id 346C94001B for ; Wed, 31 May 2023 07:50:45 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=Yxz+Irdk; spf=none (imf11.hostedemail.com: domain of BATV+b81a8c9a6d22e8bb2302+7220+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+b81a8c9a6d22e8bb2302+7220+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1685519446; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=jJPnuBiGR2n19tJuPZry0IPJFMxKuU2HE9kGOltuLHo=; b=h5xaXUiffmCuCAyM+xr4PBC8W18NDv0e3k0Bmzp6+AO07BIWeskhxVIOIObgSE0ofZyuBi YvbjW0uz1BfF0AhfRfNbIujJbIIdZO4Vhefp3kLhu8/aqd32Xfz727phjkSLkvpIiMoadK 9ljAQmdzDI1wc0uJpxFbJkZI8QaMlKI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1685519446; a=rsa-sha256; cv=none; b=ZwZk/zAw3W/evr5na0Ww00i/FHXQ7H5tN76FEUJuJ7fiLNzSU1ys/tzrcfLBUlIfvgbDl6 9W5TzDxNshWpwv/GjGU1W7t1vXP5KW8pNRdr60zedU3i1HhTQhTGF265oPJLKY1BboCxdF gD05dYFAWjCraGw11Jt6GGvbDPy7DVA= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=Yxz+Irdk; spf=none (imf11.hostedemail.com: domain of BATV+b81a8c9a6d22e8bb2302+7220+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+b81a8c9a6d22e8bb2302+7220+infradead.org+hch@bombadil.srs.infradead.org; dmarc=none DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:In-Reply-To:References; bh=jJPnuBiGR2n19tJuPZry0IPJFMxKuU2HE9kGOltuLHo=; b=Yxz+IrdkKtwMH/+W2AIA2hDZP4 BW5WTZg+WZNHKy3JdbJPtWPFSxxjvV7oKc/411kcCRb9vJc5Tgwwl2MC54UyhtTNP8AJiFnuvDNLq AUCRCGHVDrHGJkWLf0zoL+JSbHNhCHI1UE67VK40mWeqaHCDGfjIMAJUwG8G6/QgSe6r9G5DBaLEf 7vG6ItR/Eis4NmzuGqR5c+I5TZ0oDNlIELQLsHe1nW8KFDAHKsC6LwPdkMaTGR596PM12/6U1m8D+ pKRYTe/p9z9FWdXtiH1aZFo34pPLBdl7/HyVJdqScDZH9+o2LIxDTa9hqlz+YuagKbcV8C9VX+fwj 1JItH9GA==; Received: from [2001:4bb8:182:6d06:f5c3:53d7:b5aa:b6a7] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.96 #2 (Red Hat Linux)) id 1q4GbF-00GVmb-0H; Wed, 31 May 2023 07:50:29 +0000 From: Christoph Hellwig To: Matthew Wilcox Cc: Jens Axboe , Xiubo Li , Ilya Dryomov , Alexander Viro , Christian Brauner , "Theodore Ts'o" , Jaegeuk Kim , Chao Yu , Miklos Szeredi , Andreas Gruenbacher , "Darrick J. Wong" , Trond Myklebust , Anna Schumaker , Damien Le Moal , Andrew Morton , linux-block@vger.kernel.org, ceph-devel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net, cluster-devel@redhat.com, linux-xfs@vger.kernel.org, linux-nfs@vger.kernel.org, linux-mm@kvack.org Subject: cleanup the filemap / direct I/O interaction v3 (full series now) Date: Wed, 31 May 2023 09:50:14 +0200 Message-Id: <20230531075026.480237-1-hch@lst.de> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html X-Rspamd-Queue-Id: 346C94001B X-Rspam-User: X-Stat-Signature: cd8gnxbai4jf99t6fsfj415mx611moop X-Rspamd-Server: rspam03 X-HE-Tag: 1685519445-796779 X-HE-Meta: U2FsdGVkX18G3Pa8jeZz4hVTMUpVHdeH99p6oWMGmHVxjI83cKlI+WfFZm3GDbkdkbQq+5cQ1rzoh7srrPw+PYsI0ZWHp6AmYgOd/Q7k/8iAnzbscEmkNBPiaXPnJpylqToUdf5dsUVcZgtwKA4DlFYTqx3Ma4yzFjgnpZY9AePEJ6svrt6ehhPSRiDhWDNjROIng58gNcOng90P+WSnndL3yTWNMGao3RHQodca1WskoC3PNDmBrAJ7ZQ9XdTlK2bU8S7TsT5ZV0doFjybqIUDOqnczWP5hXMdFCgBmSkIye8uWfwbswp5cVp4ffXGz2HrQ3fM294pXtudVHcAgU7AtT9v0gKl/btw7ycSeFR2OrYW7cdfMURTNr9mR/JMW4kIN9Sd3ot/lJRvR9lJ2YAdw0IqWrf6zu7PMMaeFb2r4v2rJrsYAsGXzPPuG2Ui4FZuIrPhGPXo1kL74fguDCLRdsE5Ukwq8H8+sUCXz0TRc/cnHQiIADYy7nJAP0UsDyVlX/LNDADNEnBJ8mBkY78aRdP1wn/ZPOn4Hu2UkFv0K5cpknnUI3rU4hFhD3aNsb0FR1KKhMLWgAKf4I6kYcgb9/o3IEqpglCaTKnW0L/Wt/+5LBxUTz2UokF+bZAiCn1nVncy0EKWk5vDaYwkBR/eZJxV+bckKT3owHWESWEAnpTZ4PLkd96nGMfRRiDLTfMx1Qj9Vokc4eSvpfhmOZ2uQinAN6W9o9iPd46c3ygTmAZOc6GfjibimqXiI/rbSBBYaWqq6OQLIplug1k7NA/WJtDAqINsCuOESh4KeIuMOrTME/3JQiVnOcdsS8P0E8RjXUgoggfeD6VHVOjH42ZCKzJ2H4nQ95/C66pLKzGhOi2koBwgjJj0BL2FFqn4sxFY/e0CKHoo9YQT3ZsDdqAdP/fFnxueoQFkmu+GaRUOF8wIXwKyKkcdYpAjlBGzI8CKbbhV9OLoKDt5Q09j LV8ZuuPp Cs3nw16tYouXFJN3bTl2D6FRHsTvFl4VvjnLgA1FOgWpqJxtgnLu8So3nkuIjJxqaPCpQ61ty8i7h7LUcdI9eFhqyFpQ0MbrJ5Bive80ucMuBg4AGYmCl0iaFRdLOYACEk9T2ATemRehMm0Nk4lLHUziJZQdn61FJ+kXcZUzrNpf7q3agOuWfNB555mIrQCuuDtchRJJYPax+nBju78xE09FjLvQG8Ab0ntszqQSHw2elPXx6vTPHMYHZjfUOU1O9Gagqw7SbenWInbs8oxcJ9KWws0WeL5xgKbYFdc4NYjo7YqTQBLLFaY7XSALyGcE7CAEz7moM7dOEsLx5KwsH+n7lMjbAVFRmJjl1YBe9gYm/riNPZC1H2paUYMG1paXmVf2e42YuvDC363ucYzaYkqD0K/fNcavUDImq X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: [Sorry for the previous attempt that stopped at patch 8] Hi all, this series cleans up some of the generic write helper calling conventions and the page cache writeback / invalidation for direct I/O. This is a spinoff from the no-bufferhead kernel project, for which we'll want to an use iomap based buffered write path in the block layer. Changes since v2: - stick to the existing behavior of returning a short write if the buffer fallback write or sync fails - bring back "fuse: use direct_write_fallback" which accidentally got lost in v2 Changes since v1: - remove current->backing_dev_info entirely - fix the pos/end calculation in direct_write_fallback - rename kiocb_invalidate_post_write to kiocb_invalidate_post_direct_write - typo fixes diffstat: block/fops.c | 18 +----- fs/btrfs/file.c | 6 -- fs/ceph/file.c | 6 -- fs/direct-io.c | 10 --- fs/ext4/file.c | 11 +--- fs/f2fs/file.c | 3 - fs/fuse/file.c | 4 - fs/gfs2/file.c | 6 -- fs/iomap/buffered-io.c | 9 ++- fs/iomap/direct-io.c | 88 ++++++++++++--------------------- fs/nfs/file.c | 6 -- fs/ntfs/file.c | 2 fs/ntfs3/file.c | 3 - fs/xfs/xfs_file.c | 6 -- fs/zonefs/file.c | 4 - include/linux/fs.h | 5 - include/linux/pagemap.h | 4 + include/linux/sched.h | 3 - mm/filemap.c | 126 ++++++++++++++++++++++++++---------------------- 19 files changed, 125 insertions(+), 195 deletions(-)