]> www.infradead.org Git - users/jedix/linux-maple.git/commit
netfs: Fix early issue of write op on partial write to folio tail
authorDavid Howells <dhowells@redhat.com>
Wed, 5 Jun 2024 21:18:04 +0000 (22:18 +0100)
committerChristian Brauner <brauner@kernel.org>
Wed, 26 Jun 2024 12:16:04 +0000 (14:16 +0200)
commit6470e0bc6fe1948dcc2dfe7264c5a6c7a4a6788a
tree3b44dff39c84cde9b67629d3bf94096de8bedb17
parentd98b7d7dda721ca009b6dc5dd3beeeb7fd46f4b4
netfs: Fix early issue of write op on partial write to folio tail

During the writeback procedure, at the end of netfs_write_folio(), pending
write operations are flushed if the amount of write-streaming data stored
in a page is less than the size of the folio because if we haven't modified
a folio to the end, it cannot be contiguous with the following folio...
except if the dirty region of the folio is right at the end of the folio
space.

Fix the test to take the offset into the folio into account as well, such
that if the dirty region runs right up to the end of the folio, we leave
the flushing for later.

Fixes: 288ace2f57c9 ("netfs: New writeback implementation")
Signed-off-by: David Howells <dhowells@redhat.com>
cc: Jeff Layton <jlayton@kernel.org>
cc: Eric Van Hensbergen <ericvh@kernel.org>
cc: Latchesar Ionkov <lucho@ionkov.net>
cc: Dominique Martinet <asmadeus@codewreck.org>
cc: Christian Schoenebeck <linux_oss@crudebyte.com>
cc: Marc Dionne <marc.dionne@auristor.com>
cc: Steve French <sfrench@samba.org>
cc: Paulo Alcantara <pc@manguebit.com> (DFS, global name space)
cc: v9fs@lists.linux.dev
cc: linux-afs@lists.infradead.org
cc: linux-cifs@vger.kernel.org
cc: netfs@lists.linux.dev
cc: linux-fsdevel@vger.kernel.org
Link: https://lore.kernel.org/r/20240620173137.610345-4-dhowells@redhat.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/netfs/write_issue.c