yashsingh1/xdaforums huggingface dataset:
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
haha. pixel community isn't too bad. there's just not a lot of custom oreo ROMs.... myself, I wouldn't want to run any of those custom roms anyway. they usually are built without odexing or proper signiture key signing = less secure and way less optimized... Stock ROM is great, just needs root and a few apps to modify / customize it a bit.

for me, the kernel has always been the issue. lol... therefore, roll my own. lol....

ya, for sure give it a try... I honestly would say binder_rt is the best build... the 'stable build' is a bit of a misnomer - all of the builds are stable, just the binder ones are running more experimental code... binder_rt blows the socks off any other Marlin kernel for certain kinds of workloads... I'm aiming fir it to become my default build...
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
yup. I have to wait until kernel sources are released. you got it!. but when they are / 8.1 is released; I will be upgrading to 8.1, so no worries - there will be an 8.1 version...

I've heard heard that battery life is pretty good on 8.1, there's a thread in the pixel forum about it... but by what they were saying, it didn't seem that much better than what I see from my kernel.....

I'm more interested to see what performance improvements are in 8.1 kernel sources... I've found stock kernel to be a bit crappy for some stuff...

well, if at some point you are bored and want to test my kernel on 8.1, go for it. ya never know: maybe it will work. the reason I say that?

IIRC - it was tested with my old kernel / sources build... could've been a bug, not present in the new one.... or something else. IdK.. being as I'm on 8.0 I can't even look into why that might be or have been...

just make sure if u do ever try it, keep the stock boot.IMG for 8.1 around, in case it doesn't work..... and report back, if it does work. lol
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] JS.zip:
Gotta say super smooth. Thanks for sharing. Maybe it's just a glitch in ex kernel manager but zram "stopping..." Or nothing to worry about.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
Ah yes, I should've mentioned that ~ zram is working fine - but EXKM is being denied permission to read those files on the file system - I think it's due to a change in cgroups code (from merging in EASv1.4), but I haven't gotten to the bottom of it yet....

No worries though ~ I HAVE completely verified that zram is working, mounted swapon and behaving as it should... Honestly, the defaults for zram are fine ~ if they ever weren't; you would have bigger problems on your hands, that changing swapping wouldn't help. lol

Which build are you using? (just curious)
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] JS.zip:
Thanks that's what I thought. The bad boy "Binder RT" lol
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
bad boy eh? haha. ;)

Ya, no worries - I check that sort of stuff, when it crops in... fixing that particular issue just hasn't been a huge priority, over other stuff that I'm working on. (and because I think it's pointless that EXKM even displays it to begin with - it just gives users the false impression that they are tweaking something, that in 99.99999% of cases - is absolutely pointless to touch).

Anyhoo, cool - let me know how things are working out with the binder_rt build, as you get some more use in ~ I really want it to become my main focus / implementation. (I personally won't be going back to using any other build day to day, anyway.)
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] AlkaliV2:
I just wanted to point out that I grabbed your stock kernel from the OP and had planned to use that to flash my stock image. However, I happened to have the latest boot.img release decompressed on my drive so I compared it to the one I had on hand.

MD5 for your Stock Image: 7A2D92981FDE96E5D60D806019ACFA0C

MD5 for Google's Stock Image: BF9EDA2888C8C6A1FCD0A7DB6E37F739 (Latest November build)

Now I don't want to sound like the suspicious type, because in reality the stock kernel you provided is just to get TWRP off the device before flashing your kernel, but I'm forced to ask why your stock image is not identical with the main stock image? Unless your stock kernel isn't from the latest release but instead from a prior month or something of that nature (It would take me quite awhile to download the other month's releases just to check so I was hoping to ask you instead)
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
Easy explanation - I'm on Sailfish, you aren't; so the md5 wouldn't match...

I can do one of two things; you can post a upload/link to your boot.img and I will replace the link for Marlin's nov boot.img (adding it to my github) OR I will remove the link from the post and Marlin users will have to fend for themselves. (have to download 1.8GB firmware themselves for a boot.img... Obviously i'm NOT downloading your guys Nov Firmware images).

nothing suspicious at all here, dude.

EDIT: I've removed the link to the sailfish Nov boot.img, as a sign of good faith; I can replace it with the Marlin Nov boot.img - but that will require you to post a download/link to me, so I can add it in. thx
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] AlkaliV2:
No problem, I download every Marlin release so I'll just update my AFH folder to include the monthly kernel release and users can download it from there. You can either link to my folder or download from it to add to your repository; either one is fine with me Thanks, and I do appreciate what you're doing but I have a 'verify first' stance since these devices are a big part of people's lives. I'm going to give your kernel a spin now, I appreciate you getting back to me so quickly. If only AFH was this fast, I just spent 25 minutes trying to get it to create an empty folder...

Link to Marlin Stock Images: https://www.androidfilehost.com/?w=files&flid=231142

Edit: I attempted to flash the "exNoShadez_eas-3.18.83_Binder_b0b66e0.zip" from the fastboot installed version of TWRP after flashing the stock boot to slot_a and slot_b, but it is failing with an error that states, "New image larger than boot partition. Aborting..." Then updater process Error 1. Any idea what would cause that?
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
Hey, I added your nov boot.img to the OP. put it on github to save a few clicks for people.

The error you are seeing would suggest that TWRP is installed to the system. That is the only time anyone has ever bumped into that message. So, I'm not sure what's going on with your end but it would seem you have twrp actually installed...?!

the TWRP that you are supposed to use, is this one;

https://dl.twrp.me/marlin/twrp-3.1.1-1-fastboot-marlin.img

that loads and runs from RAM. twrp can't be "installed from fastboot" ~ it installs to the boot partition; leaving not enough room for the kernel.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] AlkaliV2:
Yeah, that actually explains it. I was using a kernel with TWRP installed last go round and now it seems just flashing the factory boot.img is not getting rid of the installed TWRP. I'll figure out how to get TWRP removed for good this time; thank you for letting me know where to look.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
Yup. TWRP can't be installed along side. Running it from RAM has to be used. ie: I don't support TWRP installations. lol

Flashing the factory boot.img DOES get rid of TWRP for good ~ you just have to make sure to use the TWRP fastboot boot.img for flashing my kernel after (since fastboot/twrp doesn't install to the boot partition)...

I've added a link to the OP to Marlin's twrp fastboot boot.img....

I also updated all of the download links and double-checked to make sure that all of the Marlin zips are packed properly with AnyKernel2 + relabelling every file on my github (by re-packing all of them all... This is mostly just paranoia on my part - but now that I'm supporting 2 devices, best to make sure that nothing gets tangled together.)
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
[MENTION=1007992]everyone[/MENTION]

just a few notes, since you guys are just getting exposure to my kernel, the way I do things; in regards to development, etc.

-> I post test builds (this usually happens when I make big changes.). reports are helpful on these builds.

-> Development happens fast; *I routinely add new features, bug fixes, etc and i'm almost always ahead on LTS updates over the Stock kernel.

examples;

=> lts -3.18.83 build available on the day of release

=> my Binder_rt branch is currently 140+ commits (code changes) ahead of the the other branches.

(changes since in the current downloads/releases)

=> There are a number of bug fixes, a few added features (mostly in-kernel stuff), some optimizations *and* there are massive upgrades to parts of the kernel's subsystems. (100+ commits are related to that)...

(changes since the current downloads/releases)

NOTE: The binder Branch (non-rt) will see the majority of the above changes code, but the Stable branch will only see a subset of these commits + bug fixes.

I probably won't roll out a test build for Binder_rt builds, until I've had the newest code running for a couple of days.... At that point, once things have proven to be stable good ~ i'll roll out a test build for anyone who wants to help out and dogfood test builds....

Then, I will push back changes back into the Binder builds, Stable, etc... I usually try and line up actual releases to LTS and/or => more importantly monthly android security / firmware updates....

**So the gist is; there will be frequent updates. Update as you see fit - anyone who wants to help out - run test builds and report back issues.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] GuestK0037:
So pending a detail or two, I likely will be phasing out my other builds in favor of the Binder_rt build.

- I've had quite a lot of feedback via the Pixel forum, PMs and email (and a couple of friends using it too).

- The Binder_rt build seems to be very stable for everyone.... not too mention just all around better.

- there seem to be no drawbacks and quite a few benefits to that build over the others.

The one thing I'm waiting on is; I've joined the Android Kernel Developers Google Group and am currently waiting to see if I can't get some help with porting a missing Kernel function into Marlin's sources ~ this particular kernel function is what's stopping me from having Binder be sync'd with the AOSP binder implementation.... I'm hoping to resolve this sooner than later, at which point I will be able to merge in those commits (and test them).

In the meantime I'm working on a few backports to the audio driver and a few other bits (taken from Wahoo/Pixel 2 kernel sources). I've also pulled in a few fixes to binder from Wahoo, as well....

So I might post a test build for Binder_rt tomorrow - as it's accumulated a number of changes, bug fixes, etc.... I'm not sure If I will have any resolution to the missing kernel function - but that doesn't affect pushing a test build....
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
Ok, 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 OP / 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.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] aoaleman:
Absolutely, I agree. However I just don't see that much development as compared to for example the One Plus devices. It's all good though. :D
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
Yeah, but I think the Pixel is a better Device, better software (stock or otherwise), etc.... But I do track a couple of OP kernel branches (that's how updating EAS, Dynamic Stune Boost and a few other useful bits came about). The AVB partition scheme on the Pixel has also been a detractor for ROM devs ~ But lucky for me; I prefer stock (just not the kernel), so all good. lol...

idk, I used to get super carried away with building my own rom and doing all sorts of mods - Now I keep it clean. a handful of apps to customize stock and then I put work into the kernel; since that tends to be where I see lots of benefit for apps and legit features (rather than a few extra knobs or switches) can come from.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] DR3W5K1:
Ty

You are correct ADB needs to be no older than Oreo.

[Side note] Believe it or not I'm on a setup from August yet I have never flashed anything other than system,boot and vendor. This is a launch Verizon phone everything has been flashed from the original bootloader.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
You shouldn't do that.... use flash-all.sh without the -w flag (wipe).... You should be flashing the entire firmware, minus wiping your data.... Idk, much about Verizon, but I know on my Pixel - that wouldn't even work - if the boot loader doesn't match - it won't work... regardless, I'd get out of that habit, ya never know; something might go wrong one day.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] DR3W5K1:
Yea I know. I am so used to not flashing the bootloader in my crack flashing days "it was usually locked" due to Verizon phones. The nexus 6 and the galaxy nexus are the only other bootloader unlocked phones I've owned. All of the others were motorola phones with custom roms all with the stock permanent kernel though :(
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
I see. Ya, the only locked phone bootloader / phone I ever owned was an HTC ~ and they allowed you to unlock it via their dev portal / website...

Custom Roms do patch kernels, so they are customized - that's how certain features in roms work The custom roms just tend to be conservative with changes to the kernel ~ or adding stuff that they need mostly, or picking up updates from CAF, LTS, etc....

I'm not conservative (at all). I've deep-dived into modifying this kernel to my liking. I'm pulling in all of the extras && latest greatest features not available on stock, or specific features that may be present in one Marlin kernel, but not others... or possibly not available at all (WireGuard is a good example).... Following that; I'm actually implementing features (myself) or backporting code.... Lots of experiments, not all end well ~ but a few have (Binder_rt, some of the audio hacks, newer eas code, etc)... But hopefully, it all results in a better, more functional device (so far, it has / is).
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
- Maple IO scheduler is added back (next release)

- I can now easily keep up to date with WireGuard - The dev helped me get my kernel sources setup for it. great stuff

- I'm working on some cleanups too

- I also have a few missing bits and cherry-picks on the list of todos, but they will trickle in

Next, I'm going to be familiarizing myself betterwith the userspace changes in 8.1 and start looking at ways to improve battery. and hopefully get Dynamic Stune working again (assuming that I should / would be beneficial to early to tell wtih 8.1 being so new ).
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] AlexBrookes:
Interesting, flashed the kernel, it just gets stuck on the "G" logo. Followed all of the steps from OP. Anyone else having the same issue?

Edit: Fixed! Turned out just to be a bad boot.img.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
1. What version of android 8.0 or 8.1?

2. which download did you grab? (8.0 or 8.1)

3. If you have the correct download for your device/version of android; have you tried holding the volume down + power to reset? (when it's stuck on the G logo screen).
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] DR3W5K1:
I understand that completely. Somehow they were running everything off of the stock kernel it was untouchable. Don't ask me how lol

---------- Post added at 08:31 AM ---------- Previous post was at 08:08 AM ----------

I love the fact that you implemented mac randomization. I use mac filtering at home is there a way to get a static Mac for when I'm home?
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] xonelith:
I had the same issue, and reflashed the boot.img to get back to normal. I was using the early 8.1 version though. I'm about to test the latest one now:) I likely did something wrong.:D
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
No, you flashed the 8.0 kernel onto 8.1 DP2, IIRC.... Which wasn't going to work.

I don't know what Alex did - and being as he hasn't replied.... ??!
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
Hey, yeah. I think I'm going to change this setting on boot - to make that easier for you. By default, I have it enabled, but I can make that an opt in feature (and probably should). You can enable or disable the feature here;

/proc/sys/dev/cnss/randomize_mac

0 = OFF

1 = ON

I'll push an update a bit later that doesn't set this on boot and everyone can just manage it themselves.... CopperHeadOS (where I got the patch from) has nice integration with this feature in the ROM/user-space ~ via a nice ON/OFF switch in settings ~ but we don't have that option... So this will need to be manged in EXKM, Kernel Aduitor or maybe tasker (which could handle this dynamically; for your use case)
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] xonelith:
Pretty sure I took the early one from a link you provided (not in the OP). I just tried again with the 8.1 version linked in the OP and same issue. I'll retry and put the steps (including filename) that I flashed and report back.

Thanks for all your work!

ETA - The first one I flashed was from this post

ETA2 - I think yo may have me confused with someone else since you said IIRC. This is the first time I've reported anything:)

---------- Post added at 12:45 PM ---------- Previous post was at 12:14 PM ----------

So got everything back to normal. Here's everything I did.

Note that for me, it didn't freeze on the G logo; it sat on it for a minute, then went into a bootloop.

I typed the following :

fastboot flash boot --slot all boot.img

Same issue so figured something else went wrong.

fastboot boot twrp-3.2.0-0-marlin.img

Wiped Cache/Dalvik (this has fixed things for me before so figured it couldn't hurt)

Same issue.

Typed:

fastboot update image.zip

Booted no problem (as expected).

Removed my PIN. Not sure if this had any impact or not, but when flashing both Magisk and the kernel, I had used an external SD card and had left the device encypted.

Rebooted to bootloader

typed:

fastboot boot twrp-3.2.0-0-marlin.img

Flashed Marlin_EXNS_eas_76888e1.zip (both slots; still from SDCard but device was not encrypted)

Seemed to work fine. I get the message on load

I think i read somewhere this is expected (was that here? or somewhere else?:)). Went back to twrp and flashed magisk.

Does it matter if I flash Magisk before or after the kernel? I think the first time I just went and flashed the kernel with Magisk already installed.

Thanks again for all your help and support for our device!! Kernel is great!
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
The message is caused by Magisk. AFIAK.

Ya, I've updated the kernel in the link / OP a couple of times already. Maybe, there was an issue with a previous one... Yes, confused you with someone else, for sure. I get lots of PMs and 2 threads of messages, so that happens sometimes. lol

you always have to flash magisk AFTER the kernel - it patches the boot.img ~ so you won't have root, without doing it after...

Thanks for the report && good to know that you've got it running okay.... keep me posted - feedback is good.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] xonelith:
Odd that this is the first time i've seen it and using the same version of Magisk. Either way doesn't seem to be messing anything up so I'm happy:)

Maybe, but after flashing the new one, I still got the same boot issue.

I bet! I can't keep track of 1 convo, let alone a bunch.

Wrong order would only impact root though, right? I should still be able to boot. Also not sure why when flashing the stock boot.img, that I couldn't boot either. Not sure at all if having the PIN still there caused any issues; I'll make sure to disable it before flashing for my next test.

In the end, even having to flash the image.zip, it's not a big deal; it's very quick. One of the benefits of staying stock.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
Same version of Magisk, but on 8.1 vs. 8.0? ( flar2 mentioned in the EXKM thread - this was caused by magisk, not his kernel, the same would be true here. I previously referenced his post)

No idea, but I know from PMing with Alex, he's not getting any boot issue now.

yup.

Yes, wrong order - you lose root, that's it... I'm not sure what you are doing to not have stock boot.img or otherwise to not boot.... But, If you have your pin enabled -> the /partition remains encrypted and will look like a bunch of garbled text/names on every folder.... it needs to be decrypted.
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] xonelith:
That's where I read it!! Anyway, Im' looking into it. Going to try some things mentioned here . Odd though since I flashed the full image (bootloader and radio were already flashed and I did flash to both partitions). I'm going to try first with removing magisk and only the kernel. I'll let you know what I find.

No idea; this normally works for me and my steps were above. Either way, easy to manage with stock:)

Ya I get that, but using my Meenova I can flash things from an SDCard (USB OTG?).
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
AFAIK, Magisk IS what is causing that boot message. you can flash old zips for the Nexus 9 (circa 2015) - if you choose to do that. I won't be doing that and I won't be recommending that anyone else take that advice....

You should be decrypting the disk. End of story. You may be able to do things other ways ~ but you do so, on your own. I can't/won't help you, if you are going to be doing odd ball stuff...
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] xonelith:
Haha... not flashing any zips from Nexus 9, that's not what I was suggesting. I was suggesting the vendor.img from the Pixel (reading the root cause).. sorry for the confusion.

Anyway, I'll step away from this conversation; I feel i'm not adding any value and likely causing more confusion.

Thanks!
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
Yes, you are being a bit distracting, ditracting && adding confusion non-relevant stuff in the thread.... I would prefer if the thread stays on topic....

PS: don't take that the wrong way - other feedback you've given has been helpful. Thanks!
[Google Pixel XL ROMs, Kernels, Recoveries, & Other] :
Soo...

while the download remains the same; Technically, there are changes today... Maple IO scheduler and a few other commits are in there, and I've changed around my init rc ~ Just trying to get things a bit better setup for 8.1, add-in/change a few bits here and there.

EDIT:

Mac Randomization is Disabled by default for those who use Mac filtering on their networks.

To enable Mac Randomization;

/proc/sys/dev/cnss/randomize_mac

0 = OFF

1 = ON

You'll need to add a "user setting" to enable (and/or disable) this setting in EXKM. ~ Unfortunately, it doesn't look like EXKM has custom controls like Kernel Aduitor (I wish it did), so you may need two setting to manage on / off... Obviously, Kernel aduitor can do this by creating a custom control....

commandline way to set would be;

echo 1 > /proc/sys/dev/cnss/randomize_mac (to turn on)

or in an init script;

write /proc/sys/dev/cnss/randomize_mac 1