Here are some patches to fix page waiting-related issues in cachefiles and afs[1]: (1) In cachefiles, remove the use of the wait_bit_key struct to access something that's actually in wait_page_key format. The proper struct is now available in the header, so that should be used instead. (2) Add a proper wait function for waiting killably on the page writeback flag. This includes a recent bugfix here (presumably commit c2407cf7d22d0c0d94cf20342b3b8f06f1d904e7). (3) In afs, use the function added in (2) rather than using wait_on_page_bit_killable() which doesn't have the aforementioned bugfix. Note that I modified this to work with the upstream code where the page pointer isn't cached in a local variable. The patches can be found here: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=afs-fixes David Link: https://lore.kernel.org/r/20210320054104.1300774-1-willy@xxxxxxxxxxxxx[1] --- Matthew Wilcox (Oracle) (3): fs/cachefiles: Remove wait_bit_key layout dependency mm/writeback: Add wait_on_page_writeback_killable afs: Use wait_on_page_writeback_killable fs/afs/write.c | 3 +-- include/linux/pagemap.h | 1 + mm/page-writeback.c | 16 ++++++++++++++++ 3 files changed, 18 insertions(+), 2 deletions(-)