[Release notes] Tampella 5.0.0.71

It is time for another small update in the Sailfish 5.0.0 series, many thanks to you our active contributors for your feedback and proposals.

Version history of the OS release

Known issues

For the time being the update has been backed out from Xperia XA2 devices, while we investigate how to detect and avoid the following boot issue:

On some Xperia XA2 family devices the device may boot to recovery mode after the update and refuse to boot normally. To fix this the boot mode flags need to be cleared.

This can be done in the recovery shell with command:

dd if=/dev/zero of=/dev/mmcblk0p64 bs=256 count=1

After running that, exit the shell and reboot the device from the menu.

This should not happen on other device, but if it does, note that the partition is model specific, so do not run that command on other device models.

Release highlights 5.0.0.71

Getting all the things we want in Sailfish 5.1 will still take some time, so we decided to pick some of the improvements as an update to the 5.0 branch. First and foremost to get those improvements earlier to you, but also to get a good base image for the next Jolla C2 batch.

These are the notable improvements of 5.0.0.71 compared to 5.0.0.70.

  • A lot of fixes in AppSupport for connectivity and other things.

    • Connectivity fixes mainly affect Jolla C2 with AppSupport 13 and AppSupportRadio implementation.
    • AppSupportRadio implementation treat mobile data as WLAN connection by default.
    • AppSupport 13 Chromium Webview update to 139.0.7258.143 version.
    • Settings > AppSupport has some new switches to control AppSupport behavior, so make sure to check that after the update.
  • Recovery mode enabled on Jolla C2, Xperia XA2, and Xperia 10.

    • To enter the recovery mode on Jolla C2:
      1. Turn off the device and turn it back on
      2. When the device vibrates at start, press volume up key
      3. Press volume down key to confirm booting to recovery mode
    • To enter recovery mode on Xperia XA2 and 10:
      1. Turn off the device
      2. Hold down the volume down key and turn the device back on
      3. Hold down the volume down key until the recovery mode text appears at the top of the screen.
    • The instructions in documentation will be updated soon.
    • For other Xperia devices the recovery mode still requires booting the recovery image with fastboot, but we are working to fix that too.
  • Factory reset enabled on Jolla C2

    • The reset can now be initiated from Settings > Reset device
    • If your device is from the very first batches, it won’t have the factory image on board and the reset will fail. To fix that see the flashing instructions, and flash the super partition with fimage.img001
  • Browser now remembers Find-in-Page search terms, excellent small contribution from the community!

All recent Sailfish OS release notes can be found here.

Changelog

Full changelog from 5.0.0.68 to 5.0.0.71 (15.2 KB)

How did the upgrade go?

  • I had no issues during the upgrade process
  • I had small issues, but was able to handle them
  • I got into serious trouble when upgrading my device (please help!)
  • I did not dare or want to update
0 voters

Help articles

The Sailfish OS help articles are available at Sailfish OS Documents repository.

30 Likes

Upgrade FAILED on XA2. It has never ever failed before in 5 years..

After the upgrade I’m seeing some black console with the following text:

RECOVERY: Connect USB cable and open telnet to address 10.42.66.66

When I connect with telnet I get:

Jolla Recovery v2.0

Welcome to the recovery tool!The available options are:

1. Reset device to factory state
2. Reboot device
3. Shell
4. Perform file system check
5. Run sshd
6. Exit

Running the file system check results in:

Type the number of the desired action and press [Enter]:4
/dev/mmcblk0rpmb: read failed after 0 of 4096 at 0: Input/output error
/dev/mmcblk0rpmb: read failed after 0 of 4096 at 4128768: Input/output error
/dev/mmcblk0rpmb: read failed after 0 of 4096 at 4186112: Input/output error
/dev/mmcblk0rpmb: read failed after 0 of 4096 at 4096: Input/output error
2 logical volume(s) in volume group “sailfish” now active
e2fsck 1.47.0 (5-Feb-2023)
root: recovering journal
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (229018, counted=229017).Fix? yes
Free inodes count wrong (117363, counted=117361).Fix? yes

root: ***** FILE SYSTEM WAS MODIFIED *****
root: 36239/153600 files (2.0% non-contiguous), 410983/640000 blocks
Opening encrypted filesystem, you will be prompted for your security code.
Enter passphrase for /dev/sailfish/home:
e2fsck 1.47.0 (5-Feb-2023)
Pass 1: Checking inodes, blocks, and sizes
Inode 133649 extent tree (at level 1) could be shorter.  Optimize? yes
Inode 524148 extent tree (at level 1) could be shorter.  Optimize? yes
Inode 917392 extent tree (at level 1) could be shorter.  Optimize? yes
Inode 917398 extent tree (at level 1) could be shorter.  Optimize? yes
Inode 929397 extent tree (at level 1) could be shorter.  Optimize? yes
Inode 1050394 extent tree (at level 1) could be shorter.  Optimize? yes
Inode 1052282 extent tree (at level 1) could be shorter.  Optimize? yes

Pass 1E: Optimizing extent trees
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information

/dev/mapper/luks-home: ***** FILE SYSTEM WAS MODIFIED *****
/dev/mapper/luks-home: 113389/1150560 files (6.9% non-contiguous), 2268072/4601344 blocks
/dev/mmcblk0rpmb: read failed after 0 of 4096 at 0: Input/output error
0 logical volume(s) in volume group “sailfish” now active
Done
Press [Enter] to return to recovery menu…

Still not booting into Sailfish

@duvi in the recovery mode shell, could you get the output of the following commands

cat /proc/cmdline 

and

hexdump -C /dev/mmcblk0p64
2 Likes

Sure, here they are (and some more):

~ # cat /proc/cmdline
rcupdate.rcu_expedited=1 core_ctl_disable_cpumask=0-7 lpm_levels.sleep_disabled=1 display_status=on selinux=0 androidboot.selinux=permissive msm_rtb.filter=0x3F ehci-hcd.park=3 coherent_pool=8M sched_enable_power_aware=1 user_debug=31 systemd.legacy_systemd_cgroup_controller=yes androidboot.hardware=pioneer root=/dev/dm-0 dm=“system none ro,0 1 android-verity /dev/mmcblk0p79” androidboot.verifiedbootstate=orange androidboot.keymaster=1  androidboot.veritymode=enforcing androidboot.bootdevice=c0c4000.sdhci androidboot.baseband=msm lcdid_adc=79536 mdss_mdp.panel=1:dsi:0:qcom,mdss_dsi_td4322_truly_fhd_cmd:config0:1:none:cfg:single_dsi androidboot.slot_suffix=_b rootwait ro init=/init cei_project_id=BY13 cei_phase_id=MP cei_sku_id=GINA cei_simslot_id=dsds cei_mainboard_id=SM12 androidboot.ceibootmode=0  androidboot.bootloader=xboot oemandroidboot.xboot=1310-0301_X_Boot_SDM630_LA3.0_P_38 androidboot.serialno=*** startup=0x00008004 warmboot=0x77665502 oemandroidboot.babe08b3=50000000 oemandroidboot.imei=*** oemandroidboot.security=0 oemandroidboot.securityflags=0x00000003
~ # hexdump -C /dev/mmcblk0p64
00000000  62 6f 6f 74 2d 72 65 63  6f 76 65 72 79 00 00 00  |boot-recovery…|
00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |…|
*
00000040  72 65 63 6f 76 65 72 79  0a 2d 2d 77 69 70 65 5f  |recovery.–wipe_|
00000050  64 61 74 61 0a 2d 2d 72  65 61 73 6f 6e 3d 4d 61  |data.–reason=Ma|
00000060  73 74 65 72 43 6c 65 61  72 43 6f 6e 66 69 72 6d  |sterClearConfirm|
00000070  0a 2d 2d 6c 6f 63 61 6c  65 3d 65 6e 5f 55 53 0a  |.–locale=en_US.|
00000080  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |…|
*
00100000
~ # fdisk -l
Disk /dev/mmcblk0: 29 GB, 31268536320 bytes, 61071360 sectors
3786 cylinders, 256 heads, 63 sectors/track
Units: sectors of 1 * 512 = 512 bytes
Device       Boot StartCHS    EndCHS        StartLBA     EndLBA    Sectors  Size Id Type
/dev/mmcblk0p1    0,0,1       1023,255,63          1 4294967295 4294967295 2047G ee EFI GPT

Disk /dev/dm-0: 2500 MB, 2621440000 bytes, 5120000 sectors
318 cylinders, 255 heads, 63 sectors/track
Units: sectors of 1 * 512 = 512 bytes
Disk /dev/dm-0 doesn’t contain a valid partition table

Disk /dev/dm-1: 18 GB, 18849202176 bytes, 36814848 sectors
2291 cylinders, 255 heads, 63 sectors/track
Units: sectors of 1 * 512 = 512 bytes
Disk /dev/dm-1 doesn’t contain a valid partition table
~ # df -h
Filesystem                Size      Used Available Use% Mounted on
none                      1.2G         0      1.2G   0% /dev
none                     10.0M         0     10.0M   0% /tmp
none                    256.0K     12.0K    244.0K   5% /var/run
/dev/sailfish/root        2.4G      1.5G    853.6M  64% /rootfs
none                      1.2G         0      1.2G   0% /rootfs/dev

Settings > AppSupport has some new switches to control AppSupport behavior, so make sure to check that after the update.

Really nice. Did I miss translation round or it was not opened yet?

2 Likes

@duvi You could try clearing the boot mode information from the misc partition (mmcblk0p64) with

dd if=/dev/zero of=/dev/mmcblk0p64 bs=256 count=1

And then rebooting.

The bootloader version, 1310-0301_X_Boot_SDM630_LA3.0_P_38, seems to be a bit older and that is probably why it behaves differently.

2 Likes

We didn’t do a translation round for this, so the translations for the new settings strings will have to wait until 5.1.

5 Likes

In this case i would vote having the Feature/Bugfix for some weeks not translate is MUCH better than having it a week or two stalled :wink: For me the best decision Jolla could make!

First observation: Android connectivity is just fixed. That is huge for the C2. Hope, that the first impression holds up!

8 Likes

I was sweating because phone rebooted to update when I saw this post. My XA2 updated flawlessly, so maybe not every device fails.

4 Likes

I was stuck in the same way than @duvi and it did the trick, thank you !

2 Likes

@sedric or anyone else with XA2 that booted to recovery after the update, it would help if you could check the oemandroidboot.xboot= value from /proc/cmdline.

And if you could run a couple of tests:

  1. Boot to recovery by turning off the phone and then turning it on while holding down the volume down key.
    • in recovery shell check hexdump -C /dev/mmcblk0p64 and if it’s zeroes or has other content
    • reboot the device to see if it boots normally again
  2. Do a “warm boot” to recovery by running reboot recovery from command line as root and do the same checks as for 1.
3 Likes

This worked for me, too. Thank you!

It’s still in my history ! Hexdump of /dev/mmcblk0p64 was the same :

recovery:~ # hexdump -C /dev/mmcblk0p64
00000000  62 6f 6f 74 2d 72 65 63  6f 76 65 72 79 00 00 00  |boot-recovery...|
00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000040  72 65 63 6f 76 65 72 79  0a 2d 2d 77 69 70 65 5f  |recovery.--wipe_|
00000050  64 61 74 61 0a 2d 2d 72  65 61 73 6f 6e 3d 4d 61  |data.--reason=Ma|
00000060  73 74 65 72 43 6c 65 61  72 43 6f 6e 66 69 72 6d  |sterClearConfirm|
00000070  0a 2d 2d 6c 6f 63 61 6c  65 3d 65 6e 5f 55 53 0a  |.--locale=en_US.|
00000080  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00100000

I didn’t check the whole cmdline but I specifically check the bootloader version as you mentionned it and it was the same :

recovery:~ # cat /proc/cmdline |grep --color 1310
rcupdate.rcu_expedited=1 core_ctl_disable_cpumask=0-7 lpm_levels.sleep_disabled=1 display_status=on selinux=0 androidboot.selinux=permissive msm_rtb.filter=0x3F ehci-hcd.park=3 coherent_pool=8M sched_enable_power_aware=1 user_debug=31 systemd.legacy_systemd_cgroup_controller=yes androidboot.hardware=voyager root=/dev/dm-0 dm="system none ro,0 1 android-verity /dev/mmcblk0p78" androidboot.verifiedbootstate=orange androidboot.keymaster=1  androidboot.veritymode=enforcing androidboot.bootdevice=c0c4000.sdhci androidboot.baseband=msm lcdid_adc=46577 mdss_mdp.panel=1:dsi:0:qcom,mdss_dsi_td4328_tianma_fhdplus_cmd:config0:1:none:cfg:single_dsi androidboot.slot_suffix=_a rootwait ro init=/init cei_project_id=BY46 cei_phase_id=MP cei_sku_id=GINA cei_simslot_id=dsds cei_mainboard_id=SM42 androidboot.ceibootmode=0  androidboot.bootloader=xboot oemandroidboot.xboot=1310-0301_X_Boot_SDM630_LA3.0_P_38 androidboot.serialno=CQ300159VD startup=0x00008001 warmboot=0x77665502 oemandroidboot.babe08b3=50000000 oemandroidboot.imei=*** oemandroidboot.security=0 oemandroidboot.securityflags=0x00000003

I tried to turn off / turn on with volume key down (it changed nothing) but didn’t try to ask a reboot from the recovery menu.

Update went smoothly on C2. Dunno if bugreport worthy but the android apps seem to be stuck in landscape mode after the upgrade. Following the situation. Prior to landscape-stuckness watched a youtube-vid with android web-browser and exited out of it after receiving a message. Now Im here.

Edit: fixed itself somehow. No longer am I mr. sideways.

2 Likes

These are my results after I applied your fix and after a “normal” reboot:

~ # cat /proc/cmdline
rcupdate.rcu_expedited=1 core_ctl_disable_cpumask=0-7 lpm_levels.sleep_disabled=1 display_status=on selinux=0 androidboot.selinux=permissive msm_rtb.filter=0x3F ehci-hcd.park=3 coherent_pool=8M sched_enable_power_aware=1 user_debug=31 systemd.legacy_systemd_cgroup_controller=yes androidboot.hardware=pioneer root=/dev/dm-0 dm=“system none ro,0 1 android-verity /dev/mmcblk0p79” androidboot.verifiedbootstate=orange androidboot.keymaster=1  androidboot.veritymode=enforcing androidboot.bootdevice=c0c4000.sdhci androidboot.baseband=msm lcdid_adc=33073 mdss_mdp.panel=1:dsi:0:qcom,mdss_dsi_td4322_truly_fhd_cmd:config0:1:none:cfg:single_dsi androidboot.slot_suffix=_b rootwait ro init=/init cei_project_id=BY13 cei_phase_id=MP cei_sku_id=GINA cei_simslot_id=dsds cei_mainboard_id=SM12 androidboot.ceibootmode=0  androidboot.bootloader=xboot oemandroidboot.xboot=1310-0301_X_Boot_SDM630_LA3.0_P_38 androidboot.serialno=CQ30007AAG startup=0x00000001 warmboot=0x00000000 oemandroidboot.babe08b3=50000000 oemandroidboot.imei=*** oemandroidboot.security=0 oemandroidboot.securityflags=0x00000003
~ # hexdump -C /dev/mmcblk0p64
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |…|
*
00100000

And these are the results after the “warm boot”:

~ # cat /proc/cmdline
rcupdate.rcu_expedited=1 core_ctl_disable_cpumask=0-7 lpm_levels.sleep_disabled=1 display_status=on selinux=0 androidboot.selinux=permissive msm_rtb.filter=0x3F ehci-hcd.park=3 coherent_pool=8M sched_enable_power_aware=1 user_debug=31 systemd.legacy_systemd_cgroup_controller=yes androidboot.hardware=pioneer root=/dev/dm-0 dm=“system none ro,0 1 android-verity /dev/mmcblk0p79” androidboot.verifiedbootstate=orange androidboot.keymaster=1  androidboot.veritymode=enforcing androidboot.bootdevice=c0c4000.sdhci androidboot.baseband=msm lcdid_adc=41656 mdss_mdp.panel=1:dsi:0:qcom,mdss_dsi_td4322_truly_fhd_cmd:config0:1:none:cfg:single_dsi androidboot.slot_suffix=_b rootwait ro init=/init cei_project_id=BY13 cei_phase_id=MP cei_sku_id=GINA cei_simslot_id=dsds cei_mainboard_id=SM12 androidboot.ceibootmode=0  androidboot.bootloader=xboot oemandroidboot.xboot=1310-0301_X_Boot_SDM630_LA3.0_P_38 androidboot.serialno=CQ30007AAG startup=0x00000000 warmboot=0x77665502 oemandroidboot.babe08b3=50000000 oemandroidboot.imei=*** oemandroidboot.security=0 oemandroidboot.securityflags=0x00000003
~ # hexdump -C /dev/mmcblk0p64
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |…|
*
00100000

Thank you very much, till now everything went fine on my Jolla C2 2nd batch!

2 Likes

Thanks for the reports, the good news is that it does not leave the boot mode information in the misc partition after booting again to the recovery mode. So probably those are some leftovers from the past.

I added this as know issue, and the fix, in the original post.

7 Likes

So, if one has an XA2* and

cat /proc/cmdline|awk -Foemandroidboot.xboot ‘{print $2}’|awk ‘{print $1}’

gives:

=1310-0301_X_Boot_SDM630_LA3.0_P_38

one has to expect booting to recovery mode, right?

1 Like

I did over-the-air update my both Xperia 10’s from 5.0.0.67 resp. 68 to 71 and rebooted. Everything’s fine.
Thank you Jolla!!! :heart:

edit: The power off bug is now solved on both devices. To switch the phone off, long press PWR button until device shuts down works. Device now stays off and doesn’t reboot any more.

But pressing PWR button a little bit shorter until Power button appears on screen and then press PWR button on screen still shuts down and then reboots immediately or within few seconds.

Long press PWR button and VOL UP at the same time until phone vibrates 3 times still works as an emergency option but not more necessary in normal usecase.

For the rest, everything works as before, that means fine. edit: see edit below

Thank you @Jolla !

edit: Found a bug: Sound recording on Android apps no more works on both phones!
Apps: Oscilloscope & Audio Spectrum Analyzer from F-Droid.
Audio recording with Sailfish OS Audio Recorder app works fine.

Any ideas what do to fix this?
Thanks for any hint!

edit: wrote bug report.

6 Likes

It probably isn’t the bootloader version alone, but also the the misc partition contents, and it’s not completely clear where it comes from. And it’s a bit difficult to reproduce and test as the older stock Xperia firmwares are not available for flashing.