The patch titled Subject: x86/mm/pat: cpa-test: fix length for CPA_ARRAY test has been added to the -mm mm-unstable branch. Its filename is x86-mm-pat-cpa-test-fix-length-for-cpa_array-test.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/x86-mm-pat-cpa-test-fix-length-for-cpa_array-test.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm 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 via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: "Mike Rapoport (Microsoft)" <rppt@xxxxxxxxxx> Subject: x86/mm/pat: cpa-test: fix length for CPA_ARRAY test Date: Fri, 27 Dec 2024 09:28:18 +0200 Patch series "x86/module: rework ROX cache to avoid writable copy". Following Peter's comments [1] these patches rework handling of ROX caches for module text allocations. Instead of using a writable copy that really complicates alternatives patching, temporarily remap parts of a large ROX page as RW for the time of module formation and then restore it's ROX protections when the module is ready. To keep the ROX memory mapped with large pages, make set_memory code capable of restoring large pages (more details are in patch 3). The patches also available in git https://git.kernel.org/rppt/h/execmem/x86-rox/v8 [1] https://lore.kernel.org/all/20241209083818.GK8562@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx This patch (of 8): The CPA_ARRAY test always uses len[1] as numpages argument to change_page_attr_set() although the addresses array is different each iteration of the test loop. Replace len[1] with len[i] to have numpages matching the addresses array. Link: https://lkml.kernel.org/r/20241227072825.1288491-1-rppt@xxxxxxxxxx Link: https://lkml.kernel.org/r/20241227072825.1288491-2-rppt@xxxxxxxxxx Fixes: ecc729f1f471 ("x86/mm/cpa: Add ARRAY and PAGES_ARRAY selftests") Signed-off-by: Mike Rapoport (Microsoft) <rppt@xxxxxxxxxx> Cc: Andy Lutomirski <luto@xxxxxxxxxx> Cc: Anton Ivanov <anton.ivanov@xxxxxxxxxxxxxxxxxx> Cc: Borislav Petkov <bp@xxxxxxxxx> Cc: Brendan Higgins <brendan.higgins@xxxxxxxxx> Cc: Daniel Gomez <da.gomez@xxxxxxxxxxx> Cc: Daniel Thompson <danielt@xxxxxxxxxx> Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx> Cc: David Gow <davidgow@xxxxxxxxxx> Cc: Douglas Anderson <dianders@xxxxxxxxxxxx> Cc: "H. Peter Anvin" <hpa@xxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxxxxx> Cc: Jason Wessel <jason.wessel@xxxxxxxxxxxxx> Cc: Jiri Kosina <jikos@xxxxxxxxxx> Cc: Joe Lawrence <joe.lawrence@xxxxxxxxxx> Cc: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> Cc: Josh Poimboeuf <jpoimboe@xxxxxxxxxx> Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> Cc: Luis Chamberlain <mcgrof@xxxxxxxxxx> Cc: Mark Rutland <mark.rutland@xxxxxxx> Cc: Masami Hiramatsu <mhiramat@xxxxxxxxxx> Cc: Miroslav Benes <mbenes@xxxxxxx> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx> Cc: Petr Mladek <pmladek@xxxxxxxx> Cc: Petr Pavlu <petr.pavlu@xxxxxxxx> Cc: Rae Moar <rmoar@xxxxxxxxxx> Cc: Richard Weinberger <richard@xxxxxx> Cc: Sami Tolvanen <samitolvanen@xxxxxxxxxx> Cc: Shuah Khan <shuah@xxxxxxxxxx> Cc: Song Liu <song@xxxxxxxxxx> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- arch/x86/mm/pat/cpa-test.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/arch/x86/mm/pat/cpa-test.c~x86-mm-pat-cpa-test-fix-length-for-cpa_array-test +++ a/arch/x86/mm/pat/cpa-test.c @@ -183,7 +183,7 @@ static int pageattr_test(void) break; case 1: - err = change_page_attr_set(addrs, len[1], PAGE_CPA_TEST, 1); + err = change_page_attr_set(addrs, len[i], PAGE_CPA_TEST, 1); break; case 2: _ Patches currently in -mm which might be from rppt@xxxxxxxxxx are x86-mm-pat-cpa-test-fix-length-for-cpa_array-test.patch x86-mm-pat-drop-duplicate-variable-in-cpa_flush.patch execmem-add-api-for-temporal-remapping-as-rw-and-restoring-rox-afterwards.patch module-introduce-module_state_gone.patch modules-switch-to-execmem-api-for-remapping-as-rw-and-restoring-rox.patch revert-x86-module-prepare-module-loading-for-rox-allocations-of-text.patch module-drop-unused-module_writable_address.patch