@roirraW "edor" ehT @Lughnasadh @V0latyle
So after reading some threads of people failing to flash their devices with
--slot all update
I decided to update as I'll probably be getting a Pixel 7 before the disclosure on the vulnerability in the bootloader is released. After trying it I found that the Pixel 6 can't have
update
use
--slot all
.
Extremely weird, because on every other Pixel device they can flash all partitions to all slots no problem.
Well it turns out this is what is causing the issue:
Code:
Sending 'super' (4 KB) OKAY [ 0.000s]
Updating super partition OKAY [ 0.015s]
Resizing 'product_a' OKAY [ 0.003s]
Resizing 'product_b' OKAY [ 0.002s]
Resizing 'system_a' OKAY [ 0.003s]
Resizing 'system_b' OKAY [ 0.002s]
Resizing 'system_ext_a' OKAY [ 0.002s]
Resizing 'system_ext_b' OKAY [ 0.003s]
Resizing 'vendor_a' OKAY [ 0.003s]
Resizing 'vendor_b' OKAY [ 0.003s]
Resizing 'vendor_dlkm_a' OKAY [ 0.003s]
Resizing 'vendor_dlkm_b' OKAY [ 0.004s]
The super partition holding the sizes of each partition is used, however the opposite slot for each partition is being resized to the same size and this isn't leaving enough space left. With several opposite slots being larger than they should be, like the system slot, or other slots being included when they shouldn't is messing things up.
A proper dynamic partitioning should be these:
Code:
Sending 'super' (4 KB) OKAY [ 0.000s]
Updating super partition OKAY [ 0.013s]
Resizing 'product_a' OKAY [ 0.005s]
Resizing 'system_a' OKAY [ 0.004s]
Resizing 'system_ext_a' OKAY [ 0.002s]
Resizing 'system_b' OKAY [ 0.002s]
Resizing 'vendor_a' OKAY [ 0.002s]
Resizing 'vendor_dlkm_a' OKAY [ 0.002s]
Resizing 'vendor_b' OKAY [ 0.002s]
So with this in mind the proper instructions would be to update from Android 12 with fastboot:
adb reboot bootloader
fastboot --slot all flash bootloader bootloader.img
fastboot --slot all flash radio radio.img
fastboot reboot bootloader
fastboot --skip-reboot update image.zip
fastboot reboot bootloader
fastboot update image.zip
- If using Magisk instead use
fastboot --skip-reboot update image.zip
fastboot reboot bootloader
- Use the flash or boot method on your Magisk patched boot image.
Or with adb
sideload
:
adb reboot sideload
adb sideload ota.zip
adb reboot sideload
- can be done from within the recovery
adb sideload ota.zip
The directions for if you are already on Android 13 are still steps 1-4 for fastboot or just steps 1-2 for adb.
There's actually one minor issue with Google's steps for option 2:
>
adb reboot fastboot
They're having people reboot into fastbootd which can't flash the bootloader, so if the people try to continue from within fastbootd they'll have that issue.