diff --git a/kernel/Makefile b/kernel/Makefile index 1d73cbbd..c4e25fd4 100644 --- a/kernel/Makefile +++ b/kernel/Makefile @@ -60,9 +60,9 @@ ccflags-y += -DKSU_UMOUNT # This feature is introduced in linux 5.0-rc1 ifeq ($(shell grep -q "get_cred_rcu" $(srctree)/include/linux/cred.h; echo $$?),0) -ccflags-y += -DKSU_GET_CRED_RCU +ccflags-y += -DKSU_COMPAT_GET_CRED_RCU else -$(info -- Your kernel does not have get_cred_rcu, please backport it.) +$(info -- Your kernel does not support get_cred_rcu, please backport it.) $(info -- How to backport: https://github.com/tiann/KernelSU/pull/2320#issuecomment-2564232958) $(info -- Fallback to old changes.) endif diff --git a/kernel/core_hook.c b/kernel/core_hook.c index 13a54895..ee505ca9 100644 --- a/kernel/core_hook.c +++ b/kernel/core_hook.c @@ -45,6 +45,10 @@ #include "throne_tracker.h" #include "kernel_compat.h" +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0) || defined(KSU_COMPAT_GET_CRED_RCU) +#define KSU_GET_CRED_RCU +#endif + static bool ksu_module_mounted = false; extern int handle_sepolicy(unsigned long arg3, void __user *arg4);