yashsingh1/xdaforums huggingface dataset:
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Well, I'm home -> testing out / compiling with a new config that *should* shrink down the kernel noticeably. Hopefully, it takes care of / adds the extra space needed for TWRP in the boot.img. I'll post a link, when I've finished compiling and running it -> I suppose I will install TWRP - so that I can verify things on my end.

boot.img - I don't care about the bootloader. lol ;) ... no worries though, I think I just need to finish what I'm doing (above) and test TWRP installed.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] Warrimonk:
Hey guys. Update here. Can confirm my thoughts from earlier.

TWRP being installed breaks the kernel installation. Using boot image temporary TWRP over stock recovery allows kernel to be installed.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
haha. we posted at the same time- I'll be testing a build with TWRP installed in a bit.

(above post)
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
please test the latest zip (I've replaced exNoShadez_eas.zip) on my github.

I have tested and verified on my end that it works with TWRP installed. Seems okay now, but would like you to also verify.

I've optimized for size, reduced debugging in the kernel (significantly, by adding/using a new defconfig that I crafted) and this build is also updated to 3.18.79 + today's changes in Code Aurora for msm-3.18...

thanks!
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
please re-download exNoShadez_eas.zip and test with TWRP installed. thanks!
[Google Pixel ROMs, Kernels, Recoveries, & Other De] Keasby:
First fully booted, then phone apk FC and I get a bootloop.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] Warrimonk:
I am getting the same size error as before. The zip is 2MB smaller but it is still too big apparently. Can't test anymore until tomorrow.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Ok. I can't reproduce that, so for now - I've replaced my zip with the original zip (I would rather it fail on twrp that have someone have problems like FCs or crashes or anything like that - So thanks for pointing that out).

I'm going to need to investigate this further before I can publish a TWRP compatible zip. The odd thing is that it's working for me... I installed the zip -> then TWRP -> then magisk and rebooted.... booted up fine, as usual -> I rebooted into TWRP, it decrypted and I was able to flash the kernl again....

So, let me look into this further - I think I may have some ideas / where to look. People who need TWRP installed are just out of luck until I figure it out. ***That's basically, a side effect of really only setting things up for how I personally use them, but -> This is good because now I can look at fixing it, so TWRP works and both of you have been very helpful! Thanks!

I'll post a link to a TWRP build when I am more confident that I've solved the issue and if you don't mind - test it then?
[Google Pixel ROMs, Kernels, Recoveries, & Other De] siheals:
I get no errors at all but I always use the twrp boot.img to flash at the start them flash fire for updates.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Ya, it's only a problem if you are trying to have twrp installed on the system. It's not, if you are flashing using twrp fastboot boot image (because it's loaded in memory)....

After further investigation and perspective - I've decided that supporting TWRP installed is just a bad idea, given my goals with my kernel... I've updated the OP to reflect my reasons - it all comes down to a trade off between reducing kernel size VS. hurting performance && masking/supressing valid warning from the compiler/toolchain....

anyhoo, glad it's working for you! let me know how things work out, as feedback is good...!

side note: I've got a 3.18.79 build and I'm working on re-enabling wake gestures - after, I figure out how to solve the current blocker / compiler issue blocking me from re-enabling that feature.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] Warrimonk:
Is there a method of removing TWRP that does not involve going back to a factory image? It just takes a lot of time lol. Especially when I am already on the firmware I want.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Yes, but you still need the stock boot.img (for your current firmware).... then it's -> easy as pie.

fastboot flash boot_a boot.img

fastboot flash boot_b boot.img

Ref: https://xdaforums.com/pixel/help/remove-twrp-restore-stock-recovery-t3518377
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
[MENTION=1962866]Warrimonk[/MENTION] (and everyone)

To clear things up, I've added my reasons for not supporting installing TWRP or custom recoveries on the OP.

I've also added instructions on removing TWRP (like above)
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
also,

I just updated the zip;

- linux-3.18.79 incremental patch

- Code Aurora fixes

- Wake Gestures are now enabled.

you probably don't need to upgrade unless you're after wake gestures.... The rest of the changes won't affect your life! ;)
[Google Pixel ROMs, Kernels, Recoveries, & Other De] siheals:
Is the any chance of having maple scheduler as in tests it has great battery usage and is very good overall.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
maybe...

do you want to point me to some of these tests that you speak of?

I can't imagine that maple has a huge effect on battery life, in and of itself though.... myself, I would be more curious about latency, throughput and that kind of thing...

anyhoo, I can take a look, but I've got a few higher priorities that I'm working on... that said, I'll add it and have a look sooner than later later to test.... but know, that I'm a bit reluctant to add a bunch of schedulers....

also a reason I already disabled, broke and/or ripped out some already...
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
So not going to update the stable build quite yet, but I've been getting it prepped;

=> lts 3.18.85

=> WireGuard (VPN) Support

It's merged and will be supported. I'm still having a bit of trouble with the one userspace piece/script - but I've manually verified that WireGuard works, so getting the last bit working shouldn't be too hard. I just gotta hop on IRC and ask a few questions... I also chatted with the WireGuard Developer today; I pointed him to code to get the WireGaurd app to not crash on boot; on Oreo (like Kernel Aduitor and other apps do/did), I may give a hand with that and also give a hand in packaging the userspace parts into a proper flashable android zip... ~ I'm going to look at that tomorrow.

=> I've pulled in some crypto patches

These have been floating around for a long time, not a big deal - but I'm also thinking about improving the optimizations flags used by them.

=> I've updated all of the VDSO && some timekeeping code to match asop/kernel_common/android-3.18

This kind of is a big deal, as it's setting me up to use some code that I've been sitting on, but haven't been able to use ~ Tonight, I went through a year+ worth of commits in AOSP and found all of the needed bits....

=> Audio driver patches

A few will be merged into stable, while others I'm still working on. There is one set of changes in particular; that is a game changer - but hard to get up and working... however, the chunks I have working are useful, for sure....
[Google Pixel ROMs, Kernels, Recoveries, & Other De] uodii:
Has anybody been able to successfully add a credit card to android pay by chance? I'm running stock 8.0 using this kernel + supersu and am getting a google play services crash anytime I reach the card verification stage. After I reopen the app and I click on the card, I get another Google Play Services crash again and can never finish the verification process. I'm just not sure if it kernel related or supersu related, so I'm curious if anybody else has come across this as well?
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
I use android pay... it's not the kernel.

if u mean verification process, as in where u are adding registering a card (?).... try removing your card and re adding it - I've had that happe, after a factory reset / re installing android pay...

either way though, it's definitely not kernel related. should work just fine... that said, I don't use SuperSU though.

EDIT: I should note; I've never had the crashes you are getting, only a card not registering properly...
[Google Pixel ROMs, Kernels, Recoveries, & Other De] uodii:
Thanks for the reply. That is exactly what I mean, at the verifying with your bank stage. I've tried multiple kernels with and without root and it keeps happening. And this is a fresh flash as well, so I'm completely clueless.

Are you rooted? If so, magisk? I've tried it, but after a few minutes of rebooting the phone I can no longer pass safety net checks. It works fine for the first few minutes though. Haven't looked into it, but SuperSU just seems to work for me.

Thanks for your help
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
interesting. I'm not really sure why that might be. I just know that it shouldn't be related to my kernel. I use android pay frequently...

yeah. I use magisk 14.5 with my kernel. the only time I've seen magisk fail safetynet or error is if it isn't installed correctly - it happened to me once, where IIRC; I had re installed magisk manager.... but after flashing the magisk uninstaller zip && re installing magisk zip - everything was fine again...

you might need to remove SuperSU, if switching to magisk. maybe that's why it fails safetynet? no idea.... I just prefer magisk; opensource, no /system mods, plugins, flexible... I'm really happy to not be using SuperSU - it's broken method of installation, if it detects a previously patched boot.IMG, etc...

anyhoo... I would try and see if u can get Android Pay working on stock / no root or anything... maybe even get in touch with Google to troubleshoot the issue... then try it with custom kernel, rooting, etc.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Just a note on WireGuard progress;

So it turns out that (for now) We need the bash interpreter to run the userspace utility for WireGuard. This presents a minor problem, as Our Stock Rom does not come with Bash ~ That said, I do have a working bash binary on my device ~ and I think the plan is to have a statically compiled version of bash included with wg-tools (the userspace parts)... This is something that I've been discussing with the WireGuard Dev...

I'm at the last steps of getting a working wg tunnel on my Pixel, but I still need to get the WireGuard app setup + get a flashable zip for wg-tools sorted out...

but progress is being made here.

I've also helped another dev in getting WG compiling in his ROM; https://xdaforums.com/oneplus-3t/development/rom-lineageos-14-1-t3547024/post74713326#post74713326 (scroll up to see)

...and reported the issue to the WireGuard dev. WireGuard is very new to the android platform, so getting all of the kinks worked out and lowering the bar to entry - is a work in progress...
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
so... I have WireGuard working, as I write; I am using my AzireVPN tunnel from my Pixel....

it definitely was somewhat tricky to setup; configuration aside, I also had to open a needed port / portforwarding on my home network.... I also had to turn on logging in AFwall (on my pixel), to findout what I needed to whitelist to get connectivity working...

there is still a couple of issues. WG app crashes on boot, we need a flashable zip for WG-tools and there is currently a bug (I think) with disabling the tunnel (at least on my device it isn't working correctly)...

but yeah... I should be able to support this cool new feature... I'll make as easy as possible to get going; but I won't be setting up your VPN or anything like that...
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
another WG update:

the wireguard app no longer crashes on boot on Oreo. I chatted with someone who was looking into it, he used the commit from Kernel aduitor as a ref (that I had pointed out), he hadn't been able to test the code; but I rebuilt the app, tested/verified that it works; no crash on boot ?

the tunnel still can't be disabled; not sure why. still trying to sort that out.

after that, it's just a matter of packaging WG-tools & bash.

in the process of testing WG, I also ran into some instability (a random reboot and my device almost freezing; lock contention)... however, it turns out that I already had some code commuted to my old kernel / other branches that I suspected would fix the instability; 24hrs later, not a single hiccup - so looks like 'problem solved'... so we'll see if the timing works out on getting WG ready for the December firmware / release...

it'll be in the kernel enabled, just not sure if the other issues will be sorted by then or not...
[Google Pixel ROMs, Kernels, Recoveries, & Other De] siheals:
Does it have much effect on battery drain?
[Google Pixel ROMs, Kernels, Recoveries, & Other De] uodii:
Just to follow up on the matter. I believe there is something in the userdata.img that is required for this to work (or something needs to be cleared from the internal data when you decide to not wipe internal when flashing). Last week when I flashed I omitted the -w from the bat file. Upon initial boot I received a Google Services Crashed dialog, but everything else seemingly worked...apparently except for anything in any app that utilized the fingerprint scanner. This morning I 100% clean flashed everything and did not receive that dialog box on first boot, everything works perfectly, and magisk is working 100% as expected too.

Once again, thanks for your help and confirmations last week. Keep up the good work on your kernel and hopefully it carries into 8.1 soon.

BTW, any idea if this kernel will work on DP2? Just curious
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
A bit, sure. but probably far less than a normal VPN, i suspect....

For me, it's been marginal. i do notice the difference, but it's not enough to where I would care or any drain affecting my day to day use ~ my VPN is on 100% of the time, as well.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Yup. sometimes a clean wipe is the way to go.

No, I don't support 8.1 and I won't support it until it's a stable release / not a preview, there is source code available and I am actually running it on my device....
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
so... most likely 8.1 will be released in the next day or two..

I'm going to push another stable 8.0 release, when the December firmware images are available.... and then I'm going to start looking at 8.1 ~ no asking for ETA on 8.1 support, OK?

it might take me a day or three to sort out
[Google Pixel ROMs, Kernels, Recoveries, & Other De] siheals:
Three is that all not like the months for custom ROMs:)
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Lol. well, in fairness - they have a lot more to deal with... But yeah; that's just one of the reasons that I prefer the Stock Rom. * stay up to date, all of the optimizations, properly signed and secured ROM, etc, etc...

but yeah, I don't expect that it will take too long to get my kernel working on 8.1 ~ once I have whatever is needed added in + 8.1 running on my device to test ~ Just not sure how I will handle 8.0 releases, after that - probably, I will have to freeze some changes and get someone else to test the kernels... idk yet...

Ideally, most people will switch to 8.1 after an update or two; so I could just drop 8.0, at that point. We'll see.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] Nick80835:
8.1 is actually crazy easy to work with, I have a custom kernel on it right now for just testing and learning purposes.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] siheals:
The source had been out for hours, come on slacker what's taking so long. :D
[Google Pixel ROMs, Kernels, Recoveries, & Other De] Nick80835:
:cool: the Oreo MR1 Preview 1 source actually works fine with Preview 2.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
what makes it so crazy easy? It's just like any other version of android.

Lol. No, there is No december firmware images for 8.0 yet ~ and while all of the blogs, reddit, etc have said that 8.1 will be released today - There is no firmware downloads for it ~ I said that I would look at it after the December Firmware for 8.0 it's released ~ that hasn't happened... ref: https://developers.google.com/android/images#sailfish

Also, not sure why you are saying "the source code has been released for hours - the Oreo MR1 kernel sources haven't been updated since September 20th. ~ it's based on 3.18.70.... (and I'm looking at AOSP's upsteam, AOSP hasn't been updated since sept 7th)

Ya, I don't care about Developer Previews... I'm not interested in running them.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
8.0 and 8.1 images just arrived....

I'll be testing 8.0 first... may not get to 8.1 for a couple of days.

EDIT: read the page wrong. just 8.1 - i thought they might do a 8.0 dec image. not so, but my kernel is patched for the CVEs that they mention anyway.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] siheals:
Not going to update until your kernel is ready
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
cool.

I've got the 8.1 release firmware - just grabbing the sources, then I have to evaluate all of the changes needed.... In some ways there is more work to do - in others, less....for example, I had already been bringing my branch closer to AOSP ~ So there are a bunch of patches that I can drop, since the updated Marlin kernel has many of the commits... they are also now using the newer binder driver, which is nice too....

But the EAS stuff and a few other bits could be a hassle to integrate. (I could be wrong though, but won't know until I dive into it and see what changes they've made, stuff I may need to revert or adjust some of my commits, etc, etc).... After I get that stuff mostly sorted => I should just be able to cherry-pick most of my existing patchwork - do a few cleanups on the new branch, etc - and then be good to go...

So, what I am going to do is not update the Stable build (it's fine) and just focus on 8.1.... I'll get the basics up and running first, locally. Then start merging in the rest, testing as I go - but I won't publish any build until Im' fairly certain it is stable. (like I said, could be a couple of days).
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
So yeah,

There are for sure some hassles / manual intervention required migrating over / rebasing my kernel on the new sources..... Honestly, I'm not feeling very motivated to do it today; it's work, time, energy and effort - So this might wait a few days before I really try to dive into it....

I have a few other projects that I'm working on, as well / paid work - so I'll be prioritizing them before spending my time updating my kernel, since they changes are manual - it's not a quick job ~ even if still somewhat trivial to do. Sorry, if that's a bit of an inconvenience, I will get this updated - but like I said it might be a few days...
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Working, seems stable, so far...I'll test battery, stability, etc tomorrow... I still have a few things to merge in & currently having an issue with AnyKernel2 - but I've made an inquiry about it to the dev && I'm not in a rush to push this out anyway - unfinished ;)
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
I chatted with the AnyKernel2 dev - he's going to take a look at the boot.img for December and see why it's following the symlinks and causing the zip to be so big... He's also asked if I would be a tester for AIK-Mobile v3 ~ So I'm going to give a hand wit that ;)

Just as an update:

*So far so good! No drain on 8.1 over night. Things seem stable, etc. I'm merged in the Binder_rt code - which 8.1 user-space seems better suited for; Logcat spams a lot less, there is now an RT Stune tunable in Android && due to 8.1's stock kernel also upgrading their Binder implementation ~ it appears work has been done to improve binder/user-space in conjunction... I'm already noticing some nice improvements.

So before pushing a release; I just need Anykernel working && to merge the last bit of code in... and give it a good test today.. If anykernel is sorted out later - then I may push an update tonight. We'll see.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
UPDATE: Initial Android 8.1 exNoShadez-eas Kernel;

https://github.com/nine7nine/Apps/raw/master/Sailfish_EXNS_eas_76888e1.zip

Changes:

- 3.18.86 LTS

- Re-based from scratch against the 8.1 kernel sources. (Literally hundreds of commits merged over a 24hr period)

- All previous Features should be included, if I missed something; let me know.

- Updated drivers, lots of bug fixes

- Binder_rt has been merged, replacing Marlin's "new" binder driver

- Some new changes to audio driver code (mostly to do with rt scheduling).

- The kernel supports WireGuard but the userspace bits aren't ready for general consumption. soon-ish.

- I fixed Wake Gestures to stop enabling Sleep2Sweep by default - it's annoying and stupid that it did that in the first place.

- Integrating a number of changes from AOSP, timekeeping, VDSO code - not user facing.

- BFQ IO scheduler is available, Maple is NOT (I'll add Maple back, it's just not critical to lighting up 8.1 support).

I haven't updated the main link yet; as I would like a few people to try it out and report back. This is all fresh and new - so regressions could be possible... That said; This kernel flies with Android 8.1's user-space, with seems better suited for Binder_rt and my kernel, in general...

NOTES:

1. TWRP is acting stupid on 8.1 - you will probably need to disable you password / lock screen to decrypt the device with twrp-3.2.0 or you could try twrp-3.1.1.0 ...

2. SuperSU may have issues with TWRP on 8.1 (as I've seen in the TWRP thread). Since I don't use SuperSU and generally don't like it - I have no advice for you. lol ...except swtich to Magisk - it's better. ;)

3. On boot / loading up android you will get a message to 'contact your manufacturer, bla bla", if using Magisk. No worries; it'll all be ok. ref; https://xdaforums.com/showpost.php?p=74755385&postcount=1043
[Google Pixel ROMs, Kernels, Recoveries, & Other De] siheals:
Drat an update while I am at work...
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Ah well. It's just the first build, and I'm sure You can get to it later ;)
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
Special note: (the 8.1 build)

I've just noticed that the stupid issue of something changing the default Stune value has crept back in - this will likely affect battery life - but rest-assured I will figure out how to stop it from doing that. => 1st build for 8.1 ~ and lots of things are different in the /vendor partition and how android sets itself up.... So bare with it/me... It will be fixed, sooner than later.

For now, I'm looking for stability, everything working ok - while I fix that issue and tweak a few things for when I update the OP download.

EDIT: I ended up updating the zips, to not disable perfd on boot or enable input boosting...

if you have EXKM you can do this manually, the zips are no different, otherwise - I just thought for non exkm users; they shouldn't have to jump thru any hoops to have a more sensible default...
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
[MENTION=1007992]everyone[/MENTION] - feedback would be good. the more the better -as I would like to update the OP download, once I hear back from people.
[Google Pixel ROMs, Kernels, Recoveries, & Other De] :
I've had some feedback and been running 8.1 kernel for 24 hours, I've also tweaked my builds slightly; therefore I've updated the thread.

EXNS_EAS 8.1 flashable zips on the OP, I've kept the 8.0 builds up for now too.

I've also updated links to December stock boot images and the TWRP link has been updated too.... I've add notes on 8.1 where appropriate.