Waydroid (1.3.3-0pureos0+librem5ci79377.0353512) container can no longer start after I rebooted my L5 phone. The /var/lib/waydroid/waydroid.log ends with the following:
(004769) [12:26:41] % lxc-start -P /var/lib/waydroid/lxc -F -n waydroid -- /init
(004769) [12:26:41] New background process: pid=4845, output=background
lxc-start: waydroid: utils.c: safe_mount: 1204 No such file or directory - Failed to mount "/dev/ashmem" onto "/usr/lib/aarch64-linux-gnu/lxc/rootfs/dev/ashmem"
(004769) [12:26:41] Save session config: /var/lib/waydroid/session.cfg
(004801) [12:26:41] Failed to start Clipboard manager service, check logs
lxc-start: waydroid: conf.c: run_buffer: 314 Script exited with status 126
lxc-start: waydroid: start.c: lxc_end: 958 Failed to run lxc.hook.post-stop for container "waydroid"
It looks similar to the Waydroid issue #631, but suggested solutions seem to be not related, because page size is already 4k and PSI (whatever it is) seems to be already enabled:
$ zcat /proc/config.gz | grep 'PSI'
CONFIG_PSI=y
# CONFIG_PSI_DEFAULT_DISABLED is not set
$ getconf PAGESIZE
4096
$ cat /proc/cmdline
u_boot_version=2022.10-g956aa590c9 console=ttymxc0,115200 quiet fsck.repair=yes security=apparmor splash plymouth.ignore-serial-consoles vt.global_cursor_default=0
Anyway, according to the /var/log/apt/history.log, the kernel was updated yesterday: linux-image-6.6.0-1-librem5:arm64 (6.6.118pureos1~byz1, 6.6.119pureos1~byz1). Where can I get the binary of the previous kernel build to downgrade it? I need to fix Waydroid ASAP.
Also, for completeness, you should mention whether you are running byzantium or crimson (although Iām sure it is able to be inferred from the information given).
The /boot/vmlinuz-6.6.0-1-librem5 was replaced by the package update. The old DEB file can no longer be found in /var/cache/apt/archives. Is the previous kernel still somehow flashed as a fallback?
So, I installed linux-image-6.3.0-1-librem5 (6.3.7pureos1) from the repository and executed flash-kernel --force 6.3.0-1-librem5. This version is older than I intended to downgrade (are there significant changes since then?), but now Waydroid is back to life.
Now the question is: What changed between 6.6.118pureos1~byz1 and 6.6.119pureos1~byz1?
I have the same problem and would be happy if there was a proper fix (or at least a temporary workaround) for the problem that does not include downgrading the kernel.
It is possible that the problem is with an old Android image. One of the Android updates broke sound: anything played from inside of the Android was terribly stuttering, so I reverted to previous version and did not update the Android image since then. Iāll try to update everything and will hope that Iāll be able to recover if anything else breaksā¦
It is possible, but as I said - my phones have very varied versions of Android images and they all work, so it must be a matter of some particular combination of component versions that you happen to have there.
(audio works correctly with latest Waydroid images in Crimson, BTW)
I will also add that Waydroid works for me on Crimson after I followed the Waydroid installation instructions. Maybe this is an issue only in Byzantium, which I havenāt tried. I doubt Purismās devs will spend time to investigate or fix issue in Byzantium with Crimson nearing beta release.
If you are able to, could you try updating to Crimson?
Updated Android to latest āsystemā and āvendorā images. It was a jump from Android 11 to Android 13. Now the sound is stuttering and current playback timestamp in a player (NewPipe) advances faster than it should. And I doubt it is safe to just replace Android images back due to an Android version jump.
Executed flash-kernel to return to the latest Linux kernel (6.6.0-1-librem5). Container fails to start with the same error.
Returned to Linux kernel 6.3.0-1-librem5. Trying to figure out what to do with sound in Android.
Itās a relief to hear others have this same issue following the recent kernel update. For context, I have kept both PureOS and the Android system and vendor image in the container as far updated as possible (without entering betas or pre-releases) which currently is Byzantium and Android 13 (the Lineage variant) respectively.
I did notice that running apt show waydroid shows Version: 1.3.3-0pureos0+librem5ci79377.0353512 instead of 1.6.1 as mentioned. This is even after running sudo apt update && sudo apt upgrade
AND sudo waydroid upgrade
I am still on Byzantium because it is The latest stable release, even though it is old. It is my daily driver, and I depend on it working properly. Well, now it is not working properly, so I may consider upgradingā¦
Regarding the upgrade: the last time I checked the only way to do it was to flash a new OS image and erasing the current installation. I fear I would need to spend a vacation configuring everything again from scratch. Iāve just checked, and it seems like the Debianās usual āapt-get dist-upgradeā method has potential problems and is not confirmed to be safe yet.
Anyway, upgrade of the waydroid package did not help me. It seems like there is some kind of incompatibility between recent kernel changes and Android images.
Several people have posted relatively recently that they have successfully upgraded from Byzantium to Crimson using apt. I donāt know the details and am still on Byzantium myself.
I just followed the direction of the readme at āLibrem5 / debs / waydroid Ā· GitLabā
which points to āInstall Instructions | Waydroidā for the installation instructions (following the Ubuntu/Debian and derivatives instructions) which worked for me. Granted this was a year and a half ago when I first installed it, but no issues until the kernel update.