Releases: chickendrop89/device_xiaomi_unified-kernel
Releases · chickendrop89/device_xiaomi_unified-kernel
chickernel: stable-4 release
/*
* Your warranty is no longer valid, unless you lie.
*
* I am not responsible for bricked devices, strained relationships,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*
*/
A kernel carefully optimized for
- low-memory, cpu, f2fs and scheduling performance
- battery and power savings
Speciifically crafted for 4GB variant in mind ❤️
- Supports
tapas
/topaz
/sapphire
/sapphiren
⭐
XDA Forums thread | SourceForge mirror
📋 Click here to see new changes introduced in this release
net:
- disabled support for syncookies to improve net performance and reduce interference
sched:
- cass: update implementation
- minor optimizations
f2fs:
- minor optimization
kernel:
- adjusted binder priority driver to reduce power consumption
- avoid dynamic memory allocations in few hot paths to improve performance
- stripped more stuff not targeting our platform to reduce kernel size
- reduced system-wide stutters
- update kernelsu implementation
compilation:
- bump clang from 19.0.0 -> 19.0.1
📋 Click here to see changelog from previous release(s)
mm:
- mlgru: enable mlgru by default to reduce app killings in background
wakelocks:
- added boefla wakelock blocker, and blacklisted two wakelocks that are not suitable for android by default
- reduced wakelock timeouts for fingerprint and serial drivers
- add timeout to wakelocks to stop system from not entering deep-sleep at all
- alarmtimer: minimize wakeup time to reduce power consumption
sched:
- cass: add capacity aware superset scheduler (CASS) to improve single-core performance and latency
- fair: reduce PELT half-life time to increase interactivity
- core: reduce overhead and latency
net:
- set google's 'BBR' as the default TCP congestion algorithm to improve network performance
- add 'westwood' TCP congestion algorithm for users who prefer it
- use fq_codel by default
freezer:
- reduce freeze timeout to avoid draining battery unnecessarily
iogovernor:
- added SSG I/O governor (used by samsung) and tuned it to increase throughput and reduce latency
- removed kyber and mq-deadline I/O governors as they are not used, and don't pose any advantage over existing ones
cpugovernor:
- make 'performance' the default CPU governor to improve boot performance - this will be reverted once boot completes anyway
- blacklisted "userspace" and "ondemand" governors from loading as they are never used
mm:
- reduce swappiness to 35 since we have mlgru enabled to reduce aggressive swapping and reduce power consumption
- disable watermark boosting as it's a mess, and hurts performance on low-memory devices
- don't hog the CPU and zone lock in rmqueue_bulk to reduce system latency
- lower the non-hugetlbpage pageblock size to reduce scheduling delays
- micro-optimize PID maps
- stop kswapd when it is not needed to save resources.
- reduce measurable overhead
cpuidle:
- add timer to stop wi-fi from staying idle to reduce power consumption
- disabled "menu" and generic arm cpuidle governors in favor of governors that are more suitable on our platform (TEO, Qcom-LPM)
- minor optimizations
f2fs:
- force fsync for better data integrity and lower data corruption risk
- reduce timeout for uncongestion to lower I/O latency
- enlarge min_fsync_blocks to 20 to improve fsync performance
- enable ATGC and GC_MERGE by default to improve efficiency of garbage collection
- disabled collection of statistics (iostat) by default to reduce latency
rcu:
- enable lazy-rcu by default to increase battery savings on idle, or low system load
- minor optimizations
arm:
- assign unbound workqueues to LITTLE CPU cluster by default to reduce power consumption
- import new optimized strcmp from ARM (manufacturer)
- improved performance of library routines by 20%. Applied optimized arm helpers
- disable legacy 16-bit calls support to reduce kernel image size
compilation:
- compile with clang -O3 optimizations for maximal performance
- tune our compiler specifically for sm6225-AD to achieve bigger performance improvements
- enabled the use of LLVM polyhedral optimizations
kernel:
- enabled power-efficient workqueues by default
- disabled deprecated armv8 instruction emulation (since it is not used on our platform)
- imported binder priority driver and tuned it to prioritize common UI renderers and elements
- unselect profiling, and unrelated platform support/drivers to reduce kernel size
- unselect unneeded errata workarounds not affecting our SoC to improve performance
- stripped out assembler symbols, and miscellaneous debugging to reduce kernel size
- build `ZRAM` and `ZSMALLOC` modules into the kernel image, as most of the time, the external modules are outdated
debug:
- binder: disable debugging and logging prints to reduce wasted cycles
- arm64: disable self-hosted debug by default
merged:
- CAF (Qualcomm) changes
- Xiaomi changes
This is a stable 5.15
release built with latest clang-19.0.1
(-O3 and polyhedral optimizations)
Installation guide:
- Download the kernel zip below
- Use FKM flasher, or reboot to recovery and install it
- Enjoy
Credits
- Google, for android common kernel (ACK)
- kerneltoast, for his awesome work & commits
- panchajanya1999, for few commits
- ztc1997, for ideas & some commits
⚠️ Report any bugs and problems here
Please, if you Ctrl-C + Ctrl-V my kernel, at least provide some credit for my efforts
chickernel: stable-3 release
/*
* Your warranty is no longer valid, unless you lie.
*
* I am not responsible for bricked devices, strained relationships,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*
*/
A kernel carefully optimized for
- low-memory, cpu, f2fs and scheduling performance
- battery and power savings
Speciifically crafted for 4GB variant in mind ❤️
- Supports
tapas
/topaz
/sapphire
/sapphiren
⭐
XDA Forums thread | SourceForge mirror
📋 Click here to see new changes introduced in this release
wakelocks:
- added boefla wakelock blocker, and blacklisted two wakelocks that are not suitable for android by default
- reduced wakelock timeouts for fingerprint and serial drivers
governor:
- blacklisted "userspace" and "ondemand" governors from loading as they are never used
iogovernor:
- added SSG I/O governor (used by samsung) and tuned it to increase throughput and reduce latency
- removed kyber and mq-deadline I/O governors as they are not used, and don't pose any advantage over existing ones
cpuidle:
- disabled "menu" and generic arm cpuidle governors in favor of governors that are more suitable on our platform (TEO, Qcom-LPM)
arm:
- improved performance of library routines by 20%
- used optimized arm helpers for zram, zsmalloc and F2FS to improve performance by around 10%
f2fs:
- disabled collection of statistics (iostat) by default to reduce latency
kernel:
- enabled power-efficient workqueues by default
- disabled deprecated armv8 instruction emulation since it is not used
- removed unused serial drivers that are not used on our platform
- stripped out assembler symbols, and miscellaneous debugging to reduce kernel size
- imported binder priority driver and tuned it to prioritize common UI renderers and elements
compilation:
- enabled the use of LLVM polyhedral optimizations
📋 Click here to see changelog from previous release(s)
mm:
- mlgru: enable mlgru by default to reduce app killings in background
usb:
- fix usb tethering - stop system from panicking upon enabling usb-tethering in android settings
wakelocks:
- add timeout to wakelocks to stop system from not entering deep-sleep at all
- alarmtimer: minimize wakeup time to reduce power consumption
- avoid excessive and unnecessary wakeup attempts
sched:
- cass: add capacity aware superset scheduler (CASS) to improve single-core performance and latency
- fair: reduce PELT half-life time to increase interactivity
- core: reduce overhead and latency
net:
- set google's 'BBR' as the default TCP congestion algorithm to improve network performance
- add 'westwood' TCP congestion algorithm for users who prefer it
- use fq_codel by default
freezer:
- reduce freeze timeout to avoid draining battery unnecessarily
governor:
- make 'performance' the default CPU governor to improve boot performance - this will be reverted once boot completes anyway
mm:
- reduce swappiness to 35 since we have mlgru enabled to reduce aggressive swapping and reduce power consumption
- disable watermark boosting as it's a mess, and hurts performance on low-memory devices
- don't hog the CPU and zone lock in rmqueue_bulk to reduce system latency
- lower the non-hugetlbpage pageblock size to reduce scheduling delays
- micro-optimize PID maps
- stop kswapd when it is not needed to save resources.
- reduce measurable overhead
cpuidle:
- add timer to stop wi-fi from staying idle to reduce power consumption
- prioritize 'teo' over 'menu' scheduler
- minor optimizations
f2fs:
- force fsync for better data integrity and lower data corruption risk
- reduce timeout for uncongestion to lower I/O latency
- reduce GC thread urgent sleep time to 50ms to improve performance on unencrypted system
- enlarge min_fsync_blocks to 20 to improve fsync performance
- enable ATGC and GC_MERGE by default to improve efficiency of garbage collection
rcu:
- enable lazy-rcu by default to increase battery savings on idle or low system load
- panic on RCU stall so we don't have to restart on deadlock manually
- minor optimizations
arm:
- assign unbound workqueues to little CPU cluster by default to reduce power consumption
- import new optimized strcmp from ARM (manufacturer)
- disable legacy 16-bit calls support to reduce kernel image size
anykernel3:
- support sapphire/sapphiren
compilation:
- compile with clang -O3 optimizations for maximal performance
- tune our compiler specifically for sm6225-AD to achieve bigger performance improvements
- bump clang from 18.0.1 -> 19.0.0
kernel:
- disable profiling support so we can reduce the kernel size
- unselect unrelated platform support to reduce kernel size
- unselect unneeded errata workarounds not affecting our SoC to improve performance
- build `ZRAM` and `ZSMALLOC` modules into the kernel image, as most of the time, the external modules are outdated
debug:
- binder: disable debugging and logging prints to reduce wasted cycles
- arm64: disable self-hosted debug by default
merged:
- CAF (Qualcomm) changes
- Xiaomi changes
This is a stable 5.15
release built with latest clang-19.0.0
(-O3 and polyhedral optimizations)
Installation guide:
- Download the kernel zip below
- Reboot to recovery and install it
- Enjoy
Credits
- Google, for android common kernel (ACK)
- kerneltoast, for his awesome work & commits
- panchajanya1999, for few commits
- ztc1997, for ideas & some commits
- OrionG2 on XDA, for testing
⚠️ Report any bugs and problems here
Please, if you Ctrl-C + Ctrl-V my kernel, at least provide some credit for my efforts
chickernel: stable-2-hotfix release
/*
* Your warranty is no longer valid, unless you lie.
*
* I am not responsible for bricked devices, strained relationships,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*
*/
⚠️ This release aims to fix stable-2
boot prompt issue ⚠️
A kernel carefully optimized for
- low-memory, cpu, f2fs and scheduling performance
- battery and power savings
Speciifically crafted for 4GB variant in mind ❤️
- Supports
tapas
/topaz
/sapphire
/sapphiren
⭐
XDA Forums thread
SourceForge mirror
📋 Click here to see new changes introduced in this release
kernel:
- fix "there's an internal problem with your device" error upon boot (thanks to OrionG2 on XDA)
📋 Click here to see changelog from previous release(s)
mm:
- mlgru: enable mlgru by default to reduce app killings in background
usb:
- fix usb tethering - stop system from panicking upon enabling usb-tethering in android settings
wakelocks:
- add timeout to wakelocks to stop system from not entering deep-sleep at all
- alarmtimer: minimize wakeup time to reduce power consumption
- avoid excessive and unnecessary wakeup attempts
sched:
- cass: add capacity aware superset scheduler (CASS) to improve single-core performance and latency
- fair: reduce PELT half-life time to increase interactivity
- core: reduce overhead and latency
net:
- set google's 'BBR' as the default TCP congestion algorithm to improve network performance
- add 'westwood' TCP congestion algorithm for users who prefer it
- use fq_codel by default
freezer:
- reduce freeze timeout to avoid draining battery unnecessarily
governor:
- make 'performance' the default CPU governor to improve boot performance - this will be reverted once boot completes anyway
mm:
- reduce swappiness to 35 since we have mlgru enabled to reduce aggressive swapping and reduce power consumption
- disable watermark boosting as it's a mess, and hurts performance on low-memory devices
- don't hog the CPU and zone lock in rmqueue_bulk to reduce system latency
- lower the non-hugetlbpage pageblock size to reduce scheduling delays
- micro-optimize PID maps
- stop kswapd when it is not needed to save resources.
- reduce measurable overhead
cpuidle:
- add timer to stop wi-fi from staying idle to reduce power consumption
- prioritize 'teo' over 'menu' scheduler
- minor optimizations
f2fs:
- force fsync for better data integrity and lower data corruption risk
- reduce timeout for uncongestion to lower I/O latency
- reduce GC thread urgent sleep time to 50ms to improve performance on unencrypted system
- enlarge min_fsync_blocks to 20 to improve fsync performance
- enable ATGC and GC_MERGE by default to improve efficiency of garbage collection
rcu:
- enable lazy-rcu by default to increase battery savings on idle or low system load
- panic on RCU stall so we don't have to restart on deadlock manually
- minor optimizations
arm:
- assign unbound workqueues to little CPU cluster by default to reduce power consumption
- import new optimized strcmp from ARM (manufacturer)
- disable legacy 16-bit calls support to reduce kernel image size
anykernel3:
- support sapphire/sapphiren
compilation:
- compile with clang -O3 optimizations for maximal performance
- tune our compiler specifically for sm6225-AD to achieve bigger performance improvements
- bump clang from 18.0.1 -> 19.0.0
kernel:
- disable profiling support so we can reduce the kernel size
- unselect unrelated platform support to reduce kernel size
- unselect unneeded errata workarounds not affecting our SoC to improve performance
- build `ZRAM` and `ZSMALLOC` modules into the kernel image, as most of the time, the external modules are outdated
debug:
- binder: disable debugging and logging prints to reduce wasted cycles
- arm64: disable self-hosted debug by default
merged:
- CAF (Qualcomm) changes
- Xiaomi changes
This is a stable 5.15.148
release built with latest clang-19.0.0
(-O3 optimization)
Installation guide:
- Download the kernel zip below
- Reboot to recovery and install it
- Enjoy
What about KernelSU?
- This kernel is not built with kernelsu, and i suggest using LKM (loadable kernel module) variant of KernelSU instead
- And also so you can use magisk without any conflict, or unnecessarily having/loading two superuser managers
Credits
- Google, for android common kernel (ACK)
- kerneltoast, for his awesome work & commits
- panchajanya1999, for few commits
- ztc1997, for ideas & some commits
⚠️ Report any bugs and problems here
Please, if you Ctrl-C + Ctrl-V my kernel, at least provide some credit for my efforts
chickernel: stable-2 release
/*
* Your warranty is no longer valid, unless you lie.
*
* I am not responsible for bricked devices, strained relationships,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*
*/
A kernel carefully optimized for
- low-memory, cpu, f2fs and scheduling performance
- battery and power savings
Speciifically crafted for 4GB variant in mind ❤️
- Supports
tapas
/topaz
/sapphire
/sapphiren
⭐
XDA Forums thread
SourceForge mirror
📋 Click here to see new changes introduced in this release
compilation:
- tune our compiler specifically for sm6225-AD to achieve bigger performance improvements
- bump clang from 18.0.1 -> 19.0.0
sched:
- update the Capacity Aware Superset Scheduler (CASS) implementation
mm:
- stop kswapd when it is not needed to save resources.
- various performance improvements
cpuidle:
- revert teo util-awareness to reduce power usage
- various performance improvements
- various power usage improvements
kernel:
- disable profiling support so we can reduce the kernel size
- unselect unrelated platform support to reduce kernel size
- unselect unneeded errata workarounds not affecting our SoC to improve performance
- build `ZRAM` and `ZSMALLOC` modules into the kernel image, as most of the time, the external modules are outdated
merge:
- CAF (Qualcomm) changes
- Xiaomi changes
📋 Click here to see changelog from previous release(s)
mm:
- mlgru: enable mlgru by default to reduce app killings in background
usb:
- fix usb tethering - stop system from panicking upon enabling usb-tethering in android settings
wakelocks:
- add timeout to wakelocks to stop system from not entering deep-sleep at all
- alarmtimer: minimize wakeup time to reduce power consumption
- avoid excessive and unnecessary wakeup attempts
sched:
- cass: add capacity aware superset scheduler (CASS) to improve single-core performance and latency
- fair: reduce PELT half-life time to increase interactivity
- core: reduce overhead and latency
net:
- set google's 'BBR' as the default TCP congestion algorithm to improve network performance
- add 'westwood' TCP congestion algorithm for users who prefer it
- use fq_codel by default
freezer:
- reduce freeze timeout to avoid draining battery unnecessarily
governor:
- make 'performance' the default CPU governor to improve boot performance - this will be reverted once boot completes anyway
mm:
- reduce swappiness to 35 since we have mlgru enabled to reduce aggressive swapping and reduce power consumption
- disable watermark boosting as it's a mess, and hurts performance on low-memory devices
- don't hog the CPU and zone lock in rmqueue_bulk to reduce system latency
- lower the non-hugetlbpage pageblock size to reduce scheduling delays
- micro-optimize PID maps
- reduce measurable overhead
cpuidle:
- introduce teo util-awareness to reduce wakeup latency from deep-sleep and such
- add timer to stop wi-fi from staying idle to reduce power consumption
- prioritize 'teo' over 'menu' scheduler
- minor optimizations
f2fs:
- force fsync for better data integrity and lower data corruption risk
- reduce timeout for uncongestion to lower I/O latency
- reduce GC thread urgent sleep time to 50ms to improve performance on unencrypted system
- enlarge min_fsync_blocks to 20 to improve fsync performance
- enable ATGC and GC_MERGE by default to improve efficiency of garbage collection
rcu:
- enable lazy-rcu by default to increase battery savings on idle or low system load
- panic on RCU stall so we don't have to restart on deadlock manually
- minor optimizations
arm:
- assign unbound workqueues to little CPU cluster by default to reduce power consumption
- import new optimized strcmp from ARM (manufacturer)
- disable legacy 16-bit calls support to reduce kernel image size
anykernel3:
- support sapphire/sapphiren
compilation:
- compile with clang -O3 optimizations for maximal performance
debug:
- binder: disable debugging and logging prints to reduce wasted cycles
- arm64: disable self-hosted debug by default
This is a stable 5.15.148
release built with latest clang-19.0.0
(-O3 optimization)
Installation guide:
- Download the kernel zip below
- Reboot to recovery and install it
- Enjoy
What about KernelSU?
- This kernel is not built with kernelsu, and i suggest using LKM (loadable kernel module) variant of KernelSU instead
- And also so you can use magisk without any conflict, or unnecessarily having/loading two superuser managers
Credits
- Google, for android common kernel (ACK)
- kerneltoast, for his awesome work & commits
- panchajanya1999, for few commits
- ztc1997, for ideas & some commits
⚠️ Report any bugs and problems here
Please, if you Ctrl-C + Ctrl-V my kernel, at least provide some credit for my efforts
chickernel: stable-1 release
/*
* Your warranty is no longer valid, unless you lie.
*
* I am not responsible for bricked devices, strained relationships,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*
*/
A kernel carefully optimized for
- low-memory, cpu, f2fs and scheduling performance
- battery and power savings
Speciifically crafted for 4GB variant in mind ❤️
XDA Forums thread
SourceForge mirror
📋 Click here to see new changes introducted in this release
rcu: enable lazy-rcu by default to increase battery savings on idle or low system load
compilation: now compiled with clang -O3 optimizations for maximal performance
anykernel3: support sapphire/sapphiren
📋 Click here to see changelog from previous release(s)
mm: mlgru: enable mlgru by default to reduce app killings in background
usb: fix usb tethering - stop system from panicking upon enabling usb-tethering in android settings
wakelocks: add timeout to wakelocks to stop system from not entering deep-sleep at all
wakelocks: alarmtimer: minimize wakeup time to reduce power consumption
wakelocks: avoid excessive and unnecessary wakeup attempts
sched/cass: add capacity aware superset scheduler (CASS) to improve single-core performance and latency
sched/fair: reduce PELT half-life time to increase interactivity
sched/core: reduce overhead and latency
net: set google's 'BBR' as the default TCP congestion algorithm to improve network performance
net: add 'westwood' TCP congestion algorithm for users who prefer it
net: use fq_codel by default
freezer: reduce freeze timeout to avoid draining battery unnecessarily
governor: make 'performance' the default CPU governor to improve boot performance - this will be reverted once boot completes anyway
mm: reduce swappiness to 35 since we have mlgru enabled to reduce aggressive swapping and reduce power consumption
mm: disable watermark boosting as it's a mess, and hurts performance on low-memory devices
mm: don't hog the CPU and zone lock in rmqueue_bulk to reduce system latency
mm: lower the non-hugetlbpage pageblock size to reduce scheduling delays
mm: micro-optimize PID maps
mm: reduce measurable overhead
cpuidle: introduce teo util-awareness to reduce wakeup latency from deep-sleep and such
cpuidle: add timer to stop wi-fi from staying idle to reduce power consumption
cpuidle: prioritize 'teo' over 'menu' scheduler
cpuidle: minor optimizations
f2fs: force fsync for better data integrity and lower data corruption risk
f2fs: reduce timeout for uncongestion to lower I/O latency
f2fs: reduce GC thread urgent sleep time to 50ms to improve performance on unencrypted system
f2fs: enlarge min_fsync_blocks to 20 to improve fsync performance
f2fs: enable ATGC and GC_MERGE by default to improve efficiency of garbage collection
rcu: panic on RCU stall so we don't have to restart on deadlock manually
rcu: minor optimizations
arm: assign unbound workqueues to little CPU cluster by default to reduce power consumption
arm: import new optimized strcmp from ARM (manufacturer)
arm: disable legacy 16-bit calls support to reduce kernel image size
debug: binder: disable debugging and logging prints to reduce wasted cycles
debug: arm64: disable self-hosted debug by default
This is a stable 5.15.148
release built with latest clang-18.0.1 (thin-LTO for more optimizations)
Installation guide:
- Download the kernel zip below
- Reboot to recovery and install it
- Enjoy
What about KernelSU?
- This kernel is not built with kernelsu, and i suggest using LKM (loadable kernel module) variant of KernelSU instead
- And also so you can use magisk without any conflict, or unnecessarily having/loading two superuser managers
Credits
- Google, for android common kernel (ACK)
- kerneltoast, for his awesome work & commits
- panchajanya1999, for few commits
- ztc1997, for ideas & some commits
⚠️ Report any bugs and problems here
Please, at least provide a credit if you copy my kernel
chickernel: alpha-1 release
/*
* Your warranty is no longer valid, unless you lie.
*
* I am not responsible for bricked devices, strained relationships,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this kernel
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*
*/
A kernel carefully optimized for
- low-memory, cpu, f2fs and scheduling performance
- battery and power savings
Speciifically crafted for 4GB variant in mind ❤️
XDA Forums thread
SourceForge mirror
📋 Click here to see changelog sorted with most important changes, to least:
mm: mlgru: enable mlgru by default to reduce app killings in background
usb: fix usb tethering - stop system from panicking upon enabling usb-tethering in android settings
wakelocks: add timeout to wakelocks to stop system from not entering deep-sleep at all
wakelocks: alarmtimer: minimize wakeup time to reduce power consumption
wakelocks: avoid excessive and unnecessary wakeup attempts
sched/cass: add capacity aware superset scheduler (CASS) to improve single-core performance and latency
sched/fair: reduce PELT half-life time to increase interactivity
sched/core: reduce overhead and latency
net: set google's 'BBR' as the default TCP congestion algorithm to improve network performance
net: add 'westwood' TCP congestion algorithm for users who prefer it
net: use fq_codel by default
freezer: reduce freeze timeout to avoid draining battery unnecessarily
governor: make 'performance' the default CPU governor to improve boot performance - this will be reverted once boot completes anyway
mm: reduce swappiness to 35 since we have mlgru enabled to reduce aggressive swapping and reduce power consumption
mm: disable watermark boosting as it's a mess, and hurts performance on low-memory devices
mm: don't hog the CPU and zone lock in rmqueue_bulk to reduce system latency
mm: lower the non-hugetlbpage pageblock size to reduce scheduling delays
mm: micro-optimize PID maps
mm: reduce measurable overhead
cpuidle: introduce teo util-awareness to reduce wakeup latency from deep-sleep and such
cpuidle: add timer to stop wi-fi from staying idle to reduce power consumption
cpuidle: prioritize 'teo' over 'menu' scheduler
cpuidle: minor optimizations
f2fs: force fsync for better data integrity and lower data corruption risk
f2fs: reduce timeout for uncongestion to lower I/O latency
f2fs: reduce GC thread urgent sleep time to 50ms to improve performance on unencrypted system
f2fs: enlarge min_fsync_blocks to 20 to improve fsync performance
f2fs: enable ATGC and GC_MERGE by default to improve efficiency of garbage collection
rcu: panic on RCU stall so we don't have to restart on deadlock manually
rcu: minor optimizations
arm: assign unbound workqueues to little CPU cluster by default to reduce power consumption
arm: import new optimized strcmp from ARM (manufacturer)
arm: disable legacy 16-bit calls support to reduce kernel image size
debug: binder: disable debugging and logging prints to reduce wasted cycles
debug: arm64: disable self-hosted debug by default
This is a stable 5.15.148
release built with latest clang-18.0.1 (thin-LTO for more optimizations)
Installation guide:
- Download the kernel zip below
- Reboot to recovery and install it
- Enjoy
What about KernelSU?
- This kernel is not built with kernelsu, and i suggest using LKM (loadable kernel module) variant of KernelSU instead
- And also so you can use magisk without any conflict, or unnecessarily having/loading two superuser managers
Credits
- Google, for android common kernel (ACK)
- kerneltoast, for his awesome work & commits
- panchajanya1999, for few commits
- ztc1997, for ideas & some commits