Skip to content

umount#16

Closed
backslashxx wants to merge 11 commits into
5ec1cff:mainfrom
backslashxx:umount
Closed

umount#16
backslashxx wants to merge 11 commits into
5ec1cff:mainfrom
backslashxx:umount

Conversation

@backslashxx

Copy link
Copy Markdown

No description provided.

[   14.849905] KernelSU: cmd_add_try_umount: /system/etc/hosts added!
[   14.853959] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/ui/LowBattery.ogg added!
[   14.854025] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/ui/Effect_Tick.ogg added!
[   14.854555] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/ui/camera_click.ogg added!
[   14.854681] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/ui/Lock.ogg added!
[   14.855051] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/ui/Unlock.ogg added!
[   14.855478] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/ui/ChargingStarted.ogg added!
[   14.856197] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/ui/screenshot.ogg added!
[   14.856260] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/ui/ChargingEnd.ogg added!
[   14.870532] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/notifications/ChargingStarted.ogg added!
[   14.871761] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/notifications/Orere.ogg added!
[   14.871892] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/notifications/Pipo.ogg added!
[   14.871949] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/notifications/Matete Kudasai.ogg added!
[   14.871996] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/notifications/UhOh.ogg added!
[   14.872071] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/notifications/Jajan.ogg added!
[   14.872120] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/notifications/Pirorin.ogg added!
[   14.872170] KernelSU: cmd_add_try_umount: /mnt/vendor/mm_workdir/system/product/media/audio/notifications/Jan.ogg added!
[   10.626599] KernelSU: cmd_add_try_umount: /system/etc/hosts added!
[   10.630924] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/LowBattery.ogg added!
[   10.631037] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/Effect_Tick.ogg added!
[   10.631154] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/Trusted.ogg added!
[   10.631214] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/KeypressSpacebar.ogg added!
[   10.631294] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/KeypressStandard.ogg added!
[   10.631443] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/NFCInitiated.ogg added!
[   10.631638] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/KeypressInvalid.ogg added!
[   10.631819] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/camera_click.ogg added!
[   10.631888] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/NFCFailure.ogg added!
[   10.632069] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/Lock.ogg added!
[   10.632383] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/NFCTransferComplete.ogg added!
[   10.632463] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/KeypressDelete.ogg added!
[   10.632549] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/VideoRecord.ogg added!
[   10.632735] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/Unlock.ogg added!
[   10.632805] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/NFCTransferInitiated.ogg added!
[   10.632999] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/Undock.ogg added!
[   10.633199] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/WirelessChargingStarted.ogg added!
[   10.633504] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/NFCSuccess.ogg added!
[   10.633583] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/Dock.ogg added!
[   10.633660] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/ChargingStarted.ogg added!
[   10.633856] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/KeypressReturn.ogg added!
[   10.633916] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/VideoStop.ogg added!
[   10.634259] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/camera_focus.ogg added!
[   10.634456] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/InCallNotification.ogg added!
[   10.634547] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/ChargingEnd.ogg added!
[   10.634596] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui/screenshot.ogg added!
[   10.646982] KernelSU: cmd_add_try_umount: /system/product/media/audio/ui added!
[   10.649544] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Gallium.ogg added!
[   10.649650] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Spica.ogg added!
[   10.649761] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/pizzicato.ogg added!
[   10.649822] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Elara.ogg added!
[   10.649886] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Procyon.ogg added!
[   10.649968] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Xenon.ogg added!
[   10.650087] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Radon.ogg added!
[   10.650161] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Selenium.ogg added!
[   10.655511] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Talitha.ogg added!
[   10.655793] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Laser.ogg added!
[   10.655893] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Krypton.ogg added!
[   10.655971] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Cobalt.ogg added!
[   10.656039] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/pixiedust.ogg added!
[   10.656409] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Canopus.ogg added!
[   10.656922] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Tethys.ogg added!
[   10.657000] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Shaula.ogg added!
[   10.657067] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Deneb.ogg added!
[   10.657133] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Doink.ogg added!
[   10.657198] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/F1_New_SMS.ogg added!
[   10.657301] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Fomalhaut.ogg added!
[   10.657411] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Ariel.ogg added!
[   10.657491] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Argon.ogg added!
[   10.657562] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Vega.ogg added!
[   10.657641] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/CyanMessage.ogg added!
[   10.657705] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Drip.ogg added!
[   10.657765] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Iridium.ogg added!
[   10.657824] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/DearDeer.ogg added!
[   10.657887] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Pollux.ogg added!
[   10.657952] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Upsilon.ogg added!
[   10.658011] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Proxima.ogg added!
[   10.658078] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/DontPanic.ogg added!
[   10.658143] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Strontium.ogg added!
[   10.658202] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Ceres.ogg added!
[   10.658263] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Zirconium.ogg added!
[   10.658325] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Fluorine.ogg added!
[   10.658388] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Alya.ogg added!
[   10.658452] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/moonbeam.ogg added!
[   10.658511] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/OnTheHunt.ogg added!
[   10.658571] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Salacia.ogg added!
[   10.658634] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Europa.ogg added!
[   10.658694] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/CyanMail.ogg added!
[   10.658758] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Syrma.ogg added!
[   10.658827] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/WirelessChargingStarted.ogg added!
[   10.658889] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Beryllium.ogg added!
[   10.658951] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Cricket.ogg added!
[   10.659009] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/CetiAlpha.ogg added!
[   10.659070] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Helium.ogg added!
[   10.659135] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Iapetus.ogg added!
[   10.659200] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Titan.ogg added!
[   10.659260] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Altair.ogg added!
[   10.659320] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/TaDa.ogg added!
[   10.659384] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Arcturus.ogg added!
[   10.659448] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Antares.ogg added!
[   10.659508] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Rhea.ogg added!
[   10.659575] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/tweeters.ogg added!
[   10.659647] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Rang.ogg added!
[   10.659709] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Merope.ogg added!
[   10.659770] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Bellatrix.ogg added!
[   10.659831] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Sirrah.ogg added!
[   10.659896] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Betelgeuse.ogg added!
[   10.659967] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/regulus.ogg added!
[   10.660028] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Mira.ogg added!
[   10.660093] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Pong.ogg added!
[   10.660158] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Heaven.ogg added!
[   10.660219] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Carme.ogg added!
[   10.660280] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Hojus.ogg added!
[   10.660347] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Beat_Box_Android.ogg added!
[   10.660413] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/CaffeineSnake.ogg added!
[   10.660474] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Highwire.ogg added!
[   10.660535] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Stone.ogg added!
[   10.660638] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/CyanDoink.ogg added!
[   10.660708] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Naughty.ogg added!
[   10.660778] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/ChargingStarted.ogg added!
[   10.660849] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Thallium.ogg added!
[   10.660910] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Aldebaran.ogg added!
[   10.660971] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Adara.ogg added!
[   10.661039] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Castor.ogg added!
[   10.661100] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Io.ogg added!
[   10.661169] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Electra.ogg added!
[   10.661231] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Rubidium.ogg added!
[   10.661297] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Palladium.ogg added!
[   10.661358] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/sirius.ogg added!
[   10.661420] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/KzurbSonar.ogg added!
[   10.661482] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Antimony.ogg added!
[   10.661556] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Plastic_Pipe.ogg added!
[   10.661619] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Polaris.ogg added!
[   10.661685] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Voila.ogg added!
[   10.661746] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Capella.ogg added!
[   10.661849] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/UhOh.ogg added!
[   10.661901] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Orere.ogg added!
[   10.661958] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Pirorin.ogg added!
[   10.662008] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Jan.ogg added!
[   10.662060] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Jajan.ogg added!
[   10.662113] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Pipo.ogg added!
[   10.662165] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications/Matete Kudasai.ogg added!
[   10.772724] KernelSU: cmd_add_try_umount: /system/product/media/audio/notifications added!
/*
	same idea as susfs' add_try_umount
	usage:
	./a.out 0xdeadbeef 10001 "/system/etc/hosts"
*/

int main(int argc, char *argv[]) {
	if (argc != 4) {
		printf("Usage: %s <option> <option> <string>\n", argv[0]);
		return 1;
	}

	unsigned long option = strtoul(argv[1], NULL, 0);
	unsigned long arg2 = strtoul(argv[2], NULL, 0);
	const char *arg3 = argv[3];
	unsigned long arg4 = 0;
	unsigned long arg5 = 0;

	printf("SYS_prctl(%lu, %lu, %p, %p, %p)\n", option, arg2, &arg3, &arg4, &arg5);
	syscall(SYS_prctl, option, arg2, arg3, &arg4, &arg5);

	printf("arg3: %lu\n", (unsigned long)arg3);
	printf("arg4: %lu\n", arg4);
	printf("arg5: 0x%lx\n", arg5);
	return 0;

}
@backslashxx

backslashxx commented Sep 1, 2025

Copy link
Copy Markdown
Author

if this gets considered, I can clean it up
im not really sure on the rust part so better clean it up as needed

dmesg log
libra:/ # dmesg | grep KernelSU                                                                                                                                                                                 
[    3.990626] KernelSU: Initialized on: 3.10.108-libra/fbcc23a (arm64) with ksuver: 12107 +path_umount +iterate_dir
[    3.990629] KernelSU: ksu_core_init: LSM hooks not in use.
[    4.429966] KernelSU: ksu_handle_bprm_ksud: filename: /system/bin/init argv1: norandmaps envp_len: 36
[    4.661244] KernelSU: ksu_handle_bprm_ksud: filename: /system/bin/init argv1: selinux_setup envp_len: 183
[    4.690600] KernelSU: kernel_compat: got init_session_keyring
[    4.819432] KernelSU: ksu_handle_bprm_ksud: filename: /system/bin/init argv1: second_stage envp_len: 213
[    4.819441] KernelSU: ksu_handle_bprm_ksud: /system/bin/init second_stage executed
[    4.819444] KernelSU: SELinux permissive or disabled, apply rules!
[    4.841677] KernelSU: vfs_read: /system/etc/init/atrace.rc, comm: init, count: 1024, rc_count: 351
[    4.842687] KernelSU: read_proxy append 673 + 351
[    4.842701] KernelSU: stop vfs_read_hook
[    4.866590] KernelSU: android context saved disabled
[    9.452135] KernelSU: ksu_bprm_check: /data/adb/ksud ELF magic found! ksu_is_compat: 0 
[    9.481320] KernelSU: post-fs-data triggered
[    9.481327] KernelSU: on_post_fs_data!
[    9.481334] KernelSU: stop input_hook
[    9.481342] KernelSU: installing init session keyring for older kernel
[    9.481523] KernelSU: devpts sid: 577
[    9.489920] KernelSU: allowlist version: 3
[    9.489935] KernelSU: load_allow_uid, name: com.android.shell, uid: 2000, allow: 1
[    9.489944] KernelSU: set root profile, key: com.android.shell, uid: 2000, gid: 0, context: u:r:su:s0
[    9.489950] KernelSU: load_allow_uid, name: $, uid: 9999, allow: 0
[    9.489958] KernelSU: set app profile, key: $, uid: 9999, umount modules: 0
[    9.489962] KernelSU: load_allow_uid, name: com.looker.droidify, uid: 10149, allow: 1
[    9.489966] KernelSU: set root profile, key: com.looker.droidify, uid: 10149, gid: 0, context: u:r:su:s0
[    9.489970] KernelSU: load_allow_uid, name: io.github.rabehx.securify, uid: 10156, allow: 0
[    9.489974] KernelSU: set app profile, key: io.github.rabehx.securify, uid: 10156, umount modules: 1
[    9.489979] KernelSU: load_allow_uid, name: bin.mt.plus, uid: 10161, allow: 1
[    9.489983] KernelSU: set root profile, key: bin.mt.plus, uid: 10161, gid: 0, context: u:r:su:s0
[    9.489988] KernelSU: load_allow_uid, name: com.reveny.nativecheck, uid: 10163, allow: 0
[    9.489994] KernelSU: set app profile, key: com.reveny.nativecheck, uid: 10163, umount modules: 1
[    9.489998] KernelSU: load_allow_uid, name: com.franco.kernel, uid: 10184, allow: 1
[    9.490002] KernelSU: set root profile, key: com.franco.kernel, uid: 10184, gid: 0, context: u:r:su:s0
[    9.490006] KernelSU: load_allow_uid, name: com.termux, uid: 10166, allow: 0
[    9.490009] KernelSU: set app profile, key: com.termux, uid: 10166, umount modules: 1
[    9.490013] KernelSU: load_allow_uid, name: org.frknkrc44.hma_oss, uid: 10188, allow: 1
[    9.490017] KernelSU: set root profile, key: org.frknkrc44.hma_oss, uid: 10188, gid: 0, context: u:r:su:s0
[    9.490020] KernelSU: load_allow_list read err: 0
[    9.490023] KernelSU: ksu_show_allow_list
[    9.490025] KernelSU: uid :2000, allow: 1
[    9.490027] KernelSU: uid :9999, allow: 0
[    9.490030] KernelSU: uid :10149, allow: 1
[    9.490032] KernelSU: uid :10156, allow: 0
[    9.490034] KernelSU: uid :10161, allow: 1
[    9.490038] KernelSU: uid :10163, allow: 0
[    9.490040] KernelSU: uid :10184, allow: 1
[    9.490043] KernelSU: uid :10166, allow: 0
[    9.490045] KernelSU: uid :10188, allow: 1
[    9.521570] KernelSU: volumedown_pressed_count: 0
[    9.667984] KernelSU: module mounted!
[    9.727977] KernelSU: SELinux permissive or disabled when handle policy!
[    9.813093] KernelSU: ksu_mount_monitor: devicename: KSU fstype: tmpfs path: /mnt/vendor/mm_workdir count: 1
[    9.813702] KernelSU: cmd_add_try_umount: /system/etc/hosts added!
[    9.817921] KernelSU: cmd_add_try_umount: /system/xbin/zip added!
[    9.818181] KernelSU: cmd_add_try_umount: /system/xbin/bash added!
[    9.818253] KernelSU: cmd_add_try_umount: /system/xbin/pigz added!
[    9.818306] KernelSU: cmd_add_try_umount: /system/xbin/unrar added!
[    9.818369] KernelSU: cmd_add_try_umount: /system/xbin/nano added!
[    9.818424] KernelSU: cmd_add_try_umount: /system/xbin/htop added!
[    9.818484] KernelSU: cmd_add_try_umount: /system/xbin/rsync added!
[    9.818539] KernelSU: cmd_add_try_umount: /system/xbin/7z added!
[    9.818591] KernelSU: cmd_add_try_umount: /system/xbin/vim added!
[    9.818664] KernelSU: cmd_add_try_umount: /system/xbin/su added!
[    9.820691] KernelSU: cmd_add_try_umount: /system/xbin added!
[    9.821499] KernelSU: volumedown_pressed_count: 0
[    9.966402] KernelSU: ksu_handle_bprm_ksud: filename: /system/bin/app_process64 argv1: second_stage envp_len: 213
[    9.966410] KernelSU: ksu_handle_bprm_ksud: exec app_process, /data prepared, second_stage: 1
[    9.966414] KernelSU: on_post_fs_data already done
[    9.966417] KernelSU: stop execve_hook
[   11.746504] KernelSU: volumedown_pressed_count: 0
[   11.848351] KernelSU: ksu_sucompat_exit: hooks disabled: execve/execveat_su, faccessat, stat, devpts
[   19.111424] KernelSU: renameat: packages.list.tmp -> packages.list, new path: /system/packages.list
[   19.111453] KernelSU: track_throne_function: /data/system/packages.list found!
[   19.126530] KernelSU: Searching manager...
[   19.126585] KernelSU: search_manager: dir: /data/app got magic! 0xef53
[   19.132121] KernelSU: Found new base.apk at path: /data/app/~~yXBu7FMrFlpoNWXOAhyO_g==/com.drhowdydoo.diskinfo-sxSMxYUbY5nEd2uTcPsj5A==/base.apk, is_manager: 0
[   19.135726] KernelSU: Found new base.apk at path: /data/app/~~NYCORQhCzJg9249zpsDzzQ==/com.looker.droidify-6532ELVPKUTIjd1-fCpjDA==/base.apk, is_manager: 0
[   19.140834] KernelSU: Found new base.apk at path: /data/app/~~FEjBDdRRXnraR8PLhBmh2Q==/com.franco.kernel-nVGFDsiAMdmBXk9086oixQ==/base.apk, is_manager: 0
[   19.145745] KernelSU: sha256: 4359c171f32543394cbc23ef908c4bb94cad7c8087002ba164c8230948c21549, expected: 4359c171f32543394cbc23ef908c4bb94cad7c8087002ba164c8230948c21549
[   19.161469] KernelSU: Found new base.apk at path: /data/app/~~Jn1KZVduLz06x6hmjxBNzg==/me.weishu.kernelsu-GAzxwTSz8B2uVZ3snOCNXg==/base.apk, is_manager: 1
[   19.161482] KernelSU: manager pkg: me.weishu.kernelsu
[   19.161504] KernelSU: Crowning manager: me.weishu.kernelsu(uid=10189)
[   19.161510] KernelSU: Stop searching
[   19.161522] KernelSU: Search manager finished
[   28.749600] KernelSU: allow root for: 2000
[   28.750224] KernelSU: kernelnosu su->ksud
[   35.060693] KernelSU: boot_complete triggered
[   35.061828] KernelSU: volumedown_pressed_count: 0
[   44.669088] KernelSU: handle umount for uid: 10163, pid: 2262
[   44.669102] KernelSU: try_umount: path: /system/xbin 
[   44.669188] KernelSU: ksu_path_umount: path: /system/xbin code: 0
[   44.669196] KernelSU: try_umount: path: /system/xbin/vim 
[   44.669201] KernelSU: try_umount: path: /system/xbin/7z 
[   44.669206] KernelSU: try_umount: path: /system/xbin/rsync 
[   44.669210] KernelSU: try_umount: path: /system/xbin/htop 
[   44.669215] KernelSU: try_umount: path: /system/xbin/nano 
[   44.669219] KernelSU: try_umount: path: /system/xbin/unrar 
[   44.669223] KernelSU: try_umount: path: /system/xbin/pigz 
[   44.669228] KernelSU: try_umount: path: /system/xbin/bash 
[   44.669233] KernelSU: try_umount: path: /system/xbin/zip 
[   44.669241] KernelSU: try_umount: path: /system/etc/hosts 
[   44.669299] KernelSU: ksu_path_umount: path: /system/etc/hosts code: 0
libra:/ # 
related: tiann#2531, https://gitlab.com/simonpunk/susfs4ksu/

@backslashxx backslashxx closed this Sep 7, 2025
@backslashxx backslashxx deleted the umount branch September 7, 2025 08:28
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
Added from 5ec1cff@79c4a17 (+23)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings

Other changes: (+45)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: handle backports
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
#include <stdio.h>
#include <stdlib.h>
#include <sys/syscall.h>
#include <unistd.h>

int main(int argc, char *argv[]) {
	if (argc != 4) {
		printf("Usage: %s <option> <option> <string>\n", argv[0]);
		return 1;
	}

	unsigned long option = strtoul(argv[1], NULL, 0);
	unsigned long arg2 = strtoul(argv[2], NULL, 0);
	const char *arg3 = argv[3];
	unsigned long arg4 = 0;
	unsigned long arg5 = 0;

	printf("SYS_prctl(%lu, %lu, %p, %p, %p)\n", option, arg2, &arg3, &arg4, &arg5);
	syscall(SYS_prctl, option, arg2, arg3, &arg4, &arg5);

	printf("arg3: %lu\n", (unsigned long)arg3);
	printf("arg4: %lu\n", arg4);
	printf("arg5: 0x%lx\n", arg5);
	return 0;

}
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
Added from 5ec1cff@79c4a17 (+23)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: handle backports
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
Added from 5ec1cff@79c4a17 (+23)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: handle backports
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
Added from 5ec1cff@79c4a17 (+23)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: handle backports
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
Added from 5ec1cff@79c4a17 (+23)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: handle backports
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 10, 2025
Added from 5ec1cff@79c4a17 (+23)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 11, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 11, 2025
Added from 5ec1cff@79c4a17 (+23)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 14, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 15, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 16, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 16, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+magic

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 16, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 16, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	ksud: add cmd for nuke-ext4-sysfs
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: core_hook: expose nuke_ext4_sysfs to prctl interface
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 16, 2025
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 16, 2025
#include <stdio.h>
#include <stdlib.h>
#include <sys/syscall.h>
#include <unistd.h>

int main(int argc, char *argv[]) {
	if (argc != 4) {
		printf("Usage: %s <option> <option> <string>\n", argv[0]);
		return 1;
	}

	unsigned long option = strtoul(argv[1], NULL, 0);
	unsigned long arg2 = strtoul(argv[2], NULL, 0);
	const char *arg3 = argv[3];
	unsigned long arg4 = 0;
	unsigned long arg5 = 0;

	printf("SYS_prctl(%lu, %lu, %p, %p, %p)\n", option, arg2, &arg3, &arg4, &arg5);
	syscall(SYS_prctl, option, arg2, arg3, &arg4, &arg5);

	printf("arg3: %lu\n", (unsigned long)arg3);
	printf("arg4: %lu\n", arg4);
	printf("arg5: 0x%lx\n", arg5);
	return 0;

}
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 16, 2025
basically add try umount from susfs, but native to ksu
TODO: add proper comments and shit
backslashxx added a commit to backslashxx/KernelSU that referenced this pull request Sep 16, 2025
Added from 5ec1cff@63c615e (+24)
	implement magic mount
	restorecon: set adb_file to system_file for module files
	magic_mount: use trusted.overlay.opaque
	chore: fmt
	magic_mount: supports whiteout
	chore: refine code
	magic_mount: fix
	log: make verbose logging optional
	magic_mount: refine
	ksud: fix disable / enable modules
	ksud: fix odm not magic-mounted
	manager: no need to check overlayfs
	ksud: fix partition link
	ksud: fix clone symlink
	ksud: refine tmpfs
	ksud: add KSU_MAGIC_MOUNT to env (5ec1cff#5)
	manager: remove shrink image
	use module dir name as real id
	allow restore uninstalled module
	ksud: make tmpfs and magic mount optional
	ksud: fix stat
	reformat rust codes
	app: persist show system app settings
	magic mount: make mount points read only

Other changes: (+46)
	ksud: move workdir to /mnt/vendor
	ksud: remove tmpfs mounting
	ksud: tell prctl interface about our mounts (5ec1cff#16)
	ksud: add cmd for add-try-umount (5ec1cff#16)
	ksud: add cmd for nuke-ext4-sysfs
	workflows: debloat
	ksud: add armeabi-v7a support
	manager:  failure mode dummy demo
	dummy.keystore
	manager: unofficial build
	manager: Add ABI and Kernel archirecture info into InfoCardItem
	kernel: drop LKM and kprobes support
	kernel: restore compat code required for old kernels
	kernel: expose allowlist workaround as Kconfig option
	kernel: core_hook: screw path_umount backport, call sys_umount directly
	kernel: core_hook: expose prctl interface for umount list (5ec1cff#16)
	kernel: core_hook: only umount when unmountable > 0
	kernel: core_hook: expose nuke_ext4_sysfs to prctl interface
	kernel: throne_tracker: offload to kthread (tiann#2632)
	kernel: sucompat: increase reliability, commonize and micro-optimize (tiann#2656)
	kernel: sucompat: sucompat toggle support for non-kp (tiann#2506)
	kernel: ksud: migrate ksud execution to security_bprm_check (tiann#2653)
	kernel: core_hook: intercept devpts via security_inode_permission LSM
	kernel: compat: migrate sucompat strncpy_from_user to copy_from_user
	kernel: selinux: fix pointer mismatch with 32-bit ksud on 64-bit kernels
	kernel: ksud: provide dummy handlers for old hooks
	kernel: core_hook: earlier escape_to_root already-root check
	kernel: handle backports
	kernel: expose KSU_LSM_SECURITY_HOOKS on Kconfig
	kernel: sucompat: provide do_execve_common handler for <= 3.13
	kernel: ksud: provide is_ksu_transition check v2
	kernel: core_hook: no ext4_unregister_sysfs, no problem
	kernel: throne_tracker: add strscpy/strlcpy compat
	kernel: ksud: d_is_reg to IS_REG
	kernel: Makefile: remove overlayfs requirement
	kernel: throne_tracker: resolve s_magic for < 3.9
	kernel: ksud: handle read_iter requirement conditionally
	kernel: apk_sign: casting to char for strcmp -> memcmp
	kernel: apk_sign: migrate generic_file_llseek -> vfs_llseek
	kernel: throne_tracker: handle filldir_t ABI mismatch on <= 3.18
	kernel: compat: inline iterate_dir -> vfs_readdir compat
	kernel: apk_sign: fix return check for ksu_sha256
	kernel: apk_sign: add more size/hash pairs
	kernel: ksu: printout quirks / backports / etc on init
	kernel: sucompat: provide getname_flags (user) ultimatum hook
	kernel: sucompat: provide getname_flags (kernel) ultimatum hook
	kernel: core_hook: add support for KernelNoSU
	KernelSU v1.0.5+

Warning: Managers built from this repo has a known keystore.
See dummy.keystore.

Signed-off-by: backslashxx <118538522+backslashxx@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant