Stephen reported a boot failure on ppc power8 system where set_memor_ro() on the new zero page failed [0]. Christophe Leroy further clarifies we can't use this on on linear memory on ppc, and so instead of special casing this just for PowerPC [2] remove the call as suggested by Darrick. [0] https://lore.kernel.org/all/20240826175931.1989f99e@xxxxxxxxxxxxxxxx/T/#u [1] https://lore.kernel.org/all/b0fe75b4-c1bb-47f7-a7c3-2534b31c1780@xxxxxxxxxx/ [2] https://lore.kernel.org/all/ZszrJkFOpiy5rCma@xxxxxxxxxxxxxxxxxxxxxx/ Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> Suggested-by: "Darrick J. Wong" <djwong@xxxxxxxxxx> Signed-off-by: Luis Chamberlain <mcgrof@xxxxxxxxxx> --- This applies to the vfs.blocksize branch on the vfs tree. fs/iomap/direct-io.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/fs/iomap/direct-io.c b/fs/iomap/direct-io.c index c02b266bba52..f637aa0706a3 100644 --- a/fs/iomap/direct-io.c +++ b/fs/iomap/direct-io.c @@ -11,7 +11,6 @@ #include <linux/iomap.h> #include <linux/backing-dev.h> #include <linux/uio.h> -#include <linux/set_memory.h> #include <linux/task_io_accounting_ops.h> #include "trace.h" @@ -781,8 +780,6 @@ static int __init iomap_dio_init(void) if (!zero_page) return -ENOMEM; - set_memory_ro((unsigned long)page_address(zero_page), - 1U << IOMAP_ZERO_PAGE_ORDER); return 0; } fs_initcall(iomap_dio_init); -- 2.43.0