From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com ([209.132.183.28]:35132 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932830AbeALK0S (ORCPT ); Fri, 12 Jan 2018 05:26:18 -0500 Subject: Re: [Cluster-devel] [PATCH 00/10] gfs2 iomap buffered write support To: Andreas Gruenbacher , cluster-devel@redhat.com, Christoph Hellwig Cc: linux-fsdevel@vger.kernel.org References: <20180111211506.328-1-agruenba@redhat.com> From: Steven Whitehouse Message-ID: <100dd0f8-4cb0-ed5c-8fb1-7d35d53c01e8@redhat.com> Date: Fri, 12 Jan 2018 10:26:09 +0000 MIME-Version: 1.0 In-Reply-To: <20180111211506.328-1-agruenba@redhat.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Hi, On 11/01/18 21:14, Andreas Gruenbacher wrote: > Hello, > > this patch queue converts gfs2 to use iomap for buffered writes, which > uses multi-page block allocations for large writes instead of requiring > a separate allocation for each page of data. > > The patches apply on top of the gfs2 punch-hole patch queue [*]. > > So far, the only user of iomap_file_buffered_write was xfs, which > doesn't do data journaling. To support gfs2's data journaling, patch > 08/10 adds a new iomap_written iomap operation: if defined, this > operation is called by iomap_file_buffered_write whenever a page has > been written to. > > This patch queue doesn't convert direct I/O, so we still have a > remaining user of the old gfs2_write_begin / gfs2_write_end interface > left. Once direct I/O has been converted to use iomap, we'll get rid of > that code, though. > > Thanks, > Andreas > > [*] https://www.redhat.com/archives/cluster-devel/2017-December/msg00089.html > > Andreas Gruenbacher (10): > gfs2: Typo fixes > gfs2: Add gfs2_max_stuffed_size > gfs2: Minor gfs2_page_add_databufs cleanup > gfs2: gfs2_stuffed_write_end cleanup > gfs2: gfs2_stuffed_write_end cleanup (fixup) > gfs2: Remove ordered write mode handling from gfs2_trans_add_data > gfs2: Iomap cleanups and improvements > iomap: New iomap_written operation > gfs2: Implement iomap buffered write support (1) > gfs2: Implement iomap buffered write support (2) It looks like patches 1 to 3 inclusive could be sent right away as they are worthwhile clean ups in their own right - no need to delay those. Patches 4 and 5 should be merged into one I think. Otherwise it looks like everything is going in the right direction generally, the other comments which have been made notwithstanding, Steve. > > fs/gfs2/aops.c | 178 ++++++++++++++++------ > fs/gfs2/aops.h | 19 +++ > fs/gfs2/bmap.c | 407 +++++++++++++++++++++++++++++++++++++------------- > fs/gfs2/bmap.h | 5 +- > fs/gfs2/dir.c | 3 +- > fs/gfs2/file.c | 49 +++++- > fs/gfs2/incore.h | 5 + > fs/gfs2/inode.c | 10 +- > fs/gfs2/log.h | 7 +- > fs/gfs2/quota.c | 5 +- > fs/gfs2/trans.c | 27 +--- > fs/iomap.c | 21 ++- > include/linux/iomap.h | 9 ++ > 13 files changed, 558 insertions(+), 187 deletions(-) > create mode 100644 fs/gfs2/aops.h >