在使用KernelSU构建5.4内核时,尝试添加SUSFS补丁后遇到了编译错误。错误信息显示有多个未声明的标识符和指针类型不兼容的问题。用户希望得到帮助以手动修改KernelSU代码或更新代码以支持非GKI设备,从而能够添加SUSFS补丁。以下是用户提供的详细信息:

Please check before submitting an issue

  • [x] I have searched the issues and haven't found anything relevant
  • [x] I will upload bugreport file in KernelSU Manager - Settings - Report log
  • [x] I know how to reproduce the issue which may not be specific to my device

Describe the bug

I am build 5.4 kernel with sukiSU by tmp-builtin branch, everything is working good until i try to add SUSFS patch from https://gitlab.com/simonpunk/susfs4ksu/-/tree/kernel-5.4 on it.

Just found that there was some per-patched code on sukiSU kernel, but those are not suitable for non-gki, and causing below error pop up when building kernel:

/home/upc/android/mi11-kernelsukiSU410-susfs/common/drivers/kernelsu/supercalls.c:990:16: error: use of undeclared identifier 'SUSFS_MAGIC'
  990 |         if (magic2 == SUSFS_MAGIC && current_uid().val == 0) {
      |                       ^
/home/upc/android/mi11-kernelsukiSU410-susfs/common/drivers/kernelsu/supercalls.c:993:23: error: incompatible pointer types passing 'void **' to parameter of type 'struct st_susfs_sus_path *' [-Werror,-Wincompatible-pointer-types]
  993 |                         susfs_add_sus_path(arg);
      |                                            ^~~
/home/upc/android/mi11-kernelsukiSU410-susfs/common/include/linux/susfs.h:130:57: note: passing argument to parameter 'user_info' here
  130 | int susfs_add_sus_path(struct st_susfs_sus_path* __user user_info);
      |                                                         ^
... (更多错误信息省略) ...

Can you reverse those code to offical KernelSU so i can patch it by myself, or update the code for non-gki so we can add SUSFS? thanks.

To Reproduce

  1. build bootable 5.4 kernel with sukiSU
  2. add SUSFS patch from https://gitlab.com/simonpunk/susfs4ksu/-/tree/kernel-5.4 on it
  3. build error pop up

Expected behavior

Manually patch SUSFS code and able to build kernel

Screenshots

No response

Logs

No response

Device info

  • Device: Xiaomi 11 (venus)
  • OS Version: LineageOS 23.1
  • KernelSU Version:
  • Kernel Version:

Additional context

No response