The patch titled Subject: ecryptfs: add a ->set_page_dirty cludge has been added to the -mm tree. Its filename is mm-require-set_page_dirty-to-be-explicitly-wire-up-fix.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mm-require-set_page_dirty-to-be-explicitly-wire-up-fix.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/mm-require-set_page_dirty-to-be-explicitly-wire-up-fix.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Christoph Hellwig <hch@xxxxxx> Subject: ecryptfs: add a ->set_page_dirty cludge "fix" ecryptfs to work the same as before the recent change to the behavior without a ->set_page_dirty method. Link: https://lkml.kernel.org/r/20210624125250.536369-1-hch@xxxxxx Signed-off-by: Christoph Hellwig <hch@xxxxxx> Acked-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> Cc: Tyler Hicks <code@xxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/ecryptfs/mmap.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) --- a/fs/ecryptfs/mmap.c~mm-require-set_page_dirty-to-be-explicitly-wire-up-fix +++ a/fs/ecryptfs/mmap.c @@ -533,7 +533,20 @@ static sector_t ecryptfs_bmap(struct add return block; } +#include <linux/buffer_head.h> + const struct address_space_operations ecryptfs_aops = { + /* + * XXX: This is pretty broken for multiple reasons: ecryptfs does not + * actually use buffer_heads, and ecryptfs will crash without + * CONFIG_BLOCK. But it matches the behavior before the default for + * address_space_operations without the ->set_page_dirty method was + * cleaned up, so this is the best we can do without maintainer + * feedback. + */ +#ifdef CONFIG_BLOCK + .set_page_dirty = __set_page_dirty_buffers, +#endif .writepage = ecryptfs_writepage, .readpage = ecryptfs_readpage, .write_begin = ecryptfs_write_begin, _ Patches currently in -mm which might be from hch@xxxxxx are fs-unexport-__set_page_dirty.patch fs-move-ramfs_aops-to-libfs.patch mm-require-set_page_dirty-to-be-explicitly-wire-up.patch mm-require-set_page_dirty-to-be-explicitly-wire-up-fix.patch