Root Troubleshooting Guide
Comprehensive solutions for common rooting problems organized by root method and failure type with step-by-step diagnostic procedures.
Emergency First
If your device won't boot, jump to Emergency Recovery immediately.
Quick Navigation
Emergency Issues
Root Method Issues
Specific Problems
- Bootloader and Fastboot Issues
- OTA Update Problems
- Play Integrity and Banking Apps
- App Detection and Compatibility
- Device-Specific Issues
- Performance and Optimization
Emergency Recovery
Device Won't Boot (Bootloop)
Symptoms: Device stuck on boot logo, loops endlessly, or only boots to recovery/fastboot.
Immediate Actions:
Try Magisk Safe Mode (if Magisk installed)
- Hold Volume Down during early boot to trigger module safe mode (timing varies by device/Magisk build)
- If accessible via recovery/adb:bash
adb shell magisk --remove-modules # Or manually adb shell rm -rf /data/adb/modules/* adb reboot
Boot to Recovery/Bootloader
- Power + Volume combo varies by device:
- Pixel: Power + Volume Down, select Recovery
- Samsung: Power + Volume Up (+ Bixby on older models) while USB connected
- Xiaomi: Power + Volume Up
- OnePlus: Power + Volume Down
- Most others: Power + Volume Up (recovery), Power + Volume Down (bootloader)
- Detailed instructions: Custom Recovery Installation
- Power + Volume combo varies by device:
Wipe Dalvik/ART Cache
- Custom recovery: Wipe → Advanced wipe → Dalvik/ART cache + Cache
- Stock recovery: "Wipe cache partition" (if available on your device)
Undo Last Change
- Remove the last module/kernel/ROM you flashed
- Restore last NANDroid backup if available
Advanced Recovery Steps:
If Custom Recovery Installed (TWRP/OrangeFox)
Option A: Remove last installed module
bash# Boot to TWRP # Mount system and data partitions # Open Terminal # List Magisk modules ls /data/adb/modules # Remove problematic module rm -rf /data/adb/modules/[module-name] # RebootOption B: Disable all modules
bash# In TWRP Terminal touch /data/adb/magisk/disable # Or touch /data/adb/modules/disable # RebootOption C: Restore backup
- TWRP → Restore → Select recent backup
- Restore boot, system, data partitions
- Reboot
Flash Correct Stock/Patched Image
For Android 13+ devices (Pixel 7/8/9/10, some Samsung/OnePlus/Xiaomi):
- Patch/flash
init_boot.img(not boot.img)
For older devices:
- Patch/flash
boot.img
Commands (A/B devices):
bash# Enter bootloader/fastboot mode adb reboot bootloader fastboot devices # Flash patched image to both slots fastboot flash init_boot_a magisk_patched.img fastboot flash init_boot_b magisk_patched.img fastboot rebootReturn to stock:
bashfastboot flash init_boot stock_init_boot.img # Or for older devices fastboot flash boot stock_boot.img fastboot reboot- Patch/flash
Flash Full Stock Firmware
- Pixel: Use Android Flash Tool (web) or factory image scripts (guide)
- Samsung: Odin with full firmware (AP/BL/CP/CSC). Use HOME_CSC to preserve data (guide)
- Xiaomi/POCO/Redmi: Mi Flash Tool with fastboot ROM - beware Anti-Rollback (guide)
- OnePlus: MSMDownloadTool or fastboot packages (guide)
- More device guides: All rooting guides
Factory Reset (Last Resort)
- Stock recovery: Wipe data/factory reset
- Fastboot:
fastboot -wthenfastboot reboot - Warning: Erases all user data
Emergency Commands Reference:
# Reboot to different modes
adb reboot bootloader
adb reboot recovery
fastboot reboot fastboot # userspace fastboot (fastbootd) for dynamic partitions
# Boot recovery without flashing
fastboot boot recovery.img
# Disable all Magisk modules
adb shell magisk --remove-modules
# Flash original images
fastboot flash boot stock_boot.img
fastboot flash init_boot stock_init_boot.img
# Switch active slot (A/B devices)
fastboot getvar current-slot
fastboot set_active a # or b
# Full wipe
fastboot -wPro Tips:
- Always keep a copy of stock boot/init_boot images
- On A/B devices, use Magisk's "Install to Inactive Slot (After OTA)"
- Don't mix images from different builds
- Build fingerprint must match
Root Not Working
Symptoms: Apps report "no root," superuser prompts don't appear, or manager shows N/A.
Basic Verification:
Check Root Manager Status
- Magisk: App should show version numbers. "Installed" should display. If N/A, installation failed
- KernelSU: App shows kernel supported/enabled. If unsupported, flash KSU-enabled kernel
- APatch: App shows KernelPatch status. Check SuperKey configuration
- Test with a simple root checker app or Termux +
su
Verify Correct Image
bashadb shell su -c "echo Root works"If "su: not found" → root not installed
Solutions by Root Method:
Magisk:
Reinstall to Current Slot
- Download latest Magisk APK (v30.7 as of February 2026) from official GitHub
- Open → Install → Direct Install (or "Install to Inactive Slot" after OTA)
- Reboot
- See complete Magisk guide for detailed instructions
Ensure Correct Target Image
- Android 13+: Patch
init_boot.img(not boot.img) - Older devices: Patch
boot.img - Extract from your exact firmware build
- Android 13+: Patch
Enable Zygisk (if needed)
- Settings → Enable Zygisk
- Configure DenyList for apps that mustn't see root
- Reboot after changes
Check Module Conflicts
- Disable all modules and re-enable one at a time
- See Emergency Recovery
Android 16 QPR2 Compatibility
- Magisk now supports the new sepolicy binary format introduced in Android 16 QPR2. Ensure you are on the latest stable release (v30.7+) if running Android 16.
- Magisk 30.7 was released with support for Android 16 QPR2; if you updated your firmware recently, update Magisk before re-patching.
KernelSU:
- KernelSU officially supports Android GKI 2.0 devices (kernel 5.10+). Older kernels (4.14+) are also supported, but the kernel will need to be built manually.
- Match kernel to your ROM/firmware version and vendor partition
- Use official KernelSU Manager
- KernelSU now provides LKM modules for kernels up through android16-6.12
- See complete KernelSU guide for installation help
APatch:
- APatch is a universal root solution for Android kernel versions 3.18 – 6.12
- Do not run APatch together with Magisk or KernelSU on the same active slot. Use one root stack at a time.
- Follow official APatch guide for your device/ROM
Clean Re-install (Magisk):
# Method A: Patch and flash
# 1) Extract correct image (boot.img or init_boot.img) from current firmware
# 2) Patch with Magisk on-device
# 3) Flash with fastboot to both slots if A/B
fastboot flash init_boot_a magisk_patched.img
fastboot flash init_boot_b magisk_patched.img
fastboot rebootMethod B: Recovery flash (legacy devices with custom recovery)
- Boot to TWRP/OrangeFox
- Flash Magisk ZIP/APK (rename .apk to .zip)
- Reboot and install Magisk app if needed
Bricked Device Recovery
Determine Brick Type:
- Soft brick (recoverable): Can reach fastboot/download/recovery; device shows signs of life. High recovery chance
- Hard brick: No response, no LEDs, not detected by PC. Recovery depends on SoC; professional help may be required
Soft Brick Recovery:
Enter Recovery/Bootloader
- Try all key combinations (see Device Won't Boot)
Flash Stock Firmware
- Pixel: Factory images/Android Flash Tool
- Samsung: Odin with full firmware. Use HOME_CSC to preserve data. KNOX 0x1 is permanent once bootloader unlocked
- Xiaomi: Mi Flash Tool with fastboot ROM. Beware Anti-Rollback (ARB)
- OnePlus: MSMDownloadTool or fastboot packages
Factory Reset if System Corrupted
bashfastboot -w fastboot reboot
Hard Brick Options:
Recovery options vary by SoC/manufacturer:
- Qualcomm EDL (9008): Requires test points or special cable; many devices require authorized accounts
- OnePlus MSM tools: Full unbrick to factory state (legacy models)
- Samsung Smart Switch Emergency Recovery: Limited success, model-dependent
- Professional services: JTAG/ISP/board-level repair for valuable devices
Prevention:
- Confirm firmware/build numbers match exactly
- Keep device charged; don't interrupt flash operations
- Always back up before flashing
Magisk Troubleshooting
Installation Fails
Error: "Cannot patch boot image"
Causes:
- Corrupted boot image
- Wrong firmware version
- Insufficient storage
Solutions:
Verify boot image
bash# Check boot image integrity file boot.img # Should show: "Android bootimg"Clear Magisk cache
- Settings → Apps → Magisk
- Clear cache and data
- Reinstall Magisk
Extract boot from firmware
- Use payload-dumper-go (for Pixel/OnePlus)
- Use firmware extractor tools
- Verify MD5 hash matches
Try alternative patching
- Install to recovery instead
- Patch on PC using Magisk
- Use fastboot mode installation
Error: "Installation failed! This device is not supported"
Solutions:
Update Magisk
- Download latest version (v30.7+ for Android 16 QPR2 support)
- Alpha/Beta may support newer devices first
Check device compatibility
- Some devices need special Magisk builds
- Search XDA for device-specific versions
Try KernelSU or APatch as alternative
- Some devices incompatible with Magisk
- KernelSU or APatch may work where Magisk doesn't
Magisk Modules Not Working
Diagnostic steps:
Check module status
- Magisk → Modules
- Look for "!" icon (indicates issues)
View module logs
bashadb shell su cat /cache/magisk.logTest in safe mode
- Disable all modules
- Enable one at a time
- Identify conflicting module
Common module issues:
| Problem | Solution |
|---|---|
| Module shows as "!" | Incompatible or corrupted - reinstall |
| Module enabled but not working | Check logs, verify compatibility |
| Modules disappear after reboot | Core Magisk issue - reinstall Magisk |
| Some modules cause bootloop | Disable via recovery, check compatibility |
DenyList / Root Hiding Not Working
For Magisk v24+ (current):
Configure DenyList
- Settings → Enable Zygisk
- Settings → Configure DenyList
- Add apps needing root hidden
Enforce DenyList
- Enable "Enforce DenyList"
- Reboot device
Additional hiding (pick one strategy):
Strategy A: Shamiko (popular choice)
- Install Shamiko module
- Shamiko doesn't work with enforced DenyList - disable "Enforce DenyList" when using Shamiko
- Add target apps to DenyList (Shamiko reads it but uses its own hiding method)
- Rename Magisk app (Settings → Hide the Magisk app)
Strategy B: Zygisk Assistant / NoHello
- For best results, enable Magisk's Enforce DenyList option if NOT also using Shamiko or Zygisk Assistant or NoHello
Clear target app data after setup
- Force stop banking/target app
- Clear its cache and data
- Reboot, then re-open app
Advanced detection evasion:
# Hide Magisk app (via Magisk settings or manually)
# Hide props
resetprop --delete ro.debuggable
resetprop --delete ro.secureMagisk Broke OTA Updates
Symptoms: OTA fails to install or bootloop after OTA
Solution:
Before OTA (preparation):
bash# Backup current setup # Disable all modules # Uninstall Magisk (Restore Images) # Apply OTA # Re-root with new boot imageAfter failed OTA:
- Boot to recovery
- Flash stock boot from new firmware
- Flash new patched boot
- Reboot
Prevention:
- Always uninstall Magisk before OTA, or use "Install to Inactive Slot"
- Use OTA preservation modules with caution
- Consider custom ROM for seamless updates
KernelSU Troubleshooting
Installation Issues
Error: "No KernelSU detected" / App shows "Unsupported"
Causes:
- Wrong kernel flashed
- Kernel doesn't have KernelSU built-in
- LKM module not loaded
Solutions:
Verify kernel
bashadb shell su -c "cat /proc/version" # Should show KernelSU in version stringUnderstand running modes
- Since version 0.9.0, KernelSU supports two running modes on GKI devices: GKI: Replace the original kernel of the device with the Generic Kernel Image (GKI) provided by KernelSU.
- LKM mode: Load KernelSU as a kernel module (recommended for GKI devices). Use
ksud boot-patchto patch boot image with LKM. - Kernel version and Android version aren't necessarily the same! If you find that your kernel version is android12-5.10.101, but your Android system version is Android 13 or other, don't be surprised.
Use ksud tool to patch
- The ksud tool provided by KernelSU can help you quickly patch the official firmware and then flash it. This tool supports macOS, Linux, and Windows. You can download the corresponding version from GitHub Release.
Build kernel with KernelSU (advanced)
- Follow KernelSU documentation
- Compile custom kernel
- Flash and test
Modules Don't Install / Don't Work
Diagnosis:
Check if a metamodule is installed (Most Common Issue!)
- KernelSU requires a metamodule to mount modules
- Without a metamodule, modules are installed but NOT mounted
- Open KernelSU Manager → Modules and verify a metamodule is active
Check module compatibility
- KernelSU modules use a different format
- Some Magisk modules are incompatible
Solutions:
Install a metamodule first
- Download meta-overlayfs (official)
- Or mountify, meta-hybrid_mount
- Install via KernelSU Manager → Modules
- Reboot and try installing modules again
Convert Magisk module
- Some modules work with minor changes
- Check module developer notes
Find KernelSU alternatives
- Growing KernelSU module ecosystem
- Check KernelSU module repos
KernelSU Not Surviving Reboots
Causes:
- Kernel reverted
- Security patches interfering
- Only flashed one slot on A/B device
Solutions:
Check kernel status after reboot
bashcat /proc/versionDisable AVB if needed
bashfastboot --disable-verity --disable-verification flash vbmeta vbmeta.imgFlash kernel to both slots (A/B devices)
bashfastboot flash boot_a kernelsu-boot.img fastboot flash boot_b kernelsu-boot.img
KernelSU-Next (Fork)
KernelSU-Next is a fork that provides Non-GKI kernel support from 4.x – 5.4 with LTS mode (3.x is experimental), GKI kernels support from 5.10 – 6.6 with GKI mode (6.6+ is experimental), includes both Magic Mount and OverlayFS which can be switched from settings with a single toggle, and features a redesigned manager app.
- WARNING: Non-GKI devices should not upgrade to the mainline KernelSU v3.x releases! Use KernelSU-Next instead for non-GKI devices.
- KernelSU-Next latest release is v3.1.0 (February 2026)
App Profile Issues
KernelSU uses a profile system instead of per-app permissions
Configuration:
Set up profiles
- KernelSU Manager → Profiles
- Create profiles for different use cases
- Assign apps to profiles
- Only permitted apps can access or see su; all other apps remain unaware of it. KernelSU allows customization of su's uid, gid, groups, capabilities, and SELinux rules, hardening root privileges.
Profile not applying
- Force stop app
- Clear app cache
- Reapply profile
- Reboot
APatch Troubleshooting
Patching Fails
Common errors and solutions:
| Error | Solution |
|---|---|
| "Unsupported boot image" | Try different extraction method; check kernel version compatibility |
| "Patching timeout" | Increase timeout, try on PC with kptools |
| "Verification failed" | Disable AVB/DM-verity |
| "Flash failed" | Use different flash method |
General steps:
Verify boot image source
- Always patch the image extracted from the same build currently running on your phone. You need boot.img or init_boot.img from your exact current firmware build.
- Check MD5 hash
Set a strong SuperKey
- The SuperKey should be 8-63 characters long and include numbers and letters, but no special characters. It's strictly prohibited to set weak keys like 12345678. The latest versions of APatch require the use of strong keys.
Try alternative patching methods
- Patch on PC using kptools instead of on-device
- The latest version of APatch Manager supports directly flashing via third-party Recovery such as TWRP. Change the APatch Manager file suffix from .apk to .zip. After doing this, you can flash this .zip file via Recovery's Flash function. APatch will be automatically installed, just like Magisk.
Check device compatibility
- APatch allows Linux kernels on compatible ARM64 devices (versions 3.18 to 6.1) to be modified. The official docs now list support up to kernel version 6.12.
- KernelPatch doesn't support 6.6 in some older APatch releases - check the latest release notes.
APatch Module System
APatch features two main modules: APM for modules similar to Magisk; and KPM to modify and inject code directly into the kernel.
Mount method changes:
- APatch has changed to Magic Mount instead of OverlayFS for better compatibility. However, you can still use OverlayFS as default mounting method by creating the /data/adb/.overlay_enable file.
- You can create /data/adb/.litemode_enable to skip all mounts so that detection is minimized.
APatch Not Persistent
If APatch disappears after reboot:
Check installation method
- Permanent install vs temporary
- Flash to correct partition
Verify both slots (A/B devices)
bashfastboot flash boot_a apatched-boot.img fastboot flash boot_b apatched-boot.imgDisable verification if needed
bashfastboot --disable-verity --disable-verification flash vbmeta vbmeta.img
APatch OTA Updates
Root survival with APatch is image-based, so OTAs usually require repatching the updated boot chain image. Always patch image from the newly installed build, not from an older firmware package.
Bootloader and Fastboot Issues
Bootloader Won't Unlock
Solutions by Manufacturer:
Google Pixel:
# Enable OEM unlocking in Developer Options
# Boot to fastboot
fastboot flashing unlock
# Or for newer devices
fastboot flashing unlock_criticalSamsung:
One UI 8 / Android 16 Critical Change
One UI 8 (Android 16) eliminates bootloader unlocking support on Samsung Galaxy devices. OEM Unlocking toggle removed from Developer Options; unlock logic stripped from firmware. Affected globally: S25 series, Z Fold 7, Z Flip 7, and any device updated to One UI 8. Blocks rooting, custom ROMs, and custom kernels entirely through official methods. Applies to all regions.
⚠️ Do NOT update to One UI 8 if you plan to root or unlock your bootloader until verified unlock methods emerge.
- For devices still on One UI 7 or earlier:
- No official bootloader unlock for US/Canada carrier models
- International models: Check Samsung Developer site
- Knox will trip permanently and irreversibly. Data wipe: Unlocking erases everything. Warranty void: Samsung will refuse all service.
Xiaomi/Redmi/POCO:
- Apply for unlock permission on official Xiaomi site
- Wait period varies (3-7 days typically, up to 30 days)
- Use official Mi Unlock Tool
- Unlock wipes all data
OnePlus:
fastboot oem unlock
# Or newer models
fastboot flashing unlockNothing Phone:
- Official unlock supported
- Enable OEM unlocking in Developer Options
- Use fastboot unlock commands
If unlock command fails:
- Update SDK Platform Tools to latest version
- Try different USB cable/port (USB 2.0 ports often work better)
- Enable USB debugging in Developer Options
- Ensure "Allow bootloader unlock" is enabled in Developer Options
- Some devices require internet connection during unlock
fastboot/ADB Not Recognized
Windows:
Install drivers
- Download SDK Platform Tools
- Install universal ADB drivers
- Install manufacturer-specific drivers (Samsung, Xiaomi, etc.)
Disable driver signature enforcement
powershell# Advanced startup → Troubleshoot → Advanced → Startup Settings # Choose "Disable driver signature enforcement" # Then install unsigned drivers
Linux:
- Set up udev rulesbash
sudo nano /etc/udev/rules.d/51-android.rules # Add: SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev" # Google - 18d1, Samsung - 04e8, Xiaomi - 2717, OnePlus - 2a70 # Reload rules sudo udevadm control --reload-rules sudo udevadm trigger
Mac:
- Usually works without setup
- Ensure USB debugging enabled
- Trust computer on device
- For Apple Silicon Macs, may need to disable SIP in some cases
AVB and Verified Boot Errors
What is it:
- Android Verified Boot (AVB) prevents modified system from booting
- dm-verity checks system integrity
When you see errors like:
- "dm-verity corruption"
- "AVB verification failed"
- "Can't load Android system"
Solution:
# Download vbmeta.img for your firmware
# Flash with disabled verification
fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img
# Some devices need
fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img
# For A/B devices, flash both slots
fastboot --disable-verity --disable-verification flash vbmeta_a vbmeta.img
fastboot --disable-verity --disable-verification flash vbmeta_b vbmeta.imgImportant:
- Most modern Magisk installs do NOT require disabling AVB
- Only disable if your device/ROM/kernel documentation specifically requires it
- Some custom ROMs need this step
OTA Update Problems
OTA Survival with Magisk (A/B Devices)
Recommended Method:
Install OTA via system updater
- Don't reboot yet when prompted
Install Magisk to inactive slot
- Open Magisk Manager
- Install → "Install to Inactive Slot (After OTA)"
- Wait for completion
Reboot
- Now you can reboot
- OTA applied with root preserved
If OTA Already Failed:
Flash stock boot for new version
bash# Download new firmware # Extract boot/init_boot.img fastboot flash boot_a stock_boot.img fastboot flash boot_b stock_boot.img fastboot rebootRe-root with new image
- Extract correct image from new firmware
- Patch with Magisk
- Flash patched image
Non-A/B Devices
Process:
- Uninstall Magisk (Restore Images)
- Apply OTA normally
- Re-patch new boot image
- Flash via fastboot or custom recovery
OTA Survival with APatch
Root survival with APatch is image-based, so OTAs usually require repatching the updated boot chain image. Always patch image from the newly installed build, not from an older firmware package.
Play Integrity and Banking Apps
Understanding Play Integrity
Integrity Levels:
- MEETS_BASIC_INTEGRITY: Device appears unmodified at basic level
- MEETS_DEVICE_INTEGRITY: Device passes device-level integrity
- MEETS_STRONG_INTEGRITY: Hardware-backed attestation (typically fails on unlocked bootloaders)
Important: Bypassing security requirements of protected apps is against their terms of service. This section focuses on legitimate compatibility best practices.
Realistic expectations (2026):
- Realistic target: BASIC + DEVICE. Strong integrity requires a locked bootloader - not possible on custom ROMs.
- Play Integrity behavior changes frequently server-side. There is no permanent bypass guarantee.
- MEETS_STRONG_INTEGRITY is only available with a valid keybox.
Current Module Stack (2026)
The Play Integrity ecosystem has evolved significantly. The current typical stack includes:
Zygisk Implementation (choose one):
- Magisk built-in Zygisk
- ZygiskNext, ReZygisk, or NeoZygisk (for KernelSU/APatch)
Play Integrity Fix Module (choose one):
- PlayIntegrityFork - a Zygisk module which fixes "MEETS_DEVICE_INTEGRITY" for the Play Integrity API. On Android 13+ ROMs it still helps to pass checks in Google Wallet and Google Messages RCS support.
- PlayIntegrityFix (PIF) - the original by chiteroman (the official PIF by chiteroman has been removed from GitHub; community mirrors exist, e.g. KOWX712's mirror)
- PIF-Next - not a root hiding module; it only has integration with TrickyStore to ensure valid hardware attestation
Root Hiding (choose one):
- Shamiko - hides root & Magisk from detection
- Zygisk Assistant / NoHello
Key Attestation (for STRONG integrity):
- For attempting to pass STRONG integrity, only the latest official Tricky Store or TEESimulator release is recommended.
- Tricky Store Addon - updates target list
- Requires a valid keybox (device-specific, may need periodic refresh)
Configuration by Root Method:
| Root Method | Zygisk | PIF Module | Root Hiding |
|---|---|---|---|
| Magisk | Built-in Zygisk | PlayIntegrityFork / PIF | Shamiko or DenyList |
| KernelSU | ZygiskNext / ReZygisk / NeoZygisk | PlayIntegrityFork / PIF | App Profiles + Shamiko |
| APatch | ZygiskNext / ReZygisk / NeoZygisk | PlayIntegrityFork / PIF | Built-in exclusion + Shamiko |
Testing Tools:
- SPIC (Simple Play Integrity Checker)
- Play Store → Settings → Tap "Play Store version" seven times → General → Developer options → Verify integrity
- Open the Play Store → Settings → Tap 'Play Store version' seven times. Go to 'General' → 'Developer options' → 'Verify integrity'. Your attestation will appear immediately!
- Note: YASNAC is legacy (SafetyNet) and no longer authoritative
Check Device Certification:
- Play Store → Settings → About → "Play Protect certification"
- Should show "Device is certified"
Reality Check:
- STRONG integrity typically requires locked bootloader + valid keybox
- You might need to run PIF and/or get a new keybox from Tricky Store every 2 or 3 days to keep Google Wallet working.
- Some apps will not work on rooted/unlocked devices regardless of configuration
- Consider:
- Secondary unmodified device for critical apps
- Browser-based alternatives
- Work profile separation (without attempting to bypass security)
Apps Known to Be Strict:
- Google Wallet/Pay
- Banking apps (varies by region and app)
- Macdonald's app
- Revolut
- Netflix (in some regions)
- Pokemon GO
- Corporate MDM apps
Device-Specific Issues
Google Pixel (6/7/8/9/10 Series)
Common Issues:
Patching wrong image
- Android 13+: Must patch
init_boot.img(not boot.img) - Boot.img patching will fail to root
- Extract from factory image payload.bin using payload-dumper-go
- Android 13+: Must patch
Pixel 10 Series
- The Pixel 10 series, launched in August 2025, ships with Android 16 pre-installed.
- Pixel 10 Pro can be rooted with SukiSU/SUSFS and needs a metamodule, TrickyStore with valid keybox and PIFork to get Strong Integrity.
- Use init_boot.img patching workflow
Android 16 QPR2 Rooting Issues
- After certain 2026 firmware updates, some users lost root and re-rooting failed, resulting in bootloops.
- Magisk 30.7 was released with support for Android 16 QPR2 - ensure you are using the latest Magisk version
- If rooting fails after a firmware update, try waiting for a Magisk update that addresses your specific build
OTA updates
- Use "Install to Inactive Slot (After OTA)" method
- Keep both slots in sync
Fastbootd for flashing
bash# Use userspace fastboot for dynamic partitions adb reboot fastboot # Or from bootloader fastboot reboot fastboot
Resources:
Samsung Galaxy (S21-S25, Fold/Flip)
One UI 8 (Android 16) Bootloader Lock
One UI 8 (Android 16) eliminates bootloader unlocking support on Samsung Galaxy devices. OEM Unlocking toggle removed from Developer Options. Affected globally: S25 series, Z Fold 7, Z Flip 7, and any device updated to One UI 8.
If you want to root a Samsung device, do NOT update to One UI 8 until the community finds a workaround. Devices already on One UI 7 or earlier can still be unlocked using existing methods.
Common Issues (Pre-One UI 8):
KNOX permanently trips
- Once bootloader unlocked, KNOX 0x1 flag is permanent
- Samsung Pay, Samsung Pass, Secure Folder may be affected
- Samsung Health advanced features limited
- Warranty void
Root via Odin
- Patch AP file with Magisk
- Flash BL/AP/CP/CSC in Odin
- Use HOME_CSC to preserve data (when appropriate)
US carrier models
- Most US/Canada models have locked bootloaders
- No official unlock available
- Check XDA for your specific model
Anti-Rollback Protection
- Some models have fuse-based ARB
- Don't downgrade firmware below certain versions
- Check "Binary" version in Download Mode
Galaxy S25 Series
- The Galaxy S25 March 2026 update is based on One UI 8 and Android 16.
- Users on rooted S25 Ultra (European model) wanting to upgrade to Android 16 without losing data should follow the standard Odin re-root procedure with the new firmware's AP file.
- Critical: Updating to One UI 8 may permanently remove the ability to unlock the bootloader again if you re-lock.
Resources:
Xiaomi/Redmi/POCO
Common Issues:
Mi Unlock waiting period
- Official unlock requires 3-30 day wait
- Must use Mi Account linked to device
- Some regions have restrictions
Anti-Rollback (ARB)
- Flashing older firmware can hard brick
- Check ARB version in fastboot ROM
- Use Mi Flash Tool anti setting carefully
HyperOS-specific issues
- HyperOS (successor to MIUI) heavily modified; some modules incompatible
- Battery optimization aggressive; whitelist root apps
- Security features may interfere with root
A/B vs A-only partitions
- Varies by model
- Check partition layout before flashing
Resources:
OnePlus
Common Issues:
OxygenOS/ColorOS merge
- Newer models use ColorOS base
- Partition structure changed
- Follow model-specific guides carefully
MSMDownloadTool
- Legacy models: Full unbrick capability
- Newer models: Availability varies
- Returns device to factory state
Regional differences
- Some regions have locked variants
- Check model number carefully
Resources:
Nothing Phone (1/2/2a)
Common Issues:
Official unlock supported
- Enable OEM unlocking in Developer Options
- Standard fastboot unlock process
Custom recovery availability
- TWRP support varies by model
- Check XDA for latest builds
Nothing OS updates
- Frequent updates may require re-patching
- Keep stock images for your version
Resources:
Motorola
Common Issues:
Official unlock available
- Motorola provides unlock codes
- Check Motorola Developer site
- Warranty void after unlock
Regional restrictions
- Some carrier variants cannot be unlocked
- China models may have restrictions
Rescue and Smart Assistant
- Official rescue tool for soft bricks
- Requires official firmware packages
Resources:
Performance and Optimization
Battery Drain After Rooting
Common Causes:
- Wakelocks from modules or root apps
- Background services not optimized
- Kernel settings too aggressive
Solutions:
Identify wakelocks
bash# Check wakelock stats adb shell dumpsys batterystats # Or use apps # BetterBatteryStats, Wakelock Detector (root)Optimize root apps
- Limit apps with root access
- Disable root for apps that don't need it
- Use Greenify or similar for aggressive doze
Kernel tuning
- Use conservative governor profiles
- Limit max CPU frequency if needed
- Adjust I/O scheduler
Module audit
- Disable unnecessary modules
- Some modules cause wakelocks
- Test with modules disabled
Performance Tuning
CPU/GPU Optimization:
Governor selection
- Performance: performance, schedutil
- Battery: powersave, conservative
- Balanced: interactive, ondemand
Frequency scaling
bash# Check current governor cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor # Available governors cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors # Set governor (requires root app or script) echo "schedutil" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governorThermal management
- Monitor thermals during stress tests
- Don't disable thermal throttling permanently
- Use gaming profiles only during actual gaming
Apps for Performance:
Storage Optimization:
Trim/FSTRIM
- Most modern ROMs do this automatically
- Can manually trigger via root apps
I/O Scheduler
- BFQ, mq-deadline, noop options
- Device/kernel dependent
Warning: Performance tuning can affect stability and battery life. Test changes thoroughly and revert if issues occur.
App Detection and Compatibility
Banking Apps Detecting Root
Strategies:
Hide root completely
- Enable all hiding features (see Play Integrity section)
- Rename root manager app
- Clear banking app data
- Add to DenyList/profile/exclusion list
Use alternate methods
- Browser-based banking
- Secondary non-rooted device
- Work profile separation
Module-based solutions (current 2026 stack)
- Shamiko (for Magisk)
- PlayIntegrityFork or PIF
- Tricky Store (for attestation)
- Hide My Applist (via LSPosed)
Apps Crashing After Root
Common causes:
| Cause | Solution |
|---|---|
| Root detection | Hide root from app |
| Module conflict | Disable modules, identify culprit |
| Modified system files | Restore system partition |
| Security checks | Use root hiding modules |
Diagnostic:
# Check app crash logs
adb logcat | grep "FATAL EXCEPTION"
# Check module logs
su -c "cat /cache/magisk.log | grep [app-package-name]"Netflix/Streaming Apps Issues
Problems:
- Won't install
- Playback errors
- "Device not certified"
Solutions:
Fix certification
- Ensure Play Store shows "Device is certified"
- Use PlayIntegrityFork/PIF module
- Clear app data after fixing certification
Use older version
- Install from APKMirror
- Disable auto-updates
- Use Zygisk Detach to prevent Play Store updates
Logs and Diagnostics
Collecting Logs for Help
Magisk logs:
# Via app
Magisk → Settings → Save log
# Via ADB
adb shell
su
cat /cache/magisk.log > /sdcard/magisk.log
exit
adb pull /sdcard/magisk.logSystem logs:
# Full system log
adb logcat > logcat.txt
# Filtered for errors
adb logcat *:E > errors.txt
# Kernel log
adb shell dmesg > kernel.logCrash logs:
# Check tombstones
adb shell
su
ls /data/tombstones/
cat /data/tombstones/tombstone_XXWhen to Give Up and Restore
Consider unrooting if:
- Critical apps won't work despite all efforts
- Unstable after multiple fix attempts
- Can't pass security checks needed for work
- More hassle than benefit
Clean unroot procedure:
Backup data
- Copy important files
- Export app data
- Note customizations
Uninstall root
- Magisk → Uninstall → Complete Uninstall
- Or flash stock boot image
Factory reset
- Wipe data and cache
- Fresh start
Lock bootloader (optional)
bashfastboot flashing lock # Warning: Will wipe data again # Warning: On some devices, relocking with non-stock system can brick
Getting Help
How to Ask for Help
When asking for help in forums or communities, provide complete information:
Essential Information:
Device: [Model name and number]
Firmware: [Android version, build number, security patch]
Bootloader: [Unlocked/Locked]
Root Method: [Magisk 27.x / KernelSU x.x / APatch]
Recovery: [TWRP/OrangeFox/Stock]
Problem: [Detailed description of what happened]
Steps Taken: [What you've already tried]
Error Messages: [Exact error text or screenshots]
Logs: [Attach logcat, dmesg if available]Good Example:
Device: OnePlus 9 Pro LE2125
Firmware: OxygenOS 14.0.0.600 (Android 14)
Bootloader: Unlocked
Root: Magisk 27.0
Recovery: Stock
Problem: Device bootloops after installing Module X
Steps Taken: Tried booting to recovery, can't access ADB
Error: Stuck on OnePlus logo, no responseWhere to Get Help
XDA Developers
- Device-specific forums
- ROM and kernel threads
- https://forum.xda-developers.com/
Reddit Communities
Telegram Groups
- @MagiskUpdates (official news)
- @KernelSU (discussions)
- Device-specific groups
GitHub Issues
- Magisk: topjohnwu/Magisk
- KernelSU: tiann/KernelSU
- APatch: bmax121/APatch
Best Practices
Before Posting:
- Search existing threads for your issue
- Read device-specific guides
- Check recent posts for similar problems
- Gather all logs and information
When Posting:
- Use descriptive titles
- Post in correct section/forum
- Attach logs as files (not inline text)
- Include screenshots when relevant
- Be patient and respectful
After Getting Help:
- Follow up with results
- Mark solutions that worked
- Help others with similar issues
- Contribute back to community
Additional Resources
Quick Links
Essential Guides:
Device Guides:
Root Apps:
General Resources:
Need more help? Visit our FAQ page for conceptual questions or join our community discussions.