From 5053e20778c4631c729a59ae16a60d000b8a1244 Mon Sep 17 00:00:00 2001 From: Huy Minh <39849246+hmtheboy154@users.noreply.github.com> Date: Tue, 20 Dec 2022 13:54:42 +0700 Subject: [PATCH] kernel: switch to syscall_work if CONFIG_GENERIC_ENTRY is enabled (#12) From Kernel 5.11 it migrate to syscall_work instead of tif_*, so check for CONFIG_GENERIC_ENTRY and use syscall_work instead of TIF_SECCOMP https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg2382193.html --- kernel/ksu.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/kernel/ksu.c b/kernel/ksu.c index 4e6fd454..291d07a5 100644 --- a/kernel/ksu.c +++ b/kernel/ksu.c @@ -57,7 +57,11 @@ void escape_to_root() { memset(&cred->cap_ambient, 0xff, sizeof(cred->cap_ambient)); // disable seccomp +#ifdef CONFIG_GENERIC_ENTRY + current_thread_info()->syscall_work &= ~SYSCALL_WORK_SECCOMP; +#else current_thread_info()->flags &= ~TIF_SECCOMP; +#endif current->seccomp.mode = 0; current->seccomp.filter = NULL; @@ -270,4 +274,4 @@ module_exit(kernelsu_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("weishu"); MODULE_DESCRIPTION("Android GKI KernelSU"); -MODULE_IMPORT_NS(VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver); // 5+才需要导出命名空间 \ No newline at end of file +MODULE_IMPORT_NS(VFS_internal_I_am_really_a_filesystem_and_am_NOT_a_driver); // 5+才需要导出命名空间