• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[KERNEL]Savagezen's Angler Kernel[Dec 2018][Pie][Oreo][Linaro][Clang][3.10.108]

Search This thread

savagezen

Senior Member
This is the first project I've shared on XDA, though I've maintained it for personal use for a while and posted some prior incarnations on Google+. Hope you enjoy it!

Features:
  • December 2018 security patch
  • open source: kernel, anykernel
  • forked from Franco Kernel
  • merged Linux Stable 3.10.108
  • Compiled with Linaro 4.9 and CopperheadOS's Hardened Clang
  • I/O Schedulers: noop (default), cfq, deadline, fiops, row, zen, maple, sioplus
  • TCP algorithms: Bic, Cubic, Htcp, Hybla, Vegas, veno, Westwood (default), Reno
  • FK Features: disabled verified boot flag for Android Pay (root still breaks), support for FKUpdater performance profiles, support for FKUpdater App (not verified as I don't use the app myself), KCAL tweaks in init script.
  • Reduced wifi wakelocks and wakelock period
  • Removed possible bluetooth memory leak
  • KCAL color control support
  • KCAL brought to Linux guidelines
  • Spectrum Profile Support: dozens of profiles from around the web included in source code
  • Touchboost disabled in spectrum profile
  • Filesystem Support: F2FS, vFAT, EXT4, NTFS
  • MSM hotplug driver (disabled by default, but toggle included in source code)
  • Fingerprint boost from Electron Kernel
  • Wireguard support
  • Power Efficient Workqueues
  • State Notifier
  • Tickless System / Idle
  • Gentle Fair Sleepers
  • Hima hotplug driver (see 2018-09 release notes)
  • Wake Gestures (partial, see 2018-09 release notes)
  • Many security / hardening features from CopperheadOS (see 2018-12 release notes)

Downloads:

Installation:

  • Boot to TWRP, backup (boot, system, data)
  • Wipe Dalvik / ART Cache and Cache
  • Flash the kernel.zip
  • Wipe Dalvik / ART Cache and Cache
  • Reboot and enjoy
  • Note: Sometimes rebooting directly from TWRP results in a boot freeze at the Google splash screen. Just power off and boot up again.


Battery Life / Performance Tests:

Spectrum: Battery: Total Drain: 6.8%/h, Sleep Drain: 4.96%/h, 11% SOT, 17.8 Hour Test (tested version - kernel 20180728, battery v1.3 profile)
Spectrum: Balance: Total Drain: 9.7%/h, Sleep Drain: 6.6%/h, 12% SOT, 19 Hour Test (tested version - kernel 20180728, balance v1.2 profile)
Older Version: June 2018


Thanks:

PS: I'm on Telegram now too!
Profile: @savagezen
Discussion for this kernel: @sz_kernel_angler

Want to stay even more up to date?
 
Last edited:

savagezen

Senior Member
Changelog:

Bugs:
  • Boot Loop / Freeze on Android 9.0 Oreo.

FAQ:
  • Need Help / Want to Help? Join the my Telegram Channel: @sz_kernel_angler
  • Is this kernel compatible with Android Pie (9.0)? It should work out of the box, however several users have reported boot freezes / loops on Pie. I haven't had a chance to test it fully in Pie and am still on Oreo myself. If you run into issues, try running with SELinux as permissive or reach out on Telegram.
 
Last edited:

savagezen

Senior Member
Nice, gonna give this a run. Kudos for adding detailed instructions on your site.
You're welcome. It is as much for me to remember how to do stuff in the future with other devices as anything else. Glad others can benefit from it as well.

Nice, was hoping for new kernel a long time
I would like to suggest the "Hima Hotplug" for your kernel, it is so fluid and great on battery life (experience from sphinx kernel for bullhead)

Thanks for the suggestion. Browsing source code now...
 

aureljared

Senior Member
May 2, 2013
949
659
jared.gq
Smooth so far, great job.

though is it just me or does the Settings app display "Unavailable" under Kernel version? EX Kernel Manager displays the kernel version just fine.
Maybe it has something to do with the presence of spaces in the kernel version name?
 

eurochild

Senior Member
Jul 11, 2007
993
979
Athens
Smooth so far, great job.

though is it just me or does the Settings app display "Unavailable" under Kernel version? EX Kernel Manager displays the kernel version just fine.
Maybe it has something to do with the presence of spaces in the kernel version name?

I see the same under about phone.

same here, nothing so important. if you click on it it shows the kernel info (atleast that is what happens on aosip rom)
 

savagezen

Senior Member
Yeah I agree, it is, by no means, a deal-breaker. I just wanted to point it out for newcomers because I sure had a grand time panicking over whether or not the installation went through. :eek:

same here, nothing so important. if you click on it it shows the kernel info (atleast that is what happens on aosip rom)

This does work on AOSiP. Stock ROM (and maybe others) it does not appear after tapping on "Kernel Version" in settings. As noted, third party apps like EX Kernel Manager and Kernel Auditor seem to display the kernel version correctly.

There are, in fact, spaces in LOCALVERSION in the config file. I'll add this under bugs in the second post and update when it's fixed.

PS: Glad you guys are enjoying it and to hear it runs smooth and cool! Usage stats for the 'battery' spectrum profile are in the updated OP. Testing the 'balance' profile now.

UPDATE 8/1: The 'kernel version' issues has been fixed. Notation is in second post and download link has been updated in OP.
 
Last edited:

galakanokis

Senior Member
Feb 2, 2011
1,020
406
This kernel kicks ass! Seriously, great work. One of my major complaints with the 6P was its over heating and then thermal throttling. I just didn't play certain games because of it. Now, after flashing this kernel it runs smooth and cool and games work again. Unreal. Truly love the way the phone works now. Not bad for battery life either but it's not my primary any more.
 

savagezen

Senior Member
This kernel kicks ass! Seriously, great work. One of my major complaints with the 6P was its over heating and then thermal throttling. I just didn't play certain games because of it. Now, after flashing this kernel it runs smooth and cool and games work again. Unreal. Truly love the way the phone works now. Not bad for battery life either but it's not my primary any more.

Good to hear! Did you use the Gaming spectrum profile? I'm don't use my phone for games so I didn't test that outside of synthetic benchmarks. Also, the Battery spectrum profile should give pretty good battery life as it's very conservative.

Spoiler: I'm working on maybe adding the chill or relaxed governors to test as well.
 
  • Like
Reactions: nardow

galakanokis

Senior Member
Feb 2, 2011
1,020
406
No profiles, just default settings. I usually run a week or two on default before I mess around just so I can tell the difference in the tweaks.

I might play around but this phone is just for messing about now, picked up the Essential on the Prime deal and quite like it so the 6P is not a daily driver.
 

savagezen

Senior Member
Do you happen to have the link somewhere?

All the profiles are in my AnyKernel repo on GitHub. There are a total of 30 profiles from around the web even though the Spectrum App only uses those numbered 0, 1, 2, and 3. I include my built kernel zImage-dtb in the AnyKernel repo so that you can clone it yourself and apply a different profile "manually" if you like. Just change the number in ramdisk/init.spectrum.sh, zip it up, and flash it.

Code:
if [ ! -f /data/property/persist.spectrum.profile ]; then
    setprop persist.spectrum.profile 0    # change this number
fi

Note, if you use this method, and later select a profile from the Spectrum App, the Spectrum App choice will override the initial one, including after reboot -- because it applies the settings once the user space is reached.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 39
    This is the first project I've shared on XDA, though I've maintained it for personal use for a while and posted some prior incarnations on Google+. Hope you enjoy it!

    Features:
    • December 2018 security patch
    • open source: kernel, anykernel
    • forked from Franco Kernel
    • merged Linux Stable 3.10.108
    • Compiled with Linaro 4.9 and CopperheadOS's Hardened Clang
    • I/O Schedulers: noop (default), cfq, deadline, fiops, row, zen, maple, sioplus
    • TCP algorithms: Bic, Cubic, Htcp, Hybla, Vegas, veno, Westwood (default), Reno
    • FK Features: disabled verified boot flag for Android Pay (root still breaks), support for FKUpdater performance profiles, support for FKUpdater App (not verified as I don't use the app myself), KCAL tweaks in init script.
    • Reduced wifi wakelocks and wakelock period
    • Removed possible bluetooth memory leak
    • KCAL color control support
    • KCAL brought to Linux guidelines
    • Spectrum Profile Support: dozens of profiles from around the web included in source code
    • Touchboost disabled in spectrum profile
    • Filesystem Support: F2FS, vFAT, EXT4, NTFS
    • MSM hotplug driver (disabled by default, but toggle included in source code)
    • Fingerprint boost from Electron Kernel
    • Wireguard support
    • Power Efficient Workqueues
    • State Notifier
    • Tickless System / Idle
    • Gentle Fair Sleepers
    • Hima hotplug driver (see 2018-09 release notes)
    • Wake Gestures (partial, see 2018-09 release notes)
    • Many security / hardening features from CopperheadOS (see 2018-12 release notes)

    Downloads:

    Installation:

    • Boot to TWRP, backup (boot, system, data)
    • Wipe Dalvik / ART Cache and Cache
    • Flash the kernel.zip
    • Wipe Dalvik / ART Cache and Cache
    • Reboot and enjoy
    • Note: Sometimes rebooting directly from TWRP results in a boot freeze at the Google splash screen. Just power off and boot up again.


    Battery Life / Performance Tests:

    Spectrum: Battery: Total Drain: 6.8%/h, Sleep Drain: 4.96%/h, 11% SOT, 17.8 Hour Test (tested version - kernel 20180728, battery v1.3 profile)
    Spectrum: Balance: Total Drain: 9.7%/h, Sleep Drain: 6.6%/h, 12% SOT, 19 Hour Test (tested version - kernel 20180728, balance v1.2 profile)
    Older Version: June 2018


    Thanks:

    PS: I'm on Telegram now too!
    Profile: @savagezen
    Discussion for this kernel: @sz_kernel_angler

    Want to stay even more up to date?
    16
    So that everyone knows, development isn't dead, I just haven't had time in recent weeks to work on Pie. It looks like we're done getting Oreo updates; so the Oreo (8.1) version will soon be deprecated once I start working on Pie compatibility. As has been mentioned before, this kernel has not had any official or third party Pie merges. In other words, it is a kernel built for Oreo. Flashing it over a Pie ROM may still work (as some users have stated), but it is to be expected that there are bugs... all and any of which I haven't been able to address yet.
    15
    New Testing Releases: Android Pie, 9.0


    Both versions are source-built from their respective upstreams (StatixOS, AOSiP Unofficial) using CopperheadOS's Clang and Linaro 4.9 for compiling. The built kernel images were packaged with my previous (Oreo, 8.1) anykernel settings. Please let me know if any kernel settings are wonky (though they shouldn't have changed from Oreo to Pie) or if one particular version seems to work better than the other -- please be specific with feedback. Whichever seems to work better is the one I'll migrate patches over to from Oreo. There will be no new Oreo updates henceforth.
    14
    I have continued to be super busy, but for those interested here are a few updates:

    • Oreo - Some folks complained about lag issues so I reset to the August 2018 release and only added the features to source I for sure wanted. Previously there had been some things patched from other sources that I'm not entirely sure how they work. So, the Oreo source has been retro-patched and has the September and October security patches merged.
    • AnyKernel (Oreo) - There are several ramdisk changes / settings that are note getting applied properly. I haven't gotten to the bottom of this, but I think it's permissions related. Items include (wake gestures, laptop mode, fsync, and backlight dimmer -- I may have missed a couple). Nevertheless, there is a testing .zip available on GitHub.
    • Pie - Once I get things squared away on Oreo I'll work out the kinks on Pie. Really, nothing has been done except merging the StatixOS kernel into mine. I haven't switched to Pie yet myself as I wanted to see the official Oreo updates through to the end. I am not wed to StatixOS either, Lineage is also up to Pie, so I may look at merging / cherry-picking from there as well.
    11
    Changelog:

    Bugs:
    • Boot Loop / Freeze on Android 9.0 Oreo.

    FAQ:
    • Need Help / Want to Help? Join the my Telegram Channel: @sz_kernel_angler
    • Is this kernel compatible with Android Pie (9.0)? It should work out of the box, however several users have reported boot freezes / loops on Pie. I haven't had a chance to test it fully in Pie and am still on Oreo myself. If you run into issues, try running with SELinux as permissive or reach out on Telegram.