Zest Kernel ꜰᴏʀ ʙʀᴀᴍʙʟᴇ

Search This thread

GoldElocks

Senior Member
First, @LazerL0rd thanks for your work and for adding support for bramble.
So I switched from Proton to your kernel (2/17 build) and it performed great aside from zRAM not working which you've addressed (and appears to be working now according to EX manager). I wasn't expecting better performance or battery life over Proton but it seemed a bit snappier and active battery drain was a little better too.
After switching to the new build (2/22) I ran into major slowdowns and some instability only when running memory intensive apps like maps or camera along with something else. The phone was essentially freezing up and only a reboot would bring it back to normal but only until I starting using those apps again. I'm on stock rooted with only a font and clock mod theme Magisk module.
I haven't seen anybody mention this issue and didn't see anything in the change log that would cause this but just wanted to give you my experience.
I'm more than happy to test or troubleshoot with you, I can hop on Telegram too if that's easier. I know building blind for a device you don't have is very difficult so thanks again.
 
  • Like
Reactions: LazerL0rd

LazerL0rd

Senior Member
Nov 2, 2016
1,363
1,157
Aberdeen, United Kingdom
www.thezest.dev
First, @LazerL0rd thanks for your work and for adding support for bramble.
So I switched from Proton to your kernel (2/17 build) and it performed great aside from zRAM not working which you've addressed (and appears to be working now according to EX manager). I wasn't expecting better performance or battery life over Proton but it seemed a bit snappier and active battery drain was a little better too.
After switching to the new build (2/22) I ran into major slowdowns and some instability only when running memory intensive apps like maps or camera along with something else. The phone was essentially freezing up and only a reboot would bring it back to normal but only until I starting using those apps again. I'm on stock rooted with only a font and clock mod theme Magisk module.
I haven't seen anybody mention this issue and didn't see anything in the change log that would cause this but just wanted to give you my experience.
I'm more than happy to test or troubleshoot with you, I can hop on Telegram too if that's easier. I know building blind for a device you don't have is very difficult so thanks again.

If you could message me on Telegram, that would be easier thanks. If you have a look on the Pixel 5 thread, you'll see a few others with similar problems and I'll hopefully release an update soon which should tackle them.

I'm personally not a fan of "blind building" so I'll explain why I've made this exception here. The reason is that the P4a 5G and P5 are pretty much the same device, excluding a few aspects such as the panel, memory configuration, and headphone jack. They also share the same kernel source. As such, I think it's fine to build for both devices since Google even ship the same kernel (I split them to reduce size and enable zRAM only for the Pixel 4a 5G).
 

J0kker

Senior Member
Mar 15, 2012
442
202
Amazon Fire TV
Google Pixel 4a 5G
I miss good old days when there were plenty of kernels and roms for every smartphones, probably stock roms and kernels get better as time pass by, but it's kinda sad.
More than a year without any mirror i think it's time to give up :)
 

Top Liked Posts

  • There are no posts matching your filters.
  • 17
    Let's get this out of the way, I'm not responsible for anything more than a kernel panic.

    Now that we've got that over with, I introduce to you - Zest Kernel. This ain't your average kernel on XDA. Zest Kernel is tuned down to every last mmap() to ensure that your device runs as fast and smooth as your hardware permits. No longer are the days of your battery dying on the bus, slow network speeds at home, or lags when swiping on those hot, new Android 11 gestures. Zest Kernel will revamp the experience of your device.

    Boot Time
    By shrinking the kernel's size with Dead Code Elimination (DCE) and removing a bloat of debug and unused drivers, we decrease boot times [1].

    LLVM Tools
    Zest Kernel is built exclusively with the LLVM toolchain and tools, which allows us to utilise a wide range of security and performance features as well as satisfying my LLVM fanboy needs.

    Networking Performance
    Due to the addition of the rmnet_perf and rmnet_shs drivers from Qualcomm, cellular networking performance can see improvements due to network aggregation.

    Performance
    Through backporting mainline improvements to mmap() and locking, the kernel's core code receives improvements in performance and works to reduce jitter and improve system responsiveness. The return of BPF JIT allows us to improve performance with eBPF programs that Android utilises. As well as these changes, Danny (kdrag0n)'s efficient frequencies and Sultan's latency reduction patchsets are included which improve system fluidity and performance. LTO is also enabled, improving overall kernel performance. Tuning for ext4

    Security
    Zest Kernel utilises Clang's Control Flow Integrity (CFI) to protect against undefined behaviour that tries to subvert the kernel's control flow. Clang's ShadowCallStack, which protects programs against return address overwrites such as stack overflows, is also switched on and enabled with virtually mapped call stacks. All locals that are automatically initialised with zeros instead of patterns, which is safer for strings, pointers, indexes, and sizes. WireGuard is also included to provide a secure, performant VPN tunnel for those who wish to use it.

    zRAM Improvements
    Backports from mainline and changes from Sony allow us to utilise a more efficient zRAM backend, z3fold. While zRAM is only used on bramble, since 8GB is more than enough memory on redfin, this should provide a nice improvement for zRAM on bramble.

    [1] - The first boot may take longer as F2FS (the filesystem we use) needs to check for corruption every time the kernel is changed for safety measures. Subsequent boots should be much faster.

    1) Make sure you're on the December or January SP.
    2) Download Zest Kernel from the link below.
    3) Enter fastboot (not fastbootd) with adb reboot bootloader or another method.
    4) fastboot boot ZestKernel-Installer-P4A5G<DATE>.img where <DATE> refers to the release date of the specific kernel.
    5) Yes, I said boot not flash. I hope you read that correctly.
    6) Read my beautiful installation header and wait for your device to boot up.

    Visit https://www.thezest.dev, click on "builds", then get the latest build from the relevant folder (Zest Kernel/bramble, in this case).

    Releases are named in the form of ZestKernel-Installer-<Device Name><ISO 8601 Date>.img.


    Jitter (After).jpg

    Battery 1 (After).jpg
    Battery 2 (After).jpg

    Network (Before).jpg
    Network (After).jpg

    Sultan Alsawaf (kerneltoast/@Sultanxda) for his patchsets which help to improve the fluidity of graphics and more.
    Danny Lin (@kdrag0n) for kramflash (the kernel installer) as well as a load of useful patches.
    Jason Donenfeld (@zx2c4) for WireGuard.
    Artem Labazov for his suggestion to use z3fold as a backend for zRAM.

    ***
    If you enjoyed Zest Kernel, please donate to help keep up maintenance at https://paypal.me/paydiab. I'm strict on quality, and give each release it's quality time and care (possibly even more so than your OEM). Having a small income from these kernels gives me a better incentive to keep pushing them out for y'all.
    ***
    7
    Zest Kernel Update (P4A5G20210221)

    The changelog is as follows:
    • Add Back Support for Sdcardfs (Performance)
    • Resolved F2FS Queue Deadlocks (Bugfix)
    • Avoid More Expensive Dynamic Allocations (Performance)
    • Disable SLUB per-CPU Partial Caches (Performance)
    • Reduce the Work Done by the IRQ Dispatcher (Performance)
    • Merge Android 12 DP1 Kernel
    • Support Devices Running Android 12 DP1 (Support)
    • Add Gyro Offset Correction for OIS (Feature)
    • Support Linux Containerisation (Feature)
    • Fix zRAM Not Initialising (Bugfix)
    Go grab it from the build section on my site, https://www.thezest.dev.

    As always, if you wish to donate my PayPal is available at https://paypal.me/paydiab. It's a great help for those of you who do, as I put in quite some time into my kernels.

    This will wipe your data. There is no known way around this for 12 DP1 users, unfortunately (if you find one, please tell me).

    1) Reboot into fastboot.
    2) Place the vbmeta.img of the DP1 firmware into the current folder your terminal is in.
    3) Run fastboot flash --disable-verity --disable-verification vbmeta vbmeta.img.
    4) Rin fastboot -w.
    5) Install Zest Kernel as your normally would.
    5
    Zest Kernel Update (P4A5G20210217)

    The changelog is as follows:
    • Relax Requirements for Direct I/O on Encrypted Storage (Performance)
    • Enforce Security-critical Variables and Structures as Read-only (Security)
    • Panic when Data Corruption is Detected (Security)
    • Improved Page Sanitisation (Security)
    • Improve Stack Entropy Generation (Security)
    • Improved brk Randomisation (Security)
    • Enforce 128b Encryption for Bluetooth Level 4 (Security)
    • Affine Certain Tasks to the Big and Prime Cluster (Performance)
    • Avoid Expensive Dynamic Allocations (Performance)
    • Use Sultan Alsawaf's Rewritten ION and IOMMU (Performance)
    • Boost CPU <-> DDR Bandwidth on Frame Commits and Zygote Fork (Performance)
    • Try to Resolve F2FS Queue Deadlocks with Magisk (Bugfix)
    • Reduce WireGuard Memory Usage (Performance)
    • Add Park Ju Hyung's Mainline exFAT Backport (Feature)
    Go grab it from the build section on my new site, https://www.thezest.dev.

    As always, if you wish to donate my PayPal is available at https://paypal.me/paydiab. It's a great help for those of you who do, as I put in quite some time into my kernels.

    PS: I've removed the betas as they were unstable and shouldn't have been there anyways. Consider all builds older than those provided today as potentially unstable/buggy (thought no serious bugs have been reported) as I've refreshed the source.
    5
    First, @LazerL0rd thanks for your work and for adding support for bramble.
    So I switched from Proton to your kernel (2/17 build) and it performed great aside from zRAM not working which you've addressed (and appears to be working now according to EX manager). I wasn't expecting better performance or battery life over Proton but it seemed a bit snappier and active battery drain was a little better too.
    After switching to the new build (2/22) I ran into major slowdowns and some instability only when running memory intensive apps like maps or camera along with something else. The phone was essentially freezing up and only a reboot would bring it back to normal but only until I starting using those apps again. I'm on stock rooted with only a font and clock mod theme Magisk module.
    I haven't seen anybody mention this issue and didn't see anything in the change log that would cause this but just wanted to give you my experience.
    I'm more than happy to test or troubleshoot with you, I can hop on Telegram too if that's easier. I know building blind for a device you don't have is very difficult so thanks again.

    If you could message me on Telegram, that would be easier thanks. If you have a look on the Pixel 5 thread, you'll see a few others with similar problems and I'll hopefully release an update soon which should tackle them.

    I'm personally not a fan of "blind building" so I'll explain why I've made this exception here. The reason is that the P4a 5G and P5 are pretty much the same device, excluding a few aspects such as the panel, memory configuration, and headphone jack. They also share the same kernel source. As such, I think it's fine to build for both devices since Google even ship the same kernel (I split them to reduce size and enable zRAM only for the Pixel 4a 5G).
    5
    Thanks for all your support with Zest Kernel, and the lovely messages on XDA. Today I've released an update to Zest Kernel for redfin and bramble. The changelog is as follows:

    - A bug which caused stuttering and high jitter randomly has been fixed, jitter should stay consistently low now. - Improvements to the security of your device, with hardening inspired by GrapheneOS and the linux-hardened project.

    As always, if you wish to donate my PayPal is available at https://paypal.me/paydiab. It's a great help for those of you who do, as I put in quite some time into my kernels.