Development EOL - [KERNEL] [OOS] Omega Kernel OOS11 [September 18, 2021]

Status
Not open for further replies.
Search This thread

kristofpetho

Senior Member
May 27, 2009
5,195
10,033
Zoetermeer
Development has stopped - see my last post HERE.

Introduction

Hello everyone, this is my personal kernel for the OnePlus 9 Pro.
My philosophy on the kernel is pretty simple, intended to replace the stock kernel, but with a lot of under-the-hood tweaks.

Hopefully you will all enjoy!

Important thread information!

I refuse to acknowledge/respond to bug reports that do not include clear steps to reproduce, a logcat, and a console ramoops (if random rebooting) or a dmesg (any other issues). Follow this guide to do this.
Keep things civil, no flaming in the forums!

Features

  • Up to date with OxygenOS 11 source
  • Compiled with Google's Clang toolchain for maximum stability, with all warnings and errors fixed
  • Compiled with Clang's cortex-a55 optimizations
  • Many tweaks under the hood for smoother UX, lower battery drain, etc.
  • Westwood as the default congestion algorithm (BBR is also available)
  • Available to flash with AnyKernel3

Latest kernel release on GitHub

LINK

Source

Omega GitHub: https://github.com/kristofpetho/kernel_oneplus_sm8350
Omega originally sourced from: OnePlusOSS

Thanks where it's due

@pyry666 for all his help getting me logs after logs after logs. Without him this wouldn't have been possible!
@Burt Squirtz and @crashazz3 and @TheKnux for helping to test
Kerneltoast for his extreme patience and guidance
osm0sis (for AnyKernel3)
@eng.stk for finding a way to have proper hardware detection working
 
Last edited:

kristofpetho

Senior Member
May 27, 2009
5,195
10,033
Zoetermeer
Releases

September 18
- download HERE
- Pulled in patch from Google to make cpufreq stat collection less CPU-hungry (smoothness)
- Pulled in 3 Clang/LLVM stability fixes from upstream Linux
- Pulled in a patch for better power consumption when vibrations are enabled (from arter's source)

August 14 - download HERE
- Merged in OOS 11.2.8.8 sources

August 7 - download HERE
- Build with Google's Clang 13.0.1, updated Binutils to 2.37
- Pulled in 5 code fixes from CAF for display driver
- Pulled in 2 logic fixes from CAF for display driver
- Pulled in 3 various CAF stability fixes
- Fixed a dmesg error message with a commit from upstream Linux
- Removed all android_fs tracing from the ext4 and f2fs filesystem drivers

July 30 - download HERE
- Various coding fixes
- 5 code fixes from CAF
- A codefix from upstream Linux
- Enabled support for TTL spoofing

July 12 - download HERE
- Using Clang to compile (stability reasons)
- Tweaked Clang's LTO for better performance
- Re-enabled Oneplus's TPD module (stability reasons)
- Pulled in 3 stability fixes from CAF
- Re-enabled watermark boosting - now that a fix for it is available in upstream

July 7 - download HERE
- Further tweaks to GCC's O3 optimization level
- Pulled in a number of stability fixes from CAF
- Pulled in a UFS system fix from CrDroid kernel
- Removed even more logging from the kernel when the phone is not connected to WiFi
- Reverted to Westwood as default TCP congestion - BBR is still there and can be enabled
- Disabled OnePlus's TPD module - this was responsible for limiting apps' CPU placement, as reported by multiple news outlets

June 24 - download HERE
- Using stable GCC toolchain again - with newest patches it simply performs better than any Clang build
- Added a few stability fixes from upstream
- Added a few compiler tweaks for better overall performance

June 13 - download HERE
- Fixed major network error where userspace was trying to modify network settings but the kernel wasn't allowing it
- Pulled in a fix from CAF to improve/lower battery drain
- Updated Wireguard module to latest version
- Built using Google's latest Clang (12.0.6)
- Enabled all Clang internal optimizations (reverted a crazy CAF patch disabling them), and fixed all subsequent code errors
- Fixed an IRQ saving issue found via lockdep (upstream)

June 2 - download HERE
- Disable watermark boosting for significantly lower CPU usage during day-to-day use
- Further tweaks to memory management
- Removed USB webcam drivers
- Updated with OOS 11.2.6.6 kernel sources
- Fixed hardware detection algorhythm (kernel should now work on both the 9 and 9 Pro)

May 29 - download HERE
- Compiled again with GCC, without LTO
- O3 optimization enabled for all warnings/errors fixed
- Fixed charge throttling as well as thermal throttling during charging

May 25 - download HERE
- Built using Google's Clang
- O3 optimization, ThinLTO, SCS, CFI all enabled (like stock)
- Uses modules from userspace for maximum stability
- Fixed thermal throttling issues
- Fixed Warp Wireless charging issues

May 18 - download HERE
- Reverted to using Clang + ThinLTO (this seems to fix camera issues people were seeing)
- Fixed a scheduler regression that was introduced in the 5/12 build

May 16 - download HERE
- GCC LTO implemented
- GCC O3 optimization (together with LTO results in significant improvement of hackbench scores)
- Wireguard added
- Anykernel 3 updated
- Critical and stability fixes from CAF
- More code fixes based on GCC's diagnostics
- Significant improvement to ZRAM speed

May 12 - download HERE
- Updated to latest OOS sources for 11.2.5.5
- Updated GCC toolchain to 11.1.0, and fixes all new code warnings
- Disabled some unnecessary tools in the kernel that are not needed for Android
- Remove all debugging from the WLAN driver
- Remove all debugging from the Camera driver
- Pull in 2 scheduler fixes from CAF for load balancing
- Disable hardware intergrity checking driver that polled the hardware every 5 seconds for errors

May 5 - download HERE
- Now built with GCC 10.3.0, since it's better. No other reason. Linux is also built with GCC, so there you have it.
- Fixed all code warnings and errors that GCC found (it found a LOT)
- Switched to BBR congenstion control. Much better throughput on bad quality networks.
- Removed a ton more debugging

May 2 - download HERE
- Initial release with Clang 12.0.5 from Google, all code warnings and errors fixed
- Tons of debugging removed from the kernel for a smoother experience
 
Last edited:

kristofpetho

Senior Member
May 27, 2009
5,195
10,033
Zoetermeer
First custom kernel is ready for the 9 Pro!

IMPORTANT - this will NOT work on a standard Oneplus 9, only the 9 Pro!!!

Changelog:
- Initial release with Clang 12.0.5 from Google, all code warnings and errors fixed
- Tons of debugging removed from the kernel for a smoother experience

Enjoy!
 

Attachments

  • Omega-11.0_0502.zip
    19.7 MB · Views: 246

Reddit3321

Senior Member
Jan 19, 2017
51
36
Hi! Thanks for your contribution and kicking off custom development of the 9 pro!
I am very much new to the OnePlus device platform and I have no clue how to install this. Can you please provide some steps or guide as to how can I install this ?
Once you are bootloader unlocked and rooted on your 9 Pro, the easiest way to install is to flash the zip through a kernel manager, such as exkm/franco kernel manager. Take a backup of your stock boot.img as well.

Once flashed, reboot, profit!

Running 11.2.4.4 with Omega on my 9 Pro 👍

Thanks Kristof!
 

netgar

Senior Member
Jan 14, 2012
1,080
137
Screenshot_20210502-121451.jpg

Just use a flasher, right?
 

pyry666

Senior Member
Dec 27, 2012
676
231
OnePlus 9 Pro
Once you are bootloader unlocked and rooted on your 9 Pro, the easiest way to install is to flash the zip through a kernel manager, such as exkm/franco kernel manager. Take a backup of your stock boot.img as well.

Once flashed, reboot, profit!

Running 11.2.4.4 with Omega on my 9 Pro 👍

Thanks Kristof!
Just to ad this few steps. Kernel is SAFE but take EFS and PERSIST back up also..Still have nightmares with oneplus 8 pro.. LoL
 
  • Like
Reactions: Samuel Holland
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 56
    Development has stopped - see my last post HERE.

    Introduction

    Hello everyone, this is my personal kernel for the OnePlus 9 Pro.
    My philosophy on the kernel is pretty simple, intended to replace the stock kernel, but with a lot of under-the-hood tweaks.

    Hopefully you will all enjoy!

    Important thread information!

    I refuse to acknowledge/respond to bug reports that do not include clear steps to reproduce, a logcat, and a console ramoops (if random rebooting) or a dmesg (any other issues). Follow this guide to do this.
    Keep things civil, no flaming in the forums!

    Features

    • Up to date with OxygenOS 11 source
    • Compiled with Google's Clang toolchain for maximum stability, with all warnings and errors fixed
    • Compiled with Clang's cortex-a55 optimizations
    • Many tweaks under the hood for smoother UX, lower battery drain, etc.
    • Westwood as the default congestion algorithm (BBR is also available)
    • Available to flash with AnyKernel3

    Latest kernel release on GitHub

    LINK

    Source

    Omega GitHub: https://github.com/kristofpetho/kernel_oneplus_sm8350
    Omega originally sourced from: OnePlusOSS

    Thanks where it's due

    @pyry666 for all his help getting me logs after logs after logs. Without him this wouldn't have been possible!
    @Burt Squirtz and @crashazz3 and @TheKnux for helping to test
    Kerneltoast for his extreme patience and guidance
    osm0sis (for AnyKernel3)
    @eng.stk for finding a way to have proper hardware detection working
    27
    New kernel release!

    Changelog:
    - Pulled in patch from Google to make cpufreq stat collection less CPU-hungry (smoothness)
    - Pulled in 3 Clang/LLVM stability fixes from upstream Linux
    - Pulled in a patch for better power consumption when vibrations are enabled (from arter's source)

    While this kernel works on latest 11.2.9.9, please note that OnePlus hasn't released sources yet for 11.2.9.9.

    Enjoy!
    25
    New release!

    Changelog:
    - Build with Google's Clang 13.0.1, updated Binutils to 2.37
    - Pulled in 5 code fixes from CAF for display driver
    - Pulled in 2 logic fixes from CAF for display driver
    - Pulled in 3 various CAF stability fixes
    - Fixed a dmesg error message with a commit from upstream Linux
    - Removed all android_fs tracing from the ext4 and f2fs filesystem drivers
    24
    Hi All,

    With a heavy heart I am stopping with development for the 9 Pro.

    My reasons:
    - no kernel source update since August 2021
    - Oppo has been known to be terrible with kernel source updates, and/or posting incomplete sources
    - A12 development will be difficult if the kernel sources are non-existent or lacking

    Wish all of you the best, and thank you so much for the wonderful community!

    Kristof
    23
    New kernel release!

    The test team has been crazy busy, flashing sometimes 5 builds a day to pressure test, and come up with this new kernel.
    After tons of performance tests, we found that Clang (with the included optimizations) outperforms even the best GCC builds, so I'm now moving to using Clang by Google to compile the kernel.

    Changelog:
    - Fixed major network error where userspace was trying to modify network settings but the kernel wasn't allowing it (this issue is also present on stock kernel)
    - Pulled in a fix from CAF to improve/lower battery drain
    - Updated Wireguard module to latest version
    - Built using Google's latest Clang (12.0.6)
    - Enabled all Clang internal optimizations (reverted a crazy CAF patch disabling them), and fixed all subsequent code errors
    - Fixed an IRQ saving issue found via lockdep (upstream)

    Enjoy!