[Kernel][20.09.2020][Android 10] Kirisakura 1.2.4 for OnePlus 8 Pro aka InstantNoodle

Search This thread

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
4,906
15,671
Kirisakura-Kernel for the OnePlus 8 Pro

Hello everyone,

To keep it short: Here is Kirisakura - Kernel for the OnePlus 8 Pro aka InstantNoodle.
I would appreciate if everybody that flashes the kernel, reads at least once through this opening post and the following ones.

Kirisakura - Kernel is designed to bring a handful of beneficial features to the device, while ensuring excellent performance and smoothness to get you safely through the day!

This project aims to keep most of the subsystems updated, way ahead of the stock kernel, thereby improving security and performance, while keeping stability as the foucs during testing! This includes Linux-Stable, CAF-Upstream and kernel/common.
Kernel Control Flow Integrity (Kernel-CFI), which is achieved by linking the kernel with LLD and Link Time Optimization (LTO), more precisely ThinLTO, are quite unique security features. In fact this may be (and probably is) the first 4.19 msm kernel with a fully working Kernel-CFI implementation and CFI-Violations fixed on a smartphone.
The only kernels made by OEMs offering this security feature are the ones for the Pixel 3 and Pixel 4 devices.

If that got you curious,have a read about Linux-Stable and why it is important here. The stable-process is not the same for every subsystem, but the general idea, rule of thumb and benefits are applicable for other subsystems as well.

Quick explanation of CAF-Upstream. CAF is short for Codeaurora-Forums. This is the place where development from Qualcomm for their SoCs happens. This includes the Snapdragon 865 that´s built into the OP8 Pro.
The kernel-bases available on the Codeaurora-Forums, are basically the foundations OEMs use, to build their own kernel additions on top for devices featuring Qualcomm SoCs.
The Qualcomm developers push regular updates to the bases of the different SoCs, a bit similar to how Linux-Upstream works. OEMs usually stop updating the initial base after the phone is released.
This kernel focuses amongst others to provide the latest CAF-Updates merged in a regular manner, to provide updates, improvements and enhancements for SoC specific drivers and subsystems! This might take a while, because a lot of device specific testing is done on my end to ensure stability.

The kernel includes a lot of improvements and contributions from other developers as well. Without this kernel would not exist.
I´d like to mention @tbalden ´s excellent CleanSlate features at this place. They improve usability by a big margin for me personally. The highly customizable sweep to sleep implementation (adjustable to different navigation settings), long tap to bring down status bar (very useful on a big device), backlight dimmer and notification reminder are very useful features that I use personally every day, which can be enabled rootless if one desires to run without root.
Another big part of improvements originate from @arter97´s, @kdrag0n´s and @Sultanxda´s work. Many others contributed in some way or another to this kernel.
A big thanks to all of them at this place!

Now lets continue with a list of features in the next paragraph!


Main Features:
- Based on latest kernel sources from OnePlus for Android 10 and intended for use on OOS-Stable releases
- compiled with Clang 11.0.3 and built with -O3 speed optimizations
- Linux-Stable-Upstream included to 4.19.146
- CAF base for the Snapdragon 865 (SD865) updated to CAF-Tag LA.UM.8.12.r1-12500-sm8250.0
- Kernel Control-Flow-Integration (CFI) andLink-Time-Optimization (LTO) ported from 4.19 kernel/common and Pixel 4/XL Kernel
- Shadow Call Stack (SCS) Security-Feature
- Use ThinLTO which was first used in the Pixel 4 XL Android R-Preview Kernel instead of full LTO
- fix various CFI-Violations found in various subsystems like OnePlus drivers and qualcomm drivers
- Link the kernel with LLD and use RELR-Relocation
- include important fixes/improvements from kernel/common
- Flashing the kernel will keep root!
- Cleanslate Features included! See @tbaldens´s CleanSlate Thread for more information
- Flashable via EXKM and FKM on a rooted system!
- Anykernel zip is based on the Anykernel3 release from @osm0sis

EAS related features:
- EAS implementation patched up to latest CAF state
- disable autogroups and use cgroups for more efficient task placement!
- Dynamic Stune Boost to inflate task utilization and not overload cores on interaction (thanks to @RenderBroken, @joshuous and @tbalden for the rootless implementation )
- updates from kernel/common

CPU related features:
- Change various drivers (WLAN, MM, audio, charger, power, thermal, glink etc) to user power efficient workingqueues. This compliments EAS
- include cpuidle patches from CAF
- improvements to cpufreq/times/stats
- improve memory allocations in binder driver

GPU related features:
- GPU driver updated to latest CAF-State
- remove POPP functionality from GPU driver to avoid constant fight about downscaling with msm-adreno-tz
- don´t wake the gpu on touch input, instead wake when receiving an ioctl
- don´t copy fence names by default to save a bit of cpu-time (explanation)
- msm: kgsl: Stop slab shrinker when no more pages can be reclaimed

File System related features:
- improve memory allocations in sdcardfs
- improve eventpoll logging to stop indicting timerfd (improves kernel wakelock readability)
- improve memory allocations in kernfs
- writeback: hardcode dirty_expire_centisecs=3000 based on this commit

UI/UX/Usability related features from CleanSlate:
- CleanSlate features made by @tbalden
- Flashlight Notification/Call blinking
- Vibrating Notification Reminder
- Sweep to Sleep touchscreen gesture - highly customizable
- DoubleTap on Sweep2Sleep's area gestures - new way to pull down android Notification Area
- Face down screen off - new gesture
- Backlight Dimmer - possibility to use lower panel brightness (switch DC dimming off in Lab settings!)
- KCAL Color Control (credit to @savoca)

Network related features:
- Wireguard Support (Details)
- advanced TCP algorithms enabled
- includes new bbr and bbr2

Memory related features:
- Speculative Page Faults left enabled (1. 2) (CAF default)
- various fixes for PSI-Monitor, which is used by the userspace lowmemorykiller-daemon
- Fix various memory leaks in different subsystems
- improved mm with patches from mainline
- various other changes from mainline
- included zstd as an option for ZRAM-algorithm (lz4 is probably the best all around, so only change it if you know why and what you are doing)
- improve memory allocations in various subsystems

Security related features:
- Control-Flow-Integration (CFI) and Link-Time-Optimization (LTO) ported from 4.19 kernel/common and Pixel 4/XL Kernel
- Use ThinLTO which was first used in the Pixel 4 XL Android R-Kernel instead of full LTO
- fix various CFI-Violations found in various subsystems like OnePlus drivers and qualcomm drivers
- enable init_on_alloc for even more security, more information can be found in the commit message


Misc Features:

TCP Congestion Algorithms:
- advanced algorithms enabled, enable them with your favorite kernel manager
- includes new bbr2

Wakelock Blocker:
- advanced wakelock blocker with the ability to block any wakelocks (dangerous, use with caution)
- please read [URL="https://arstechnica.com/gadgets/2018/08/p-is-for-power-how-google-tests-tracks-and-improves-android-battery-life/"]this for further info

- blocking a kernel wakelock should only be done in case of firmware incompatabilities (WiFi network at work (can´t be changed) causes deep sleep to not work on the phone.) That´s the only use case I see for this feature. The kernel does not features this to improve battery life!

Other features:
- disable logging and debugging to make the kernel more lightweight in various places (includes binder, mm, vma, gpu, ipa etc)
- fix several coding issues detected by newer Clang-Toolchains
- add support for steam controller
- add support for nintendo switch controller

Feature section for the "non visible" but perceptible improvements:
- updated binder section (responsible for interprocess communication)
- updated sdcardfs ; have a read about it here:


Requirements

- unlocked Bootloader
- USB-Debugging in developer options enabled
- latest adb and fastboot binaries
- working adb and fastboot environment
- magisk root


How to flash the Kernel:

1. Download the latest kernel.zip and make sure you have properly updated to the latest matching OnePlus firmware. When OOS receives an update it takes OnePlus a while to release the source code for the new OS and me a while to build a new kernel. If you don´t want to face any issues, wait until I either release an updated kernel or give green light because there were no kernel changes.

1a. Optional: While it may not be necessary all times, you may want to restore stock boot.img, re-root with magisk and optionally install twrp.zip if coming from another kernel. Before reporting issues make sure you do that! Thank you!

2. Make sure to use latest Magisk-stable, if you choose to use Magisk.

3. Flash the kernel.zip via latest EXKM or FKM app, or TWRP (haven´t tested TWRP myself as I don´t need it) and do a full reboot.

4. Reboot and profit.


DOWNLOAD:
Download is located always in this folder:
https://www.androidfilehost.com/?w=files&flid=313864

Important: Read after Download
Please take a look at the second post after flashing the kernel!

Changelog:

Android 10
1.0.0 Initial Release
1.2.0 https://forum.xda-developers.com/showpost.php?p=83260487&postcount=67
1.2.2 https://forum.xda-developers.com/showpost.php?p=83521551&postcount=119
1.2.4 https://forum.xda-developers.com/showpost.php?p=83539543&postcount=125

Donations:
Donations are not mandatory but very welcome if you want to support development or just buy me a coffee :)
If you like my work: http://paypal.me/freak07

Credits:
@osm0sis for all his work, including the ak3 installer!
@tbalden for being the best HTC wingman!
@LeeDroid and @mwilky for their awesome roms and work!
@Captain_Throwback for all the mentoring and guidance!
@Eliminater74 for bringing me into the game and the Inspiration
@nathanchance for his upstream guidance and assistance
@RenderBroken for helping me out
@flar2 for all his work
@joshuous for all the help he provided to me in the past!
@arter97 for giving me advice
@kdrag0n for his help too
@topjohnwu for magisk!

XDA:DevDB Information
Kirisakura Kernel, Kernel for the OnePlus 8 Pro

Contributors
Freak07
Source Code: https://github.com/freak07/Kirisakura_OP8PRO_InstantNoodle

Kernel Special Features:

Version Information
Status: Stable

Created 2020-06-19
Last Updated 2020-09-20
 

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
4,906
15,671
FAQ

F.A.Q:

Question: Is root preserved when flashing this kernel?
Answer: Yes, the AnyKernel.zip will detect root and keep it.

Question: How do I return back to stock or another kernel.
Answer: Extract boot.img from matching firmware you are on and flash the extracted boot.img via fastboot. If you want to keep root flash back the magisk_patched_boot.img. Or dirty flash your rom.

Question: How to report bugs properly?
Answer: Have a look at post #3 in this thread. The linked guide is a pretty good starting point.
Before reporting any bug make sure you´re not using any mods, magisk modules, scripts or other modifications that alter various functions like sound mods, data traffic, sleeping behaviour, scheduler, magical battery tweaks etc.
Try to describe the issue as detailed as possible! Give your exact setup, like rom, magisk version, kernel version.
Is the issue reproducible? Does it happen frequently?
Provide logs, otherwise debugging is a lot harder. If you can already reproduce the issue and provide logs it greatly limits the amount of time I have to spent until I figure out how to reproduce it.

If the device force reboots/randomly reboots (that means you see the bootloader unlocked screen!) provide a ramoops file.
Easiest way is immediately after booting up, with a root explorer navigate to sys/fs/pstore. Copy the contents to your internal storage, zip it up and send it to me.

If the issue happens while the device is running provide a dmesg plus a logcat that you take while/shortly after the issue happens. This will log what´s running in the current session. Try to be as detailed as possible what´s happening when the issue appears. It will also help me in reading the log!
 

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
4,906
15,671

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
4,906
15,671
Hello everyone :)

I want to lose a few words about this kernel. :)
Before anybody asks, it´s made for the OP8 Pro only!

As you may or may not have noticed by reading the OP this kernel is very far from the stock base.
Adding linux-stable upstream and CAF-Upstream causes the commit-count to increase from 805000 to about 840000.
A "higher" commit count does not automatically translater to a better kernel. However upstreaming linux-stable and the CAF-Base to the latest code is an important aspect, that´s often cast aside. (after all the android kernel is based on the linux-kernel and the CAF-Base is the kernel base OnePlus bases the kernel for the OP8 Pro on) . Many developers work constantly on improving the linux-stable branches with commits that are tested, same goes for the qualcomm developers over at the CAF-Forums.
The main goals of this kernel are summarized in the OP. I encourage everyone to at least read once through it.
Here´s a short summary of what I think are the most characteristic and important aspects (also an excerpt from the first post of this thread:) ):

This project aims to keep most of the subsystems updated, way ahead of the stock kernel, thereby improving security, stability and performance! This includes Linux-Stable, CAF-Upstream and kernel/common.
Kernel Control Flow Integrity (Kernel-CFI), which is achieved by linking the kernel with LLD and Link Time Optimization (LTO), more precisely ThinLTO, are quite unique security features. In fact this may be (and probably is) the first 4.19 kernel with a fully working Kernel-CFI implementation and CFI-Violations fixed.
The only kernels made by OEMs offering this security feature are the ones for the Pixel 3 and Pixel 4 devices.

If some of that got you curious,have a read about Linux-Stable and why it is important here. The stable-process is not the same for every subsystem, but the general idea, rule of thumb and benefits are applicable for other subsystems as well.

Quick explanation of CAF-Upstream. CAF is short for Codeaurora-Forums. This is the place where development from Qualcomm for their SoCs happens. This includes the Snapdragon 865 that´s built into the OP8 Pro.
The kernel-bases available on the Codeaurora-Forums, are basically the foundations OEMs use, to build their own kernel additions on top for devices featuring Qualcomm SoCs.
The Qualcomm developers push regular updates to the bases of the different SoCs, a bit similar to how Linux-Upstream works. OEMs usually stop updating the initial base after the phone is released.
This kernel focuses amongst others to provide the latest CAF-Updates merged in a regular manner, to provide updates, improvements and enhancements for SoC specific drivers and subsystems! This might take a while, because a lot of device specific testing is done on my end to ensure stability.


I invite everybody to try the kernel :)

If you face any bugs, I´d appreciate if bug reports are done in the proper way, like it is asked for and explained in the 2nd and 3rd post.
If you read the OP you probably noticed I´m not talking about any improvments (some call it even magic) to performance or battery life. This is not one of the direct goals of this kernel.
If the modifications present in the kernel make you feel a noticable difference in either of these I´m very happy for you. I know that artifical benchmarks are improved and some other things I tested.
If this kernel is not for you you can very easy return to the stock kernel, like it´s described in the FAQ as well!
There might not be updates of this kernel for every single linux-stable upstream revision that is released at kernel.org or every single new commit added to the tree, but rather less updates but bigger ones.

I guess that gives everybody a rough idea of where this project might be going.


I wish everybody a nice day :)
 

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
4,906
15,671
Woohoo, welcome!
Congrats on this truly great achievement.
Keep it up.
[emoji106][emoji106][emoji122][emoji122]

Sent from my Pixel 4 XL using Tapatalk

Thank you! Glad to have you as a wingman for a very long time across different devices now!
Keep on rocking with all the CleanSlate goodies!

Loved this for the 7 pro. Welcome

Excellent, welcome!

Hey buddy! Nice to see you here!

Thank you :)

possible to add option to disable touchboost?

Yes, since all Cleanslate features are included it´s accessible via CleanSlate config app. ;)
https://forum.xda-developers.com/showpost.php?p=82598221&postcount=192

Gestures and Extras Section - Stock touchboost.
 
Last edited:

Lxeon

Member
Aug 27, 2017
19
1
seems it disable lowmemorykiller? i cant check it from FK kernel App and i want change it, **** OS with12g RAM still killng bg app

max its used 65% RAM, can not used more than it.
 
Last edited:

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
4,906
15,671
seems it disable lowmemorykiller? i cant check it from FK kernel App and i want change it, **** OS with12g RAM still killng bg app

max its used 65% RAM, can not used more than it.

The lowmemorykiller daemon is no longer in the kernel. it’s handled from userspace on the op8 pro on android 10 OOS.

Unfortunately nothing I can do in the kernel to change this.

If apps are getting killed say thank you to OnePlus and OOS. Not related to the kernel.
 

Lxeon

Member
Aug 27, 2017
19
1
Try to disable zram/swap
still around 65%

---------- Post added at 11:49 AM ---------- Previous post was at 11:49 AM ----------

The lowmemorykiller daemon is no longer in the kernel. it’s handled from userspace on the op8 pro on android 10 OOS.

Unfortunately nothing I can do in the kernel to change this.

If apps are getting killed say thank you to OnePlus and OOS. Not related to the kernel.
good hardware, suck software
 

Top Liked Posts

  • There are no posts matching your filters.
  • 38
    Kirisakura-Kernel for the OnePlus 8 Pro

    Hello everyone,

    To keep it short: Here is Kirisakura - Kernel for the OnePlus 8 Pro aka InstantNoodle.
    I would appreciate if everybody that flashes the kernel, reads at least once through this opening post and the following ones.

    Kirisakura - Kernel is designed to bring a handful of beneficial features to the device, while ensuring excellent performance and smoothness to get you safely through the day!

    This project aims to keep most of the subsystems updated, way ahead of the stock kernel, thereby improving security and performance, while keeping stability as the foucs during testing! This includes Linux-Stable, CAF-Upstream and kernel/common.
    Kernel Control Flow Integrity (Kernel-CFI), which is achieved by linking the kernel with LLD and Link Time Optimization (LTO), more precisely ThinLTO, are quite unique security features. In fact this may be (and probably is) the first 4.19 msm kernel with a fully working Kernel-CFI implementation and CFI-Violations fixed on a smartphone.
    The only kernels made by OEMs offering this security feature are the ones for the Pixel 3 and Pixel 4 devices.

    If that got you curious,have a read about Linux-Stable and why it is important here. The stable-process is not the same for every subsystem, but the general idea, rule of thumb and benefits are applicable for other subsystems as well.

    Quick explanation of CAF-Upstream. CAF is short for Codeaurora-Forums. This is the place where development from Qualcomm for their SoCs happens. This includes the Snapdragon 865 that´s built into the OP8 Pro.
    The kernel-bases available on the Codeaurora-Forums, are basically the foundations OEMs use, to build their own kernel additions on top for devices featuring Qualcomm SoCs.
    The Qualcomm developers push regular updates to the bases of the different SoCs, a bit similar to how Linux-Upstream works. OEMs usually stop updating the initial base after the phone is released.
    This kernel focuses amongst others to provide the latest CAF-Updates merged in a regular manner, to provide updates, improvements and enhancements for SoC specific drivers and subsystems! This might take a while, because a lot of device specific testing is done on my end to ensure stability.

    The kernel includes a lot of improvements and contributions from other developers as well. Without this kernel would not exist.
    I´d like to mention @tbalden ´s excellent CleanSlate features at this place. They improve usability by a big margin for me personally. The highly customizable sweep to sleep implementation (adjustable to different navigation settings), long tap to bring down status bar (very useful on a big device), backlight dimmer and notification reminder are very useful features that I use personally every day, which can be enabled rootless if one desires to run without root.
    Another big part of improvements originate from @arter97´s, @kdrag0n´s and @Sultanxda´s work. Many others contributed in some way or another to this kernel.
    A big thanks to all of them at this place!

    Now lets continue with a list of features in the next paragraph!


    Main Features:
    - Based on latest kernel sources from OnePlus for Android 10 and intended for use on OOS-Stable releases
    - compiled with Clang 11.0.3 and built with -O3 speed optimizations
    - Linux-Stable-Upstream included to 4.19.146
    - CAF base for the Snapdragon 865 (SD865) updated to CAF-Tag LA.UM.8.12.r1-12500-sm8250.0
    - Kernel Control-Flow-Integration (CFI) andLink-Time-Optimization (LTO) ported from 4.19 kernel/common and Pixel 4/XL Kernel
    - Shadow Call Stack (SCS) Security-Feature
    - Use ThinLTO which was first used in the Pixel 4 XL Android R-Preview Kernel instead of full LTO
    - fix various CFI-Violations found in various subsystems like OnePlus drivers and qualcomm drivers
    - Link the kernel with LLD and use RELR-Relocation
    - include important fixes/improvements from kernel/common
    - Flashing the kernel will keep root!
    - Cleanslate Features included! See @tbaldens´s CleanSlate Thread for more information
    - Flashable via EXKM and FKM on a rooted system!
    - Anykernel zip is based on the Anykernel3 release from @osm0sis

    EAS related features:
    - EAS implementation patched up to latest CAF state
    - disable autogroups and use cgroups for more efficient task placement!
    - Dynamic Stune Boost to inflate task utilization and not overload cores on interaction (thanks to @RenderBroken, @joshuous and @tbalden for the rootless implementation )
    - updates from kernel/common

    CPU related features:
    - Change various drivers (WLAN, MM, audio, charger, power, thermal, glink etc) to user power efficient workingqueues. This compliments EAS
    - include cpuidle patches from CAF
    - improvements to cpufreq/times/stats
    - improve memory allocations in binder driver

    GPU related features:
    - GPU driver updated to latest CAF-State
    - remove POPP functionality from GPU driver to avoid constant fight about downscaling with msm-adreno-tz
    - don´t wake the gpu on touch input, instead wake when receiving an ioctl
    - don´t copy fence names by default to save a bit of cpu-time (explanation)
    - msm: kgsl: Stop slab shrinker when no more pages can be reclaimed

    File System related features:
    - improve memory allocations in sdcardfs
    - improve eventpoll logging to stop indicting timerfd (improves kernel wakelock readability)
    - improve memory allocations in kernfs
    - writeback: hardcode dirty_expire_centisecs=3000 based on this commit

    UI/UX/Usability related features from CleanSlate:
    - CleanSlate features made by @tbalden
    - Flashlight Notification/Call blinking
    - Vibrating Notification Reminder
    - Sweep to Sleep touchscreen gesture - highly customizable
    - DoubleTap on Sweep2Sleep's area gestures - new way to pull down android Notification Area
    - Face down screen off - new gesture
    - Backlight Dimmer - possibility to use lower panel brightness (switch DC dimming off in Lab settings!)
    - KCAL Color Control (credit to @savoca)

    Network related features:
    - Wireguard Support (Details)
    - advanced TCP algorithms enabled
    - includes new bbr and bbr2

    Memory related features:
    - Speculative Page Faults left enabled (1. 2) (CAF default)
    - various fixes for PSI-Monitor, which is used by the userspace lowmemorykiller-daemon
    - Fix various memory leaks in different subsystems
    - improved mm with patches from mainline
    - various other changes from mainline
    - included zstd as an option for ZRAM-algorithm (lz4 is probably the best all around, so only change it if you know why and what you are doing)
    - improve memory allocations in various subsystems

    Security related features:
    - Control-Flow-Integration (CFI) and Link-Time-Optimization (LTO) ported from 4.19 kernel/common and Pixel 4/XL Kernel
    - Use ThinLTO which was first used in the Pixel 4 XL Android R-Kernel instead of full LTO
    - fix various CFI-Violations found in various subsystems like OnePlus drivers and qualcomm drivers
    - enable init_on_alloc for even more security, more information can be found in the commit message


    Misc Features:

    TCP Congestion Algorithms:
    - advanced algorithms enabled, enable them with your favorite kernel manager
    - includes new bbr2

    Wakelock Blocker:
    - advanced wakelock blocker with the ability to block any wakelocks (dangerous, use with caution)
    - please read [URL="https://arstechnica.com/gadgets/2018/08/p-is-for-power-how-google-tests-tracks-and-improves-android-battery-life/"]this for further info

    - blocking a kernel wakelock should only be done in case of firmware incompatabilities (WiFi network at work (can´t be changed) causes deep sleep to not work on the phone.) That´s the only use case I see for this feature. The kernel does not features this to improve battery life!

    Other features:
    - disable logging and debugging to make the kernel more lightweight in various places (includes binder, mm, vma, gpu, ipa etc)
    - fix several coding issues detected by newer Clang-Toolchains
    - add support for steam controller
    - add support for nintendo switch controller

    Feature section for the "non visible" but perceptible improvements:
    - updated binder section (responsible for interprocess communication)
    - updated sdcardfs ; have a read about it here:


    Requirements

    - unlocked Bootloader
    - USB-Debugging in developer options enabled
    - latest adb and fastboot binaries
    - working adb and fastboot environment
    - magisk root


    How to flash the Kernel:

    1. Download the latest kernel.zip and make sure you have properly updated to the latest matching OnePlus firmware. When OOS receives an update it takes OnePlus a while to release the source code for the new OS and me a while to build a new kernel. If you don´t want to face any issues, wait until I either release an updated kernel or give green light because there were no kernel changes.

    1a. Optional: While it may not be necessary all times, you may want to restore stock boot.img, re-root with magisk and optionally install twrp.zip if coming from another kernel. Before reporting issues make sure you do that! Thank you!

    2. Make sure to use latest Magisk-stable, if you choose to use Magisk.

    3. Flash the kernel.zip via latest EXKM or FKM app, or TWRP (haven´t tested TWRP myself as I don´t need it) and do a full reboot.

    4. Reboot and profit.


    DOWNLOAD:
    Download is located always in this folder:
    https://www.androidfilehost.com/?w=files&flid=313864

    Important: Read after Download
    Please take a look at the second post after flashing the kernel!

    Changelog:

    Android 10
    1.0.0 Initial Release
    1.2.0 https://forum.xda-developers.com/showpost.php?p=83260487&postcount=67
    1.2.2 https://forum.xda-developers.com/showpost.php?p=83521551&postcount=119
    1.2.4 https://forum.xda-developers.com/showpost.php?p=83539543&postcount=125

    Donations:
    Donations are not mandatory but very welcome if you want to support development or just buy me a coffee :)
    If you like my work: http://paypal.me/freak07

    Credits:
    @osm0sis for all his work, including the ak3 installer!
    @tbalden for being the best HTC wingman!
    @LeeDroid and @mwilky for their awesome roms and work!
    @Captain_Throwback for all the mentoring and guidance!
    @Eliminater74 for bringing me into the game and the Inspiration
    @nathanchance for his upstream guidance and assistance
    @RenderBroken for helping me out
    @flar2 for all his work
    @joshuous for all the help he provided to me in the past!
    @arter97 for giving me advice
    @kdrag0n for his help too
    @topjohnwu for magisk!

    XDA:DevDB Information
    Kirisakura Kernel, Kernel for the OnePlus 8 Pro

    Contributors
    Freak07
    Source Code: https://github.com/freak07/Kirisakura_OP8PRO_InstantNoodle

    Kernel Special Features:

    Version Information
    Status: Stable

    Created 2020-06-19
    Last Updated 2020-09-20
    20
    Update to 1.2.0

    Hey guys and girls,

    Sorry about the lack of updates, but I recently struggle to find time, to do regular releases on XDA as typing these release posts takes a bit of time as well. I don´t want to do any half-baked stuff, so I guess the wait is worth it for some.
    Patience is a virtue after all.

    The kernel was featured on the XDA-Portal a few weeks ago as it had Control Flow Integrity included, as I described in the OP, which is a first for a 4.19 qcom device. :)
    Link to the XDA-Portal article, which also contains a very detailed description. I suggest to give it a read :)

    Additionally to CFI, this release introduces Shadow Call Stack (SCS). It´s another security patchset that is aimed at preventing attacks via return oriented programming (ROP).
    ROP is a technique where the attacker gains control of the kernel stack to overwrite function return addresses and redirect execution to carefully selected parts of existing kernel code.
    If you´re interested here are a few good links:
    Google Security Blog explaining SCS.
    LLVM doc about SCS
    Android DOCs documenting SCS
    This is another big update to the kernel. As far as I´m aware the only devices including this patchset from factory are Pixels, starting with the Pixel 3.

    The latest source updates from OnePlus are merged as well. That means you MUST update to either OOS 10.5.12.AA or 10.5.11.BA before you flash the kernel.
    It will not work on older firmware!

    Other changes include CAF-Upstream, Linux-Stable upstream and a few others.
    Detailed changelog below and on github.



    I´d advise everybody to read the instructions in the OP and follow them. They are written for a reason, because they ensure everything will be working as expected.
    Kernel is made for the latest OOS firmware from OnePlus, you must update your phone to the most recent OnePlus update, before flashing the kernel.

    Enjoy!


    Changelog:

    - Implement Shadow Call Stack
    - Include latest OnePlus updates (make sure to properly update to either OOS 10.5.12.AA or 10.5.11.BA! The kernel won´t work on older firmware!)
    - Linux-Stable Upstream to 4.19.133
    - update clang to latest prebuilt 11.0.3 from Google
    - Merge CAF Upstream
    - patches from kernel/common
    - minor

    I wish you all a nice day/evening!


    Download is below :)

    Download:

    Disclaimer/Important:

    Kernel: https://www.androidfilehost.com/?fid=8889791610682913357
    Instructions how to flash the kernel can be found in the OP!
    But look at this post too :)


    Have fun, enjoy the kernel and your phone.

    If you like my work please consider a donation.
    Donations are not mandatory but very welcome.
    If you like my work and want to buy me a coffee/green tea: http://paypal.me/freak07
    12
    :cowboy: would be great to see an update for 10.5.11.IN11BA
    anyway, thanks for this great kernel and all the work on it :D


    Oh, thanks for the reminder, I forgot about the international version numbers. Well either way we will probably see an update within a week or two, the dev was really good at keeping up with the OnePlus 7 pro kernal updates about a week or two after OnePlus updates


    It’s already in the works and being tested :)
    12
    Hello everyone :)

    I want to lose a few words about this kernel. :)
    Before anybody asks, it´s made for the OP8 Pro only!

    As you may or may not have noticed by reading the OP this kernel is very far from the stock base.
    Adding linux-stable upstream and CAF-Upstream causes the commit-count to increase from 805000 to about 840000.
    A "higher" commit count does not automatically translater to a better kernel. However upstreaming linux-stable and the CAF-Base to the latest code is an important aspect, that´s often cast aside. (after all the android kernel is based on the linux-kernel and the CAF-Base is the kernel base OnePlus bases the kernel for the OP8 Pro on) . Many developers work constantly on improving the linux-stable branches with commits that are tested, same goes for the qualcomm developers over at the CAF-Forums.
    The main goals of this kernel are summarized in the OP. I encourage everyone to at least read once through it.
    Here´s a short summary of what I think are the most characteristic and important aspects (also an excerpt from the first post of this thread:) ):

    This project aims to keep most of the subsystems updated, way ahead of the stock kernel, thereby improving security, stability and performance! This includes Linux-Stable, CAF-Upstream and kernel/common.
    Kernel Control Flow Integrity (Kernel-CFI), which is achieved by linking the kernel with LLD and Link Time Optimization (LTO), more precisely ThinLTO, are quite unique security features. In fact this may be (and probably is) the first 4.19 kernel with a fully working Kernel-CFI implementation and CFI-Violations fixed.
    The only kernels made by OEMs offering this security feature are the ones for the Pixel 3 and Pixel 4 devices.

    If some of that got you curious,have a read about Linux-Stable and why it is important here. The stable-process is not the same for every subsystem, but the general idea, rule of thumb and benefits are applicable for other subsystems as well.

    Quick explanation of CAF-Upstream. CAF is short for Codeaurora-Forums. This is the place where development from Qualcomm for their SoCs happens. This includes the Snapdragon 865 that´s built into the OP8 Pro.
    The kernel-bases available on the Codeaurora-Forums, are basically the foundations OEMs use, to build their own kernel additions on top for devices featuring Qualcomm SoCs.
    The Qualcomm developers push regular updates to the bases of the different SoCs, a bit similar to how Linux-Upstream works. OEMs usually stop updating the initial base after the phone is released.
    This kernel focuses amongst others to provide the latest CAF-Updates merged in a regular manner, to provide updates, improvements and enhancements for SoC specific drivers and subsystems! This might take a while, because a lot of device specific testing is done on my end to ensure stability.


    I invite everybody to try the kernel :)

    If you face any bugs, I´d appreciate if bug reports are done in the proper way, like it is asked for and explained in the 2nd and 3rd post.
    If you read the OP you probably noticed I´m not talking about any improvments (some call it even magic) to performance or battery life. This is not one of the direct goals of this kernel.
    If the modifications present in the kernel make you feel a noticable difference in either of these I´m very happy for you. I know that artifical benchmarks are improved and some other things I tested.
    If this kernel is not for you you can very easy return to the stock kernel, like it´s described in the FAQ as well!
    There might not be updates of this kernel for every single linux-stable upstream revision that is released at kernel.org or every single new commit added to the tree, but rather less updates but bigger ones.

    I guess that gives everybody a rough idea of where this project might be going.


    I wish everybody a nice day :)
    9
    Hello everbody,

    if you´re interested in helping me testing some of the releases before they are published on XDA, I might need some help for that in the future.
    For most devices I have a small group of testers gathered in a private slack group.
    My experience over the years brought me to the conclusion that one person can´t test every single scenario once new code is merged. It´s very helpful if there are some others just using the device as they usually would to spot potential issues.

    If you´re an experienced android-user that wants to help me and this kernel along the journey, know how to take logs, how to restore your device in case something goes wrong and maybe are familiar with troubleshooting please feel free to PM me your slack E-Mail.
    I´m sure that if you meet these criteria and are prepared to show some courage that there are a few things everybody can learn from everybody else.
    In the past we managed to gather some very fun to work with groups, consisting of great people, that helped me a big deal. :)

    If you´re interested in getting kernels ahead of the release just for the fun of it this is not the place. It´s not the place to get support like some other kernels offer on telegram. I won´t do any extended hand-holding.

    I would like to ask you to run the kernels reliably (I know everybody has a private life and sometimes no time :) ) ahead of the release and report back in case of issues. With proper logs, steps to reproduce.
    Just like it´s mentioned on the 2nd and 3rd post of this thread, you need to be able to reproduce the issues on a firmware without further modifications. If you can only use your phone with 20 magisk modules on top, and you can´t restore quickly to a complete stock setup in case of issues, this group might not be the right place.

    If you want to give it a go, just PM me your Slack E-Mail and I will add you to the group :)


    I wish everybody a nice day.