kernel: suggest user to enable CONFIG_KSU_ALLOWLIST_WORKAROUND if -ENOKEY
It's better to give some suggestion regarding allowlist workaround, so its easier to know incase allowlist bug happened. -ENOKEY or "No required key found" error is the most common issue on certain devices, and most peoples has proved that by enabling kernelsu's init_keyring, can fix this issue. Rissu's note: Yet, if you still get allowlist bug, even after enabling this workaround, please report it and provide logs.
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
#include <linux/slab.h>
|
#include <linux/slab.h>
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
#include <linux/version.h>
|
#include <linux/version.h>
|
||||||
|
#include <linux/kconfig.h>
|
||||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0)
|
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0)
|
||||||
#include <linux/compiler_types.h>
|
#include <linux/compiler_types.h>
|
||||||
#endif
|
#endif
|
||||||
@@ -367,7 +368,13 @@ static void do_save_allow_list(struct work_struct *work)
|
|||||||
struct file *fp =
|
struct file *fp =
|
||||||
ksu_filp_open_compat(KERNEL_SU_ALLOWLIST, O_WRONLY | O_CREAT | O_TRUNC, 0644);
|
ksu_filp_open_compat(KERNEL_SU_ALLOWLIST, O_WRONLY | O_CREAT | O_TRUNC, 0644);
|
||||||
if (IS_ERR(fp)) {
|
if (IS_ERR(fp)) {
|
||||||
pr_err("save_allow_list create file failed: %ld\n", PTR_ERR(fp));
|
if ((PTR_ERR(fp) == -ENOKEY) && !IS_ENABLED(CONFIG_KSU_ALLOWLIST_WORKAROUND)) {
|
||||||
|
pr_info("filp_open: required key not found! (-ENOKEY)\n");
|
||||||
|
pr_info("Try enable CONFIG_KSU_ALLOWLIST_WORKAROUND in your kernel.\n");
|
||||||
|
pr_info("If you still encountered issue with allowlist, please report it.\n");
|
||||||
|
return;
|
||||||
|
} else
|
||||||
|
pr_err("save_allow_list create file failed: %ld\n", PTR_ERR(fp));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user