New builds are cooking...
PREPARE - this update is BiiiiiiiiG
I have added a test in my jenkins build process to ensure that the unified device tree is working as it should.
Unifying our device tree makes it much easier to maintain and to add other not-yet added models - while it comes with the risk something goes wrong when it comes to blobs.
Nevertheless:
This is the 6th round first of my unified device tree so I would highly recommend doing the following (I have done that in my manual builds but you get it from jenkins - so there is a tiny little chance of bad luck .. ):
Pre-Cautions | Flashing instructions
- Recommended: Backup (system, userdata in TWRP, your internal storage which contains your photos etc elsewhere)
- Required: Do a "REGULAR CLEAN FLASH" (see bottom of this post)
- Flash LOS - DO NOT choose to reboot afterwards - stay in TWRP.
- TWRP menu: "Mount" --> choose "System"
- From a terminal execute:
Code:
adb shell md5sum /system/etc/firmware/venus.mbn
- Compare the value (last 4 characters is fully enough) with these:
If you flash:
h815, f500, h818, h819 it should be: d1f6fe863643b1e8d1e597762474928c
h810, h811, h812, ls991, us991, vs986 it should be: 78e5cf520d0de4a413ef1cfa7bbbe713
WARNING: If that checksum is NOT as it should be: DO NOT PANIC! simply FLASH the PREVIOUS LOS version BEFORE booting!. This will ensure you will not blow a fuse.
While the above test should be considered safe: If you are unsure about this procedure: WAIT before flashing until someone (or I) had done the above quick test from the builds jenkins is providing at my leech server.
- Whenever an error occurs while flashing in TWRP (e.g "E1001: Failed to update system image.Updater process ended with ERROR: 7")
or if the above checksum does not match:
provide the recovery.log (FAQ #4 A)!!
... then flash the previous LOS version to get back to life - without harming your device.
- if instead (as we all expect) all went well and you had opengapps before - ensure you reflash gapps
Cooking order & LIVE cooking view
- H815
- H811
- H815 UsU
- VS986
- H812
- H810
Live - View:
Noteworthy Changes:
- enabled pstore commit#1, commit#2, commit#3 (pstore = debug kernel panics/oops happened in a ROM)
This is a 2-site change if you want to make use of it in TWRP you must install the latest TWRP "PREVIEW" release as well (TWRP is only able to show pstore logs when the ROM is able to write them so I needed to fix pstore in the ROM first (see above commits #1 + #2 )).
Besides those 2 patches these kernel configs were set: PSTORE
All details & how to verify: see FAQ #6
From now on when you encounter a kernel panic and you are able to reboot without taking out the battery (taking out the battery will erase RAM and so the logs would get lost):
1) reboot (without taking out the battery!) to either TWRP or (if you have root access) to your ROM
2) grab what you need from here: /sys/fs/pstore/ (e.g. adb pull /sys/fs/pstore/)
- fixed battery draining caused by torch crashing the camera: on boot, randomly and when "enable torch for power button" configured in android settings
- kernel: security fixes, IPA revamp, several other improvements here and there
- fixed: WiFi & BT MAC changed on every boot in rare cases (e.g. after a format data in TWRP)
- new: translations for torch (if you miss any let me know the 2-letter country code and the translation for "flashlight"), removed the LOS owned flashlight completely from status bar / tile (both require a factory reset or full clean flash if you wanna them)
- fixed: build F-Droid without unifiednlp and its backends (might be of interest for you @zeduck)
- wrild: fixed no-SIM handling, several optimizations for better detection and handling of rild issues, complete re-work of dontaudit handling for wrild
- WOOF: proudly presenting a brand new and (hopefully) intelligent watchdog for rild (part of wrild.sh).
The main purpose of this watchdog is detecting and solving issues with no cell service and/or unusual high load on the rild process (rare but sometimes happens) which causing a lot of battery drain if that occured.
When the watchdog needs to bite rild it will write logs to /sdcard/Download/wdlog/ which you should provide (adb pull /sdcard/Download/wdlog/) if you ever see them 
This watchdog was a massive amount of work and ofc included all selinux stuff around as well - encrypted / unencrypted devices are both working
All the details how this watchdog works and how you can watch what he does check out the commit message
- PLATFORM_SECURITY_PATCH = 2019-08-01
- fixed: timing perfected for rild service on boot
- fixed: several selinux denials
- changed kernel branch to android-9.0_sfx to workaround issues with cypher (still syncing from there but allowing me to revert, add whatever I need as well)
- Full details:
kernel: commits
g4-common tree: commits
g4 unified tree: commits
closed issues (if any): github issue tracker
IMPORTANT:
- If you encounter issues try this first:
Code:
adb shell
su
(or adb root when enabled)
setenforce permissive
Try again and if the issue is gone when in permissive mode: provide me a logcat as described here
On step 3 I need the SELINUX log (option D)
- Taking a backup before is recommended - always
- As usual a "REGULAR CLEAN FLASH" is RECOMMENDED .
See the FAQ #2 of this thread how to do a "regular clean flash": https://forum.xda-developers.com/g4/development/rom-lineageos-16-0-t3929082/post79502871
Keep in mind that almost all pie ROM's sharing the same common device tree (or main parts of it), same model device trees and for sure the same kernel - so you can enjoy most fixes for
any pie ROM available..
The above fixes are brought to you by the
Suicide Squirrel Team :victory:
ok enough of words, just
one more thing:
flash and enjoy this biting (woof), battery saving and simply wonderful new LOS version - ever
Sent from my OnePlus 6T using XDA Labs