AlexLiuDev233 fdf5e7104e refactor: kpm: memory management migrate to sukisu side (#539)
* refactor: kpm: memory management migrate to sukisu side

* fix: build warning in some gki2 device

fix stack frame size warning (maybe) in gki2 device, specialy in ShirkNeko's device

* chore: use pr_info instead of printk

* feat: check the validity of pointers sent from user space
Sometimes, ksud or other root processes might request a kpm ioctl,
but data incorrectly, such as invalid pointer,
which cause the kernel to crash.

If the request is made by ksud at boot time, the situation is even worse,
as it can cause the system to enter the boot loop.

Therefore, I believe we need to check pointer integrity in kernel space to fix this problem.

---------

Co-authored-by: Saksham <typeflu@gmail.com>
Co-authored-by: ShirkNeko <109797057+ShirkNeko@users.noreply.github.com>
2025-11-08 18:11:29 +08:00
2025-11-07 11:12:21 +08:00
2025-11-04 22:26:40 +08:00
2024-03-08 10:31:41 +08:00
2024-02-29 20:35:03 +08:00
2022-12-09 22:03:55 +08:00
2023-10-09 22:53:21 +08:00

SukiSU Ultra

sukisu logo

English | 简体中文 | 日本語 | Türkçe

A kernel-based root solution for Android devices, forked from tiann/KernelSU, and added some interesting changes.

Latest release Channel License: GPL v2 GitHub License

Features

  1. Kernel-based su and root access management
  2. Module system based on Magic Mount
  3. App Profile: Lock up the root power in a cage
  4. Support non-GKI and GKI 1.0
  5. KPM Support
  6. Tweaks to the manager theme and the built-in susfs management tool.

Compatibility Status

  • KernelSU (before v1.0.0) officially supports Android GKI 2.0 devices (kernel 5.10+).

  • Older kernels (4.4+) are also compatible, but the kernel will have to be built manually.

  • With more backports, KernelSU can supports 3.x kernel (3.4-3.18).

  • Currently, only arm64-v8a, armeabi-v7a (bare) and X86_64(some) are supported.

Installation

See guide/installation.md

Integration

See guide/how-to-integrate.md

Translation

If you need to submit a translation for the manager, please go to Crowdin.

KPM Support

  • Based on KernelPatch, we removed features redundant with KSU and retained only KPM support.
  • Work in Progress: Expanding APatch compatibility by integrating additional functions to ensure compatibility across different implementations.

Open-source repository: https://github.com/ShirkNeko/SukiSU_KernelPatch_patch

KPM template: https://github.com/udochina/KPM-Build-Anywhere

Note

  1. Requires CONFIG_KPM=y
  2. Non-GKI devices requires CONFIG_KALLSYMS=y and CONFIG_KALLSYMS_ALL=y
  3. For kernels below 4.19, backporting from set_memory.h from 4.19 is required.

Troubleshooting

  1. Device stuck upon manager app uninstallation? Uninstall com.sony.playmemories.mobile

Sponsor

ShirkNeko's sponsorship list

License

  • The file in the “kernel” directory is under GPL-2.0-only license.
  • The images of the files ic_launcher(?!.*alt.*).* with anime character sticker are copyrighted by 怡子曰曰, the Brand Intellectual Property in the images is owned by 明风 OuO, and the vectorization is done by @MiRinChan. Before using these files, in addition to complying with Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International, you also need to comply with the authorization of the two authors to use these artistic contents.
  • Except for the files or directories mentioned above, all other parts are under GPL-3.0 or later license.

Credit

  • KernelSU: upstream
  • MKSU: Magic Mount
  • RKSU: support non-GKI
  • susfs: An addon root hiding kernel patches and userspace module for KernelSU.
  • KernelPatch: KernelPatch is a key part of the APatch implementation of the kernel module
KernelSU's credit
Description
No description provided
Readme GPL-3.0 60 MiB
Languages
Kotlin 67.1%
C 20%
Rust 11.1%
Shell 0.9%
Makefile 0.4%
Other 0.4%