Re: [Cluster-devel] iomap preparations for GFS2

2018-06-06 Thread Christoph Hellwig
On Wed, Jun 06, 2018 at 05:31:25PM +0200, Andreas Grünbacher wrote: > 2018-06-06 13:38 GMT+02:00 Andreas Gruenbacher : > > On 6 June 2018 at 12:40, Christoph Hellwig wrote: > >> Hi all, > >> > >> this is a slight rework of the patches from Andreas to prepare for gfs2 > >> using the iomap code.

Re: [Cluster-devel] iomap preparations for GFS2

2018-06-06 Thread Andreas Grünbacher
2018-06-06 13:38 GMT+02:00 Andreas Gruenbacher : > On 6 June 2018 at 12:40, Christoph Hellwig wrote: >> Hi all, >> >> this is a slight rework of the patches from Andreas to prepare for gfs2 >> using the iomap code. I'd like to start with an immutable branch for >> iomap patches in either the XFS

Re: [Cluster-devel] [PATCH 2/6] iomap: move bdev and dax_dev in a union

2018-06-06 Thread Christoph Hellwig
On Wed, Jun 06, 2018 at 01:37:02PM +0200, Andreas Gruenbacher wrote: > This seems backwards. It is. So much for last minute polarity fixups..

Re: [Cluster-devel] [PATCH v8 03/10] iomap: Complete partial direct I/O writes synchronously

2018-06-06 Thread Andreas Gruenbacher
On 6 June 2018 at 12:26, Christoph Hellwig wrote: > On Tue, Jun 05, 2018 at 02:10:24PM +0200, David Sterba wrote: >> On Mon, Jun 04, 2018 at 09:31:16PM +0200, Andreas Gruenbacher wrote: >> > @@ -1062,8 +1063,9 @@ iomap_dio_rw(struct kiocb *iocb, struct iov_iter >> > *iter, >> > if (ret < 0)

Re: [Cluster-devel] iomap preparations for GFS2

2018-06-06 Thread Andreas Gruenbacher
On 6 June 2018 at 12:40, Christoph Hellwig wrote: > Hi all, > > this is a slight rework of the patches from Andreas to prepare for gfs2 > using the iomap code. I'd like to start with an immutable branch for > iomap patches in either the XFS tree or a tree of mine own with something > like this

Re: [Cluster-devel] [PATCH 6/6] iomap: add a page_done callback

2018-06-06 Thread Andreas Gruenbacher
On 6 June 2018 at 12:40, Christoph Hellwig wrote: > This will be used by gfs2 to attach data to transactions for the journaled > data mode. But the concept is generic enough that we might be able to > use it for other purposes like encryption/integrity post-processing in the > future. > > Based

Re: [Cluster-devel] [PATCH 2/6] iomap: move bdev and dax_dev in a union

2018-06-06 Thread Andreas Gruenbacher
On 6 June 2018 at 12:40, Christoph Hellwig wrote: > We always either ask for a block device or DAX device mapping, so we can > use the same space for both. > > Signed-off-by: Christoph Hellwig > --- > fs/ext2/inode.c | 6 -- > fs/ext4/inode.c | 6 -- > fs/xfs/xfs_iomap.c

Re: [Cluster-devel] [PATCH 1/6] fs: factor out a __generic_write_end helper

2018-06-06 Thread Andreas Grünbacher
2018-06-06 12:59 GMT+02:00 Christoph Hellwig : > On Wed, Jun 06, 2018 at 12:40:28PM +0200, Christoph Hellwig wrote: >> Bits of the buffer.c based write_end implementations that don't know >> about buffer_heads and can be reused by other implementations. >> >> Signed-off-by: Christoph Hellwig > >

[Cluster-devel] [PATCH 6/6] iomap: add a page_done callback

2018-06-06 Thread Christoph Hellwig
This will be used by gfs2 to attach data to transactions for the journaled data mode. But the concept is generic enough that we might be able to use it for other purposes like encryption/integrity post-processing in the future. Based on a patch from Andreas Gruenbacher. Signed-off-by: Christoph

[Cluster-devel] [PATCH 2/6] iomap: move bdev and dax_dev in a union

2018-06-06 Thread Christoph Hellwig
We always either ask for a block device or DAX device mapping, so we can use the same space for both. Signed-off-by: Christoph Hellwig --- fs/ext2/inode.c | 6 -- fs/ext4/inode.c | 6 -- fs/xfs/xfs_iomap.c| 6 -- include/linux/iomap.h | 6 -- 4 files changed, 16

[Cluster-devel] [PATCH 3/6] iomap: mark newly allocated buffer heads as new

2018-06-06 Thread Christoph Hellwig
From: Andreas Gruenbacher In iomap_to_bh, not only mark buffer heads in IOMAP_UNWRITTEN maps as new, but also buffer heads in IOMAP_MAPPED maps with the IOMAP_F_NEW flag set. This will be used by filesystems like gfs2, which allocate blocks in iomap->begin. Minor corrections to the comment for

[Cluster-devel] iomap preparations for GFS2

2018-06-06 Thread Christoph Hellwig
Hi all, this is a slight rework of the patches from Andreas to prepare for gfs2 using the iomap code. I'd like to start with an immutable branch for iomap patches in either the XFS tree or a tree of mine own with something like this so that we can have a nice common base for both the major iomap

[Cluster-devel] [PATCH 5/6] iomap: generic inline data handling

2018-06-06 Thread Christoph Hellwig
From: Andreas Gruenbacher Add generic inline data handling by adding a pointer to the inline data region to struct iomap. When handling a buffered IOMAP_INLINE write, iomap_write_begin will copy the current inline data from the inline data region into the page cache, and iomap_write_end will

[Cluster-devel] [PATCH 4/6] iomap: complete partial direct I/O writes synchronously

2018-06-06 Thread Christoph Hellwig
From: Andreas Gruenbacher According to xfstest generic/240, applications seem to expect direct I/O writes to either complete as a whole or to fail; short direct I/O writes are apparently not appreciated. This means that when only part of an asynchronous direct I/O write succeeds, we can either

[Cluster-devel] [PATCH 1/6] fs: factor out a __generic_write_end helper

2018-06-06 Thread Christoph Hellwig
Bits of the buffer.c based write_end implementations that don't know about buffer_heads and can be reused by other implementations. Signed-off-by: Christoph Hellwig --- fs/buffer.c | 67 +++ fs/internal.h | 2 ++ 2 files changed, 37

Re: [Cluster-devel] [PATCH 1/6] fs: factor out a __generic_write_end helper

2018-06-06 Thread Christoph Hellwig
On Wed, Jun 06, 2018 at 12:40:28PM +0200, Christoph Hellwig wrote: > Bits of the buffer.c based write_end implementations that don't know > about buffer_heads and can be reused by other implementations. > > Signed-off-by: Christoph Hellwig This actually already had two reviews: Reviewed-by:

Re: [Cluster-devel] [PATCH v8 03/10] iomap: Complete partial direct I/O writes synchronously

2018-06-06 Thread Christoph Hellwig
On Tue, Jun 05, 2018 at 02:10:24PM +0200, David Sterba wrote: > On Mon, Jun 04, 2018 at 09:31:16PM +0200, Andreas Gruenbacher wrote: > > @@ -1062,8 +1063,9 @@ iomap_dio_rw(struct kiocb *iocb, struct iov_iter > > *iter, > > if (ret < 0) > > iomap_dio_set_error(dio, ret); > > > >