android-riscv64 icon indicating copy to clipboard operation
android-riscv64 copied to clipboard

--gpu_mode="drm_virgl" seems to be broken (again) ?

Open Ruinland opened this issue 1 year ago • 1 comments

This issues seems once be brought up by @nylon7 in #85 .

I am encountering it yet again with the latest code base without the rutabaga device.

After switching the gpu mode to drm_virgl, CVD fails to show the display and logcat suggests setting ro.hardware.egl. I then comply by setting it to mesa, adding libEGL*_mesa* to the product settings. However, the logcat still says :

01-01 00:02:19.730   485   529 D libEGL  : Failed to load drivers from property ro.hardware.egl with value mesa
01-01 00:02:19.733   485   529 F libEGL  : couldn't find an OpenGL ES implementation, make sure one of persist.graphics.egl, ro.hardware.egl and ro.board.platform is set

My command line with virgl piping - -

DISPLAY=:33 GALLIUM_DRIVER=virpipe launch_cvd -cpus=4 --memory_mb=8192 --resume=false --gpu_mode="drm_virgl" --console=true

The X server is plain Xvfb. I doubly checked the virpipe setting is working with ordinary X programs without problems. And the cvd launcher log doesn't complains anything.

The logs are attached. launcher.log logcat.log

====

I know that the drm_virgl GPU mode is removed from README in favor of the newly merged QEMU rutabaga device and GFX stream. However, it could be quite difficult for people working with offshoots of QEMU code base. So the need for drm_virgl is still strong.

Ruinland avatar Apr 16 '24 06:04 Ruinland

Okay, I got the commit hash of QEMU, gfxstream, aemu and ffi(crosvm) aligned with Fedora package and it gets built. Yet once it tried to initialize the display, the MESA spills error messages, and the qemu go down shortly after :

Screenshot 2024-04-18 140644

Ruinland avatar Apr 18 '24 07:04 Ruinland