FORUMS
Remove All Ads from XDA

[WALLEYE] [8.1.0/P] [4.4.138] [CLANG 7.0] Flash Kernel 2.45

13,103 posts
Thanks Meter: 45,772
 
By nathanchance, Recognized Developer / Recognized Contributor on 8th November 2017, 10:35 AM
Post Reply Email Thread

Introduction

NOTE: I do not own this device (I have the Pixel 2 XL); however, the kernel is unified so everything should be working fine.

Hello everyone, this is my personal kernel for the Pixel 2. While I am not a super star kernel developer, I do know my way around it. My philosophy on kernels is pretty simple:
  • Follow stable Linux always. Updates will be delivered within 24 hours of their release to kernel.org.
  • Stable kernel rules work best (only add small things when possible).
  • Security and stability are paramount. Vulnerabilities are patched as soon as they are disclosed.
  • Features will be added only as needed (I have a list of things in the FAQ I will NOT add, even if requested).
Hopefully you enjoy


Important thread information!
  1. 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.
  2. Keep things civil, I do NOT tolerate flaming of any kind.
  3. OT is allowed.

Features
Here are the major features of the kernel (feel free to explore Github)
  • Up to date with the June security update (android-8.1.0_r0.65) and P Preview 3 (android-p-preview-3_r0.2) [see device specific notes below]
  • Up to date with the latest stable Linux version (4.4.138)
  • Patches from Code Aurora Forum targeting GPU, touchscreen/video, storage, and sound
  • Kernel hardening from CopperheadOS
  • Mainline Linux patches for CFQ and media memory allocation
  • Latest energy aware scheduling patches from kernel/common's android-4.14 branch
  • Several subsystems converted to use power efficient workqueues
  • Westwood as the default congestion algorithm
  • Wake up improvements and other optimization from Sultanxda
  • The following user facing features:
    • KCAL color control
    • Minimum/maximum backlight control
    • Wake gestures (thanks to @flar2)
    • Wakelock control
  • Latest WireGuard snapshot (0.0.20180613)
  • Built with a self compiled Clang 7.0 toolchain with a local initialization sanitizer (build script here, previously built with the latest Google Clang 6.0 toolchain here)
  • Hides bootloader unlock from SafetyNet (can still fail through other means)
  • Available to flash with AnyKernel2 (thanks to @osm0sis)


Downloads

Primary: https://nathanchance.me/downloads/kernels/wahoo
Mirror: https://github.com/nathanchance/fk-zips

Folder descriptions:
  1. alpha: Very likely broken or contains highly experimental patches; should only be run if you want to be a part of cutting edge development
  2. beta: Normal testing build; bootable and has no immediate issue.
  3. rc: Same as a beta but has had no issues for at least three days. I recommend running these when they are out as they will be pushed to the stable folder after a few days.
  4. stable: Same as rc but has had no issues for at least three days. If you are unsure which one to run, just use this one.
  5. archive: Old stable kernels

All issues with any build other than a stable build MUST be reported via Telegram. I keep my development out in the open but I don't let it cross over onto XDA. I do recommend participating as I am quicker to fix issues if I have multiple people testing. I request that you do not mirror my kernels. If the primary site is down, please use the mirror. Navigate to the file you want and click the download button. If you are mobile, tell GitHub to use the desktop version. I don't need posts telling me the primary site is down, it's my build server so I'll know if it is down. Thanks!


Installation

Initial install:
  • Install or temporarily boot into TWRP (follow their instructions)
  • Flash the zip.
  • (OPTIONAL) Flash Magisk for root
  • ???
  • Reboot and profit!

Upgrading from one release to another:
  • Boot into TWRP
  • Flash the zip.
  • ???
  • Reboot and profit!



Changelog

Latest release post!

Commits


Frequently asked questions
1.1 Q: I am having an issue, can you help me?
1.1 A: I am not an amazing kernel developer but I will certainly try my best. First, start by reading the release posts, as I may make note of a particular issue. Also search the thread to see if I have discussed it before. If you see nothing, please provide me with a dmesg/last_kmsg and logcat, your ROM/kernel version, and a detailed description of the issue, following this guide. If I can't reproduce reliably, I'm not going to fix the issue.

1.2 Q: Can you add xyz feature?
1.2 A: If you link me the commits or tell me what kernel you had the feature in, I can take a look at them. I will not go digging super hard for commits and I will ignore requests that don't include this information. I won't promise that I will merge every request but I will always take it into consideration. I will NOT add the following:
  • Overclocking or underclocking of CPU or GPU
  • Undervolting
  • Any governors other than schedutil
  • Any schedulers other than cfq and maple
  • Anything that compromises performance

1.3 Q: How do I control the kernel?
1.3 A: To be honest, there isn't much to tune here. However, I'd recommend using @flar2's EX Kernel Manager as it is the best designed kernel manager around.

1.4 Q: OMFG MY BATTERY SUXXXX PLS FIX!!!
1.4 A: The kernel doesn't drain any battery, use an app like BetterBatteryStats to figure out what app is screwing with your phone.


Thanks to:
The various other developers for their patches (specifically @zx2c4 for WireGuard)
@osm0sis for AnyKernel2
@phantom146 for the thread banner
All of you guys for viewing the thread


A note about donations

Quite a few people have asked to donate to me in the past and I have turned them down. I am not in this for the money, this is my hobby, something I truly enjoy. If you truly want to donate to something (it is not expected in the slightest), I recommend an entity like the Open Source Initiative, the Free Software Foundation, XDA, or any one of the people I have thanked in the OP. Additionally, you are free to copy any and all of my work; the only thing I request is that you not ask for donations as well (though I can't really enforce this lol). Thank you.


Kernel source links

8.0.0: https://github.com/nathanchance/wahoo/tree/oreo-dr1
8.1.0 (up to 2.28): https://github.com/nathanchance/wahoo/tree/oreo-mr1
8.1.0 (2.29+): https://github.com/nathanchance/wahoo/tree/oreo-m2



DISCLAIMER: I openly welcome off topic in my threads. Mods, please do not clean off topic discussion and users, do not complain about off topic discussion here. I may direct you to another thread if it is so suited but I won't have the discussion cleaned. Thank you.
The Following 49 Users Say Thank You to nathanchance For This Useful Post: [ View ]
 
 
8th November 2017, 10:35 AM |#2  
nathanchance's Avatar
OP Recognized Developer / Recognized Contributor
Flag Mesa, AZ
Thanks Meter: 45,772
 
More
Device specific nuances
  • Due to the way Google has structured security on the Pixel 2 and Pixel 2 XL, TWRP and the boot images may fail to boot when the security updates are out of sync (ROM is on one, kernel/TWRP is on another). I cannot control this. You are responsible for knowing when to flash a new update. If you are boot looping, flash back to the previous boot image.
  • Some of you may be wondering what this dtbo image is. It is short for device tree blob overlay, which allows Google to unify the kernel for the Pixel 2 and Pixel 2 XL. You are required to flash this along with the boot image to maintain full compatibility. This is automatically done with the zip so you do not need to worry about anything.
The Following 14 Users Say Thank You to nathanchance For This Useful Post: [ View ]
8th November 2017, 10:36 AM |#3  
nathanchance's Avatar
OP Recognized Developer / Recognized Contributor
Flag Mesa, AZ
Thanks Meter: 45,772
 
More
Reserved
The Following 5 Users Say Thank You to nathanchance For This Useful Post: [ View ]
8th November 2017, 11:09 AM |#4  
Natakranta's Avatar
Senior Member
Flag Dublin
Thanks Meter: 6,098
 
More
I'm so subscribed
The Following User Says Thank You to Natakranta For This Useful Post: [ View ] Gift Natakranta Ad-Free
8th November 2017, 05:40 PM |#5  
Junior Member
Thanks Meter: 13
 
More
I'll be flashing this the second I get home. Used the kernel on my 6P and it was rock solid. Looking forward to getting it on my device!
8th November 2017, 08:40 PM |#6  
xda890's Avatar
Senior Member
Thanks Meter: 75
 
More
I see you mention that the kernel is based on 4.4.97 but I am running the latest build (025) and kernel version says 4.4.56, but I guess it is still ok to install?
Also, have anyone tried to patch the boot image with Magik?
8th November 2017, 09:10 PM |#7  
nathanchance's Avatar
OP Recognized Developer / Recognized Contributor
Flag Mesa, AZ
Thanks Meter: 45,772
 
More
Quote:
Originally Posted by xda890

I see you mention that the kernel is based on 4.4.97 but I am running the latest build (025) and kernel version says 4.4.56, but I guess it is still ok to install?
Also, have anyone tried to patch the boot image with Magik?

Were you flashing the boot image with fastboot? It should be 4.4.97.

Sent from my Pixel 2 XL using XDA Labs
The Following User Says Thank You to nathanchance For This Useful Post: [ View ]
8th November 2017, 10:08 PM |#8  
xda890's Avatar
Senior Member
Thanks Meter: 75
 
More
Quote:
Originally Posted by nathanchance

Were you flashing the boot image with fastboot? It should be 4.4.97.

Sent from my Pixel 2 XL using XDA Labs

I actually downloaded the full ROM from Google and used the boot image from the zip file and tried to patch the boot image using Magisk but that did not work. So I am checking other methods..
But strange that the version does not match...

---------- Post added at 11:08 PM ---------- Previous post was at 10:20 PM ----------

Found a newer version of Magisk Manager and patched your boot image and now I have root and running your kernel...
The Following User Says Thank You to xda890 For This Useful Post: [ View ] Gift xda890 Ad-Free
8th November 2017, 10:48 PM |#9  
Senior Member
Flag Oakland
Thanks Meter: 150
 
More
Quote:
Originally Posted by xda890

I actually downloaded the full ROM from Google and used the boot image from the zip file and tried to patch the boot image using Magisk but that did not work. So I am checking other methods..
But strange that the version does not match...

---------- Post added at 11:08 PM ---------- Previous post was at 10:20 PM ----------

Found a newer version of Magisk Manager and patched your boot image and now I have root and running your kernel...

So you have to have the boot.img on your phone for magisk to patch it, then do you need to transfer that boot.img to your computer where you can use fastboot to flash it while in the bootloader?
8th November 2017, 10:56 PM |#10  
xda890's Avatar
Senior Member
Thanks Meter: 75
 
More
Quote:
Originally Posted by 530farm

So you have to have the boot.img on your phone for magisk to patch it, then do you need to transfer that boot.img to your computer where you can use fastboot to flash it while in the bootloader?

Yes, that's correct..
8th November 2017, 11:20 PM |#11  
Natakranta's Avatar
Senior Member
Flag Dublin
Thanks Meter: 6,098
 
More
Patched with Magisk 14.4 from Pixel 2 XL thread and fastboot flashed on November 8.0 stock
All good, SafetyNet passed. I'll be testing for stability and report back.
Thanks Nathan!
Attached Thumbnails
Click image for larger version

Name:	Screenshot_20171108-230915.png
Views:	4276
Size:	118.1 KB
ID:	4327171   Click image for larger version

Name:	Screenshot_20171108-230935.png
Views:	4270
Size:	139.0 KB
ID:	4327172  
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes