topjohnwu / Magisk

The Magic Mask for Android
GNU General Public License v3.0
47.59k stars 12.08k forks source link

Huawei P Smart 2019 POT-LX1 Bootloop #1381

Closed xcjps closed 5 years ago

xcjps commented 5 years ago

Hello, No way to root my device all versions of magisk get bootloop below is the problem i think. My device has system.img erofs filesystem i guess. dmesg-ramoops-0.txt fdisk_list.txt

<12>[ 18.338775s][pid:1,cpu5,init]magiskinit: system_as_root=[1] <12>[ 18.338775s][pid:1,cpu5,init]magiskinit: slot=[] <12>[ 18.338806s][pid:1,cpu5,init]magiskinit: dt_dir=[/proc/device-tree/firmware/android] <12>[ 18.339141s][pid:1,cpu5,init]magiskinit: Cleaning rootfs <12>[ 18.363861s][pid:1,cpu6,init]magiskinit: Early mount system_root <12>[ 18.367401s][pid:1,cpu6,init]magiskinit: Found system: [mmcblk0p64] (179, 64) <3>[ 18.369293s][pid:1,cpu7,init]EXT4-fs (mmcblk0p64): VFS: Can't find ext4 filesystem <12>[ 18.369598s][pid:1,cpu7,init]magiskinit: mount /dev/block/mmcblk0p64->/system_root failed with 22: Invalid argument <12>[ 18.369628s][pid:1,cpu7,init]magiskinit: mount /system_root/system->/system failed with 2: No such file or directory <12>[ 18.369750s][pid:1,cpu7,init]magiskinit: Early mount vendor <12>[ 18.369750s][pid:1,cpu7,init]magiskinit: Found vendor: [mmcblk0p61] (179, 61) <6>[ 18.369812s][pid:1,cpu7,init]erofs: read_super, device -> /dev/block/mmcblk0p61 <6>[ 18.369812s][pid:1,cpu7,init]erofs: options -> (null) <6>[ 18.371246s][pid:1,cpu5,init]erofs: root inode @ nid 0 <6>[ 18.372436s][pid:1,cpu6,init]erofs: mounted on /dev/block/mmcblk0p61 with opts: (null). <12>[ 18.372497s][pid:1,cpu6,init]magiskinit: open: /proc/device-tree/firmware/android/fstab/product/dev failed with 2: No such file or directory <12>[ 18.372558s][pid:1,cpu6,init]magiskinit: Early mount odm <12>[ 18.372558s][pid:1,cpu6,init]magiskinit: Found odm: [mmcblk0p62] (179, 62) <6>[ 18.372619s][pid:1,cpu6,init]erofs: read_super, device -> /dev/block/mmcblk0p62 <6>[ 18.372619s][pid:1,cpu6,init]erofs: options -> (null) <6>[ 18.373626s][pid:1,cpu5,init]erofs: root inode @ nid 0 <6>[ 18.374755s][pid:1,cpu6,init]erofs: mounted on /dev/block/mmcblk0p62 with opts: (null). <12>[ 18.374786s][pid:1,cpu6,init]magiskinit: sepol: no selinux <12>[ 18.374786s][pid:1,cpu6,init]magiskinit: Clone root dir from system to rootfs <12>[ 18.374847s][pid:1,cpu6,init]magiskinit: fopen: /init.rc failed with 2: No such file or directory <12>[ 18.374847s][pid:1,cpu6,init]magiskinit: Inject magisk services: [aJOAIaA] [0nOU3j7] [ALDNDHk] <12>[ 18.374908s][pid:1,cpu6,init]magiskinit: lstat /init.rc failed with 2: No such file or directory <12>[ 18.374938s][pid:1,cpu6,init]magiskinit: lstat /sbin failed with 2: No such file or directory <12>[ 18.374969s][pid:1,cpu6,init]magiskinit: open: /sbin failed with 2: No such file or directory <12>[ 18.374969s][pid:1,cpu6,init]magiskinit: readdir failed with 9: Bad file number <12>[ 18.374969s][pid:1,cpu6,init]magiskinit: Mount /sbin tmpfs overlay <12>[ 18.375305s][pid:1,cpu6,init]magiskinit: mount tmpfs->/sbin failed with 2: No such file or directory <12>[ 18.375305s][pid:1,cpu6,init]magiskinit: open: /sbin failed with 2: No such file or directory <12>[ 18.375305s][pid:1,cpu6,init]magiskinit: open: /sbin/.magisk/config failed with 2: No such file or directory <12>[ 18.375335s][pid:1,cpu6,init]magiskinit: open: /sbin/magiskinit failed with 2: No such file or directory <12>[ 18.375335s][pid:1,cpu6,init]magiskinit: open: /sbin/magisk failed with 2: No such file or directory <12>[ 18.375366s][pid:1,cpu6,init]magiskinit: mmap failed with 9: Bad file number
xcjps commented 5 years ago

using twrp adb shell i can mount /dev/block/mmcblk0p64 manually to any empty folder but in read mode only,

~ # mkdir system_root ~ # mount /dev/block/mmcblk0p64 /system_root mount returns it as /dev/block/mmcblk0p64 on /system_root type erofs (ro,relatime,user_xattr,acl,lz4asm)

xcjps commented 5 years ago

I found out the bug now I have fully rooted POT-LX1, the problem was xmount(block_dev, "/system_root", "ext4", MS_RDONLY, nullptr);

you have to change it to use erofs and then it will boot ok !

xcjps commented 5 years ago

Can you make magisk support EROFS filesystem for kirin710 pot-lx1 system partition? Because I cannot update to newest magisk build, I have to patch magiskboot using IdaPro everytime, can't compile myself at the moment.

kangvip commented 5 years ago

I build a test one base on 19.1 You can have a test. I test it on my p30pro(erofs system), work ok. https://pan.baidu.com/s/1YlTOEQTgc3Ir2Hu6NS65eQ pw: 4l2o

kangvip commented 5 years ago

I get a boot loop

05-18 23:23:36.553 7596 7625 I Process : Sending signal. PID: 7596 SIG: 9 05-18 23:23:36.553 1234 4855 W ActivityManager: Process android.process.acore has crashed too many times: killing! 05-18 23:23:36.553 1234 4855 I ActivityManager: Killing 7596:android.process.acore/u0a6 (adj 260): crash 05-18 23:23:36.553 1234 4855 D ActivityManager: cleanUpApplicationRecord app: ProcessRecord{956ab35 7596:android.process.acore/u0a6}, app.bad: true, restarting: false, allowRestart: false 05-18 23:23:36.554 1234 1264 W libprocessgroup: kill(-7596, 9) failed: No such process 05-18 23:23:36.554 1234 4855 I ActivityManager: startProcess: reset pid for ProcessRecord{956ab35 0:android.process.acore/u0a6} 05-18 23:23:36.555 1234 3322 W ActivityManager: Unable to launch app com.android.providers.contacts/10006 for provider com.android.contacts: launching app became null 05-18 23:23:36.555 2000 2333 E HsmCoreServiceImpl: onTransact in code is: 102 05-18 23:23:36.555 2000 2333 I MediaProcessHandler: processOp opType: 1, uid: 10006, pid: 7596 05-18 23:23:36.555 2000 2333 W MediaProcessHandler: remove target not exist, maybe the UI process: uid: 10006, pid: 7596 05-18 23:23:36.555 2000 2333 I MediaProcessHandler: executedCallBack opType: 1 mMediaStatusObservers.size=0 05-18 23:23:36.555 2000 2599 D HicomMonitor: doBroadcastMessage action id: 17 05-18 23:23:36.555 2667 3035 E ActivityThread: Failed to find provider info for com.android.contacts 05-18 23:23:36.556 2000 2333 I BoosterSwitchP: notifyUidState do nothing 05-18 23:23:36.556 2000 2333 I DeepNoDisturbP: notifyUidState 05-18 23:23:36.556 2000 2333 I BrowserChrP: notifyUidState 05-18 23:23:36.557 1234 1721 W AwareLog: SchedLevelBoost: onProcessDied config not set! 05-18 23:23:36.565 574 574 I Zygote : say something before unblock SIGCHLD, uid: 10006 pid: 7626, do not delete this log! 05-18 23:23:36.567 1234 1263 I ActivityManager: Start proc 7626:android.process.acore/u0a6 for restart android.process.acore 05-18 23:23:36.568 1234 1971 E ProcessInfoCollector: getProcessInfo: failed to find this proc 05-18 23:23:36.569 7626 7626 I d.process.acor: Reinit property: dalvik.vm.checkjni= false 05-18 23:23:36.571 7626 7626 E d.process.acor: Not starting debugger since process cannot load the jdwp agent. 05-18 23:23:36.577 7626 7626 D ZrHung.AppEyeUiProbe: AppEyeUIP created. 05-18 23:23:36.579 7626 7626 D ActivityThread: Attach thread to application 05-18 23:23:36.583 574 574 I Zygote : Process 7596 exited due to signal (9) 05-18 23:23:36.588 1234 1264 W libprocessgroup: kill(-7596, 9) failed: No such process 05-18 23:23:36.588 1234 1264 I libprocessgroup: Successfully killed process cgroup uid 10006 pid 7596 in 34ms 05-18 23:23:36.596 7626 7626 I d.process.acor: The ClassLoaderContext is a special shared library.

kangvip commented 5 years ago

@xcjps

kangvip commented 5 years ago

HWVOG:/ $ su HWVOG:/ # mount rootfs on / type rootfs (rw,seclabel,size=2930696k,nr_inodes=732674) /dev/block/sdd61 on /system_root type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd61 on /system type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) tmpfs on /sbin type tmpfs (rw,seclabel,relatime,size=3503348k,nr_inodes=875837,mode=755) tmpfs on /dev type tmpfs (rw,seclabel,nosuid,relatime,size=3503348k,nr_inodes=875837,mode=755) devpts on /dev/pts type devpts (rw,seclabel,relatime,mode=600,ptmxmode=000) proc on /proc type proc (rw,relatime,gid=3009,hidepid=2) sysfs on /sys type sysfs (rw,seclabel,relatime) selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime) tmpfs on /mnt type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,size=3503348k,nr_inodes=875837,mode=755,gid=1000) /dev/block/sdd58 on /vendor type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd59 on /odm type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd63 on /version type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd62 on /product type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd60 on /cust type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd50 on /vendor/modem/modem_driver type ext4 (ro,seclabel,relatime,data=ordered) /dev/block/sdd64 on /preload type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) none on /acct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct) debugfs on /sys/kernel/debug type debugfs (rw,seclabel,relatime) none on /dev/stune type cgroup (rw,nosuid,nodev,noexec,relatime,schedtune) none on /config type configfs (rw,nosuid,nodev,noexec,relatime) none on /mnt/update_engine type tmpfs (rw,seclabel,nosuid,nodev,relatime,size=3503348k,nr_inodes=875837,mode=700) none on /dev/cpuctl type cgroup (rw,nosuid,nodev,noexec,relatime,cpu) none on /dev/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset,noprefix,release_agent=/sbin/cpuset_release_agent) cg2_bpf on /dev/cg2_bpf type cgroup2 (rw,nosuid,nodev,noexec,relatime) bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime) pstore on /sys/fs/pstore type pstore (rw,seclabel,nosuid,nodev,noexec,relatime) none on /dev/iolimit type cgroup (rw,relatime,iolimit) none on /dev/blkio type cgroup (rw,relatime,blkio) none on /dev/workingset type cgroup (rw,nosuid,nodev,noexec,relatime,workingset) adb on /dev/usb-ffs/adb type functionfs (rw,relatime) hdb on /dev/usb-ffs/hdb type functionfs (rw,relatime) none on /dev/frz type cgroup (rw,relatime,freezer) /dev/block/sdd7 on /sec_storage type ext4 (rw,context=u:object_r:teecd_data_file:s0,nosuid,nodev,noatime,discard,nodelalloc,data=journal) tracefs on /sys/kernel/debug/tracing type tracefs (rw,seclabel,relatime) /dev/block/sdd17 on /splash2 type ext4 (rw,context=u:object_r:splash2_data_file:s0,nosuid,nodev,noatime,data=ordered) /dev/block/sdd65 on /data type f2fs (rw,seclabel,nosuid,nodev,noatime,background_gc=on,discard,heap,user_xattr,inline_xattr,acl,inline_data,inline_dentry,extent_cache,mode=adaptive,verify_encrypt,inline_encrypt,sdp_encrypt,active_logs=6,reserve_root=5120,resuid=0,resgid=1000) /dev/block/sdd22 on /cache type ext4 (rw,seclabel,nosuid,nodev,noatime,data=ordered) /dev/block/sdd29 on /mnt/hisee_fs type ext4 (rw,context=u:object_r:hisee_data_file:s0,noatime,data=ordered) /dev/block/sdd47 on /vendor/modem/modem_fw type ext4 (ro,context=u:object_r:modem_fw_file:s0,relatime,data=ordered) /dev/block/sdd3 on /mnt/modem/modem_secure type ext4 (rw,context=u:object_r:modem_secure_file:s0,noatime,noauto_da_alloc,data=ordered) /dev/block/sdd10 on /mnt/modem/mnvm2:0 type ext4 (rw,context=u:object_r:modem_nv_file:s0,nosuid,nodev,noatime,noauto_da_alloc,data=ordered) tmpfs on /storage type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,size=3503348k,nr_inodes=875837,mode=755,gid=1000) /sbin/.magisk/block/system_root on /sbin/.magisk/mirror/system_root type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /sbin/.magisk/block/vendor on /sbin/.magisk/mirror/vendor type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /sbin/.magisk/block/data on /sbin/.magisk/mirror/data type f2fs (rw,seclabel,relatime,background_gc=on,discard,heap,user_xattr,inline_xattr,acl,inline_data,inline_dentry,extent_cache,mode=adaptive,verify_encrypt,inline_encrypt,sdp_encrypt,active_logs=6,reserve_root=5120,resuid=0,resgid=1000) /sbin/.magisk/block/data on /sbin/.magisk/modules type f2fs (rw,seclabel,relatime,background_gc=on,discard,heap,user_xattr,inline_xattr,acl,inline_data,inline_dentry,extent_cache,mode=adaptive,verify_encrypt,inline_encrypt,sdp_encrypt,active_logs=6,reserve_root=5120,resuid=0,resgid=1000) none on /sys/fs/cgroup type tmpfs (rw,seclabel,relatime,size=3503348k,nr_inodes=875837,mode=750,gid=1000) none on /sys/fs/cgroup/pids type cgroup (rw,relatime,pids) /data/media on /mnt/runtime/default/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,multiuser,mask=6,derive_gid,default_normal,reserved=20MB) /data/media on /storage/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=1015,multiuser,mask=6,derive_gid,default_normal,reserved=20MB) /data/media on /mnt/runtime/read/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=23,derive_gid,default_normal,reserved=20MB) /data/media on /mnt/runtime/write/emulated type sdcardfs (rw,nosuid,nodev,noexec,noatime,fsuid=1023,fsgid=1023,gid=9997,multiuser,mask=7,derive_gid,default_normal,reserved=20MB) HWVOG:/ #

kangvip commented 5 years ago

HWVOG:/ $ su HWVOG:/ # mount |grep erofs /dev/block/sdd61 on /system_root type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd61 on /system type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd58 on /vendor type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd59 on /odm type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd63 on /version type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd62 on /product type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd60 on /cust type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /dev/block/sdd64 on /preload type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /sbin/.magisk/block/system_root on /sbin/.magisk/mirror/system_root type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm) /sbin/.magisk/block/vendor on /sbin/.magisk/mirror/vendor type erofs (ro,seclabel,relatime,user_xattr,acl,lz4asm)

kangvip commented 5 years ago

e.log