Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: switch from luna-surfacemanager-base to auto-luna-surface-manager #527

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

shr-project
Copy link
Contributor

OSE uses this by default since 2019, see webosose/meta-webosose@0a626e6

…E and use instead of luna-surfacemanager-conf

* luna-surfacemanager-base+luna-surfacemanager-conf don't support dmabuf or at least
  aren't configured to enable it:
  export 'QT_WAYLAND_HARDWARE_INTEGRATION=linux-dmabuf-unstable-v1'
  in platform.env

* that's why wam doesn't work in LuneOS with mesa-22 without fixing
  wl_drm support as in:
  https://lists.openembedded.org/g/openembedded-core/message/166994

* current status is that it crashed somewhere in Evdev thread
  libEGL debug: No DRI config supports native format AR30
  libEGL debug: No DRI config supports native format XB30
  libEGL debug: No DRI config supports native format AB30
  libEGL debug: No DRI config supports native format XB4H
  libEGL debug: No DRI config supports native format AB4H
  [New Thread 0x7fffeb278640 (LWP 268833)]
  double free or corruption (out)

  Thread 3 "QEvdevTouchScre" received signal SIGABRT, Aborted.
  [Switching to Thread 0x7fffeb278640 (LWP 268833)]
  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
  44      pthread_kill.c: No such file or directory.
  (gdb) bt
  #0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
  #1  0x00007ffff6539013 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
  #2  0x00007ffff64ee2c6 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
  #3  0x00007ffff64d97e3 in __GI_abort () at abort.c:79
  #4  0x00007ffff652d571 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff666060d "%s\n") at ../sysdeps/posix/libc_fatal.c:155
  #5  0x00007ffff65427ca in malloc_printerr (str=str@entry=0x7ffff66631d0 "double free or corruption (out)") at malloc.c:5664
  #6  0x00007ffff6544708 in _int_free (av=0x7ffff669baa0 <main_arena>, p=0x7fffdc005270, have_lock=<optimized out>) at malloc.c:4588
  #7  0x00007ffff6546e43 in __GI___libc_free (mem=<optimized out>) at malloc.c:3391
  #8  0x00007ffff6546f32 in tcache_thread_shutdown () at malloc.c:3227
  #9  __malloc_arena_thread_freeres () at /usr/src/debug/glibc/2.35-r0/git/malloc/arena.c:1003
  #10 0x00007ffff6548e9a in __libc_thread_freeres () at thread-freeres.c:44
  #11 0x00007ffff653716a in start_thread (arg=<optimized out>) at pthread_create.c:456
  #12 0x00007ffff65b8920 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

  There is older ticket with similar error:
  https://bugreports.qt.io/browse/QTBUG-68451
  but might be completely unrelated, I'm re-creating debug
  build to get better bt.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* otherwise auto-luna-surface-manager installs in /usr/plugins (old webos_qtpluginsdir) instead of /usr/lib/plguings
  and then it's unpackaged, because it doesn't match with OE_QMAKE_PATH_PLUGINS

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* in OSE it's in PN-conf, but in LuneOS we have separate luna-surfacemanager-conf recipe, so use PN-base-conf instead

* this is needed to avoid confict between luna-surfacemanager-base and auto-luna-surfacemanager

* check_data_file_clashes: Package auto-luna-surface-manager wants to install file /OE/build/luneos-kirkstone/webos-ports/tmp-glibc/work/qemux86_64-webos-linux/luneos-dev-image/1.0-r0/rootfs/etc/surface-manager.d/product.env
  But that file is already provided by package  * luna-surfacemanager-base
* check_data_file_clashes: Package auto-luna-surface-manager wants to install file /OE/build/luneos-kirkstone/webos-ports/tmp-glibc/work/qemux86_64-webos-linux/luneos-dev-image/1.0-r0/rootfs/usr/share/luna-service2/api-permissions.d/com.webos.surfacemanager.api.json
  But that file is already provided by package  * luna-surfacemanager-base
* check_data_file_clashes: Package auto-luna-surface-manager wants to install file /OE/build/luneos-kirkstone/webos-ports/tmp-glibc/work/qemux86_64-webos-linux/luneos-dev-image/1.0-r0/rootfs/usr/share/luna-service2/client-permissions.d/com.webos.surfacemanager.perm.json
  But that file is already provided by package  * luna-surfacemanager-base
* check_data_file_clashes: Package auto-luna-surface-manager wants to install file /OE/build/luneos-kirkstone/webos-ports/tmp-glibc/work/qemux86_64-webos-linux/luneos-dev-image/1.0-r0/rootfs/usr/share/luna-service2/groups.d/com.webos.surfacemanager.groups.json
  But that file is already provided by package  * luna-surfacemanager-base
* check_data_file_clashes: Package auto-luna-surface-manager wants to install file /OE/build/luneos-kirkstone/webos-ports/tmp-glibc/work/qemux86_64-webos-linux/luneos-dev-image/1.0-r0/rootfs/usr/share/luna-service2/roles.d/com.webos.surfacemanager.role.json
  But that file is already provided by package  * luna-surfacemanager-base
* check_data_file_clashes: Package auto-luna-surface-manager wants to install file /OE/build/luneos-kirkstone/webos-ports/tmp-glibc/work/qemux86_64-webos-linux/luneos-dev-image/1.0-r0/rootfs/usr/share/luna-service2/services.d/com.webos.surfacemanager.service
  But that file is already provided by package  * luna-surfacemanager-base

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* this should respect VIRTUAL-RUNTIME_surface-manager* variables, but
  LuneOS doesn't set them in global config (like OSE in
  webos-preferred-provides.inc), so let packagegroup-webos-extended.bb
  pull right implementations into the image

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant