Page 1 of 1

Gallium3D used on Rasperian but not on Arch within Weston

Posted: Fri Jan 04, 2019 9:27 am
by schmi85
Hello Everbody,

I am using a RPI 3+ Model B and I have flashed an SD Card with the current Version of Rasperian (2018-11-13-raspbian-stretch-lite.img). I installed these packages:

- weston
- xwayland
- mesa-utils,
- chromium-browser

And created /home/pi/.config/weston.ini with that content:

Code: Select all

[core]
modules=xwayland.so
Running: weston-launch starts a Desktop Session. From there, using the weston-terminal, running chromium-browser starts a browser and glxinfo | grep render shows that the Gallium3D GL driver is used, so everything fine.

Using Arch (AArch64), with an SD card flashed as Described here, I have installed these packages:

- weston
- xorg-server-xwayland (same as xwayland ??)
- mesa-demos (includes glxinfo)
- chromium

Running weston --no-config --xwayland as the user alarm, starts a Desktop as well. But if I am running chromium within a weston terminal, nothing happens, except that the desktop freezes. Running glxinfo | grep render shows:

Code: Select all

direct rendering: Yes
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer,
    GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer,
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: VC4 V3D 2.1
    GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer, 
so the Gallium3D GL driver is not used.

If I am running weston --no-config --xwayland --use-pixman everything works, but performance is poor.

in each case /boot/config.txt includes dtoverlay=vc4-kms-v3d and lsmod shows that the vc4 driver is enabled.

What can I do to fix that?

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Fri Jan 04, 2019 11:06 am
by cjan
downgrade mesa to 18.2.6 :mrgreen:

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Fri Jan 04, 2019 11:21 pm
by cjan
or, you may build yourself.
18.2.7

Code: Select all

Eric Anholt (3):
v3d: Fix a leak of the transfer helper on screen destroy.
vc4: Fix a leak of the transfer helper on screen destroy.
v3d: Fix a leak of the disassembled instruction string during debug dumps.
18.2.8

Code: Select all

Eric Anholt (2):
v3d: Make sure that a thrsw doesn't split a multop from its umul24.
v3d: Add missing flagging of SYNCB as a TSY op.

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Sat Jan 05, 2019 11:10 am
by schmi85
Thanks for your reply!

I guess it is easier to build myself, since downgrading a package on arch turns out to be ... challanging ...

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Sat Jan 05, 2019 11:29 am
by cjan
schmi85 wrote:
Sat Jan 05, 2019 11:10 am
Thanks for your reply!

I guess it is easier to build myself, since downgrading a package on arch turns out to be ... challanging ...
you should try 18.2.6 first in old repos.
btw, i had downgrade solved the issue.

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Mon Jan 07, 2019 8:13 am
by schmi85
@cjan How did you actually do that? :)

I neither can find a download for an older version here nor am I able to manage the installation of an older version using pacman.

Is it enough to just downgrade Mesa, or do I have to downgrade packages it depends on as well?

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Mon Jan 07, 2019 10:24 am
by cjan
schmi85 wrote:
Mon Jan 07, 2019 8:13 am
How did you actually do that? :)
http://tardis.tiny-vps.com/aarm/packages/m/mesa/

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Mon Jan 07, 2019 12:41 pm
by schmi85
@cjan Thanks for the link! Would not have found that!

But I still have no luck. As suggested I have done the following (as root):

Code: Select all

cd /var/cache/pacman/pkg
wget http://tardis.tiny-vps.com/aarm/packages/m/mesa/mesa-18.2.6-1-aarch64.pkg.tar.xz
pacman -U ./mesa-18.2.6-1-aarch64.pkg.tar.xz

pacman -Q mesa
mesa 18.2.6-1
So mesa seams to be downgraded. However running glxinfo | grep render still yields:

Code: Select all

direct rendering: Yes
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, 
    GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer, 
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: VC4 V3D 2.1
    GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer, 
and chromium does not start either.

Am I missing something, or did I download the wrong package??

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Mon Jan 07, 2019 1:13 pm
by cjan
in my case, even sddm or weston-launch or sway did not start.
then, found your post about GLs staff, so downgrade mesa.
now everything solved, but im arm7h system not aarch64.

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Tue Jan 08, 2019 7:32 am
by schmi85
@cjan I guess the important bit was that you have been using the arm7h image. I have already tried this one before, but was faced with the very errors you mentioned — nothing started at all.

Following this, I have flashed the sd card with this image: ArchLinuxARM-rpi-2-latest.tar.gz, as described in the section ARMv7 Installation.

Starting there, I dowgraded mesa (just as mentioned above), using this package: mesa-18.2.6-1-armv7h.pkg.tar.xz

Afterwards, weston started and chromium as well, so that's a success in first place. But performance is still poor and running glxinfo | grep render yields:

Code: Select all

direct rendering: Yes
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, 
    GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer, 
Extended renderer info (GLX_MESA_query_renderer):
OpenGL renderer string: VC4 V3D 2.1
    GL_OES_fbo_render_mipmap, GL_OES_get_program_binary, GL_OES_mapbuffer,
So now, without any Gallium3D driver, the browser seams to run and it looks like that: Image, so there is this strange black border around the browser and if I am going to watch some examples on threejs.org, it basically works, but there are a lot of glitches as well.

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Tue Jan 08, 2019 8:33 am
by cjan
ha, told you armv7h work.
another, im build wayland weston sway etc, everything-git so maybe faster?

Code: Select all

[launcher]
icon=/usr/share/icons/hicolor/24x24/apps/chromium.png
path=/usr/bin/chromium --disable-guic --enable-tcp-fast-open --ignore-gpu-blacklist

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Tue Jan 08, 2019 12:53 pm
by schmi85
I have just tried with rasperian as base. Glitches and Performance are the same, so I may say that the black border is the only remarkable difference… Do you have glitches (texture blinking to black) when viewing this page: http://carvisualizer.plus360degrees.com/threejs/ ??

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Thu Jan 24, 2019 9:49 am
by cjan
up to mesa-18.3.2 still broken, so stay 18.2.6

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Tue Feb 05, 2019 3:20 am
by cjan
mesa-18.3.3 work now.

Re: Gallium3D used on Rasperian but not on Arch within Weston

Posted: Mon Feb 18, 2019 11:20 pm
by cjan
mesa-18.3.4

* vc4: Fix copy-and-paste fail in backport of NEON asm fixes.
* vc4: Fix leak in HW queries error path
* v3d: Fix leak in resource setup error path