[Cluster-devel] [PATCH 03/12] filemap: update ki_pos in generic_perform_write
Al Viro
viro at zeniv.linux.org.uk
Mon Aug 28 14:02:02 UTC 2023
On Mon, Aug 28, 2023 at 02:30:23PM +0200, Christoph Hellwig wrote:
> On Sun, Aug 27, 2023 at 08:41:22PM +0100, Al Viro wrote:
> > That part is somewhat fishy - there's a case where you return a positive value
> > and advance ->ki_pos by more than that amount. I really wonder if all callers
> > of ->write_iter() are OK with that. Consider e.g. this:
>
> This should not exist in the latest version merged by Jens. Can you
> check if you still see issues in the version in the block tree or
> linux-next.
Still does - the problem has migrated into direct_write_fallback(), but
that hadn't changed the situation. We are still left with ->ki_pos bumped
by generic_perform_write() (evaluated as an argument of direct_write_fallback()
now) and *not* retraced in case when direct_write_fallback() decides to
discard the buffered write result. Both in -next and in mainline (since
6.5-rc1).
More information about the Cluster-devel
mailing list