Commit 7c7ab788 authored by Heiko Carstens's avatar Heiko Carstens Committed by Vasily Gorbik
Browse files

s390/ftrace: do not assume module_alloc() returns executable memory



The ftrace code assumes at two places that module_alloc() returns
executable memory. While this is currently true, this will be changed
with a subsequent patch to follow other architectures which implement
ARCH_HAS_STRICT_MODULE_RWX.

Acked-by: default avatarAlexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
parent f9b2d96c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -226,7 +226,7 @@ static int __init ftrace_plt_init(void)

	start = ftrace_shared_hotpatch_trampoline(&end);
	memcpy(ftrace_plt, start, end - start);
	set_memory_ro((unsigned long)ftrace_plt, 1);
	set_memory_rox((unsigned long)ftrace_plt, 1);
	return 0;
}
device_initcall(ftrace_plt_init);
+1 −1
Original line number Diff line number Diff line
@@ -509,7 +509,7 @@ static int module_alloc_ftrace_hotpatch_trampolines(struct module *me,
	start = module_alloc(numpages * PAGE_SIZE);
	if (!start)
		return -ENOMEM;
	set_memory_ro((unsigned long)start, numpages);
	set_memory_rox((unsigned long)start, numpages);
	end = start + size;

	me->arch.trampolines_start = (struct ftrace_hotpatch_trampoline *)start;