From mboxrd@z Thu Jan 1 00:00:00 1970 From: Damien Le Moal Date: Mon, 22 May 2023 09:01:05 +0900 Subject: [Cluster-devel] [PATCH 07/13] iomap: update ki_pos in iomap_file_buffered_write In-Reply-To: <20230519093521.133226-8-hch@lst.de> References: <20230519093521.133226-1-hch@lst.de> <20230519093521.133226-8-hch@lst.de> Message-ID: <5c66fe46-13eb-d9d2-e107-cc48eb50688f@kernel.org> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On 5/19/23 18:35, Christoph Hellwig wrote: > All callers of iomap_file_buffered_write need to updated ki_pos, move it > into common code. > > Signed-off-by: Christoph Hellwig One nit below. Acked-by: Damien Le Moal > diff --git a/fs/iomap/buffered-io.c b/fs/iomap/buffered-io.c > index 063133ec77f49e..550525a525c45c 100644 > --- a/fs/iomap/buffered-io.c > +++ b/fs/iomap/buffered-io.c > @@ -864,16 +864,19 @@ iomap_file_buffered_write(struct kiocb *iocb, struct iov_iter *i, > .len = iov_iter_count(i), > .flags = IOMAP_WRITE, > }; > - int ret; > + ssize_t ret; > > if (iocb->ki_flags & IOCB_NOWAIT) > iter.flags |= IOMAP_NOWAIT; > > while ((ret = iomap_iter(&iter, ops)) > 0) > iter.processed = iomap_write_iter(&iter, i); > - if (iter.pos == iocb->ki_pos) > + > + if (unlikely(ret < 0)) Nit: This could be if (unlikely(ret <= 0)), no ? > return ret; > - return iter.pos - iocb->ki_pos; > + ret = iter.pos - iocb->ki_pos; > + iocb->ki_pos += ret; > + return ret; -- Damien Le Moal Western Digital Research