6.18.x rust_binder affecting Waydroid
Description:
After updating Arch Linux to the latest kernel 6.18.1.arch1-2, Waydroid stopped working properly. The session starts, but audio is partly broken. Specifically, some audio that uses the system stack (like OMX? I apologize, I'm not very familiar with Android) cannot be played, such as the built-in music app. However, apps like VLC can play the audio. The log shows: E/WOmxObserver-impl( 213): LWOmxObserver::onMessages - Transaction failed.
When I downgraded the kernel to 6.17.9-arch1-1, this problem disappeared.
I looked at the Arch Linux build options and suspect the following section is the cause. After I changed these parameters back to their original values from the previous version, Waydroid started working correctly.
@@ -10912,8 +10989,8 @@ CONFIG_USB4=m
#
# Android
#
-CONFIG_ANDROID_BINDER_IPC=y
-CONFIG_ANDROID_BINDERFS=y
+# CONFIG_ANDROID_BINDER_IPC is not set
+CONFIG_ANDROID_BINDER_IPC_RUST=y
CONFIG_ANDROID_BINDER_DEVICES=""
# end of Android
Additional info:
- package version: 6.18.1.arch1-2
- Waydroid version: 1.6.0
- link to Waydroid bug report: https://github.com/waydroid/waydroid/issues/2157
Steps to reproduce:
- Upgrade to the 6.18.x kernel.
- Restart the computer.
- Open Waydroid and play music using the built-in music player.
- The audio cannot be played.