diff mbox series

[3/3] afs: Use wait_on_page_writeback_killable

Message ID 161650043737.2445805.16573960069907170426.stgit@warthog.procyon.org.uk (mailing list archive)
State New
Headers show
Series cachefiles, afs: mm wait fixes | expand

Commit Message

David Howells March 23, 2021, 11:53 a.m. UTC
From: Matthew Wilcox (Oracle) <willy@infradead.org>

Open-coding this function meant it missed out on the recent bugfix
for waiters being woken by a delayed wake event from a previous
instantiation of the page.

[DH: Changed the patch to use vmf->page rather than variable page which
 doesn't exist yet upstream]

Fixes: 1cf7a1518aef ("afs: Implement shared-writeable mmap")
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David Howells <dhowells@redhat.com>
cc: linux-afs@lists.infradead.org
cc: linux-mm@kvack.org
Link: https://lore.kernel.org/r/20210320054104.1300774-4-willy@infradead.org

 fs/afs/write.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
diff mbox series


diff --git a/fs/afs/write.c b/fs/afs/write.c
index c9195fc67fd8..eb737ed63afb 100644
--- a/fs/afs/write.c
+++ b/fs/afs/write.c
@@ -851,8 +851,7 @@  vm_fault_t afs_page_mkwrite(struct vm_fault *vmf)
 	fscache_wait_on_page_write(vnode->cache, vmf->page);
-	if (PageWriteback(vmf->page) &&
-	    wait_on_page_bit_killable(vmf->page, PG_writeback) < 0)
+	if (wait_on_page_writeback_killable(vmf->page))
 		return VM_FAULT_RETRY;
 	if (lock_page_killable(vmf->page) < 0)