Updating wayland-protocols to 1.31+ for Plasma 5.27, targetted for Bookworm

2023-01-12 Thread Aurélien COUDERC
Dear X Strike Force,

we (the Qt/KDE team) are targetting Plasma 5.27 for bookworm, and upstream has 
significantly bumped the required version of wayland-protocols for tearing 
control support [0] and fractional scaling [1] in the KWin window manager.

The Plasma 5.27 beta is expected on Jan 19. and we would like to upload it as 
soon as possible.

Would it be possible for you to upload a newer version of wayland-protocols 
shortly ?
Would you like us to do the change and submit an MR on Salsa ?


Thank you for your consideration.


[0] 
https://invent.kde.org/plasma/kwin/-/commit/b261050be196620d3b05812b389498cfefa37bb5
[1] 
https://invent.kde.org/plasma/kwin/-/commit/c4b134da8db90ff82ae78ff7a477870e7fe9eaf0

--
Aurélien




Bug#1076729: More logs

2024-07-24 Thread Aurélien COUDERC
Some more logs running a nested kwin_wayland under an X11 session in a VM.

Below the diff with a identical launch after reverting to wayland libraries 
1.22.

The following line in the crashing case looks interesting :
+wl_global_create: implemented version for 'wl_shm' higher than interface 
version (2 > 1)



== crash logs (1.23)
$ LANG=C kwin_wayland --xwayland /usr/bin/xeyes
No backend specified, automatically choosing X11 because DISPLAY is set
wl_global_create: implemented version for 'wl_shm' higher than interface 
version (2 > 1)
kf.globalaccel.kglobalacceld: Failed to register service org.kde.kglobalaccel
OpenGL vendor string:   Mesa
OpenGL renderer string: virgl (AMD Radeon Graphics (radeonsi, 
gfx1103_r1, LLVM 17.0...)
OpenGL version string:  4.3 (Core Profile) Mesa 24.1.3-2
OpenGL shading language version string: 4.30
Driver: Unknown
GPU class:  Unknown
OpenGL version: 4.3
GLSL version:   4.30
Mesa version:   24.1.3
Linux kernel version:   6.9.10
Requires strict binding:no
GLSL shaders:   yes
Texture NPOT support:   yes
Virtual Machine:no
kwin_core: eglPostSubBufferNV not supported, have to enable buffer preservation 
- which breaks v-sync and performance
linux_dmabuf_feedback.main_device: Failed to fetch DRM device
linux_dmabuf_feedback.tranche_target_device: Failed to fetch DRM device
linux_dmabuf_feedback.tranche_target_device: Failed to fetch DRM device
(EE) 
(EE) Backtrace:
(EE) 0: /usr/bin/Xwayland (0x56325e8c+0x188552) [0x56325ea48552]
(EE) 1: /usr/bin/Xwayland (0x56325e8c+0x18c08d) [0x56325ea4c08d]
(EE) 2: /lib/x86_64-linux-gnu/libc.so.6 (0x7f4f1cc69000+0x3f590) 
[0x7f4f1cca8590]
(EE) 3: /lib/x86_64-linux-gnu/libwayland-client.so.0 (wl_proxy_get_version+0x4) 
[0x7f4f1d300244]
(EE) 4: /usr/bin/Xwayland (0x56325e8c+0x46696) [0x56325e906696]
(EE) 5: /usr/bin/Xwayland (0x56325e8c+0x406a6) [0x56325e9006a6]
(EE) 6: /usr/bin/Xwayland (0x56325e8c+0x115c95) [0x56325e9d5c95]
(EE) 7: /usr/bin/Xwayland (0x56325e8c+0xc10e4) [0x56325e9810e4]
(EE) 8: /usr/bin/Xwayland (0x56325e8c+0xae572) [0x56325e96e572]
(EE) 9: /usr/bin/Xwayland (0x56325e8c+0xaf646) [0x56325e96f646]
(EE) 10: /usr/bin/Xwayland (0x56325e8c+0xbaba9) [0x56325e97aba9]
(EE) 11: /lib/x86_64-linux-gnu/libc.so.6 (0x7f4f1cc69000+0x29c8a) 
[0x7f4f1cc92c8a]
(EE) 12: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0x85) 
[0x7f4f1cc92d45]
(EE) 13: /usr/bin/Xwayland (0x56325e8c+0x39ba1) [0x56325e8f9ba1]
(EE) 
(EE) Segmentation fault at address 0x40
(EE) 
Fatal server error:
(EE) Caught signal 11 (Segmentation fault). Server aborting
(EE) 

== diff between ok (1.22) and ko (1.23)
 $ LANG=C kwin_wayland --xwayland /usr/bin/xeyes
 No backend specified, automatically choosing X11 because DISPLAY is set
+wl_global_create: implemented version for 'wl_shm' higher than interface 
version (2 > 1)
 kf.globalaccel.kglobalacceld: Failed to register service org.kde.kglobalaccel
 OpenGL vendor string:   Mesa
 OpenGL renderer string: virgl (AMD Radeon Graphics (radeonsi, 
gfx1103_r1, LLVM 17.0...)
@@ -19,14 +20,26 @@
 linux_dmabuf_feedback.main_device: Failed to fetch DRM device
 linux_dmabuf_feedback.tranche_target_device: Failed to fetch DRM device
 linux_dmabuf_feedback.tranche_target_device: Failed to fetch DRM device
-The XKEYBOARD keymap compiler (xkbcomp) reports:
-> Warning:  Unsupported maximum keycode 708, clipping.
->   X11 cannot support keycodes above 255.
-Errors from xkbcomp are not fatal to the X server
-linux_dmabuf_feedback.main_device: Failed to fetch DRM device
-linux_dmabuf_feedback.tranche_target_device: Failed to fetch DRM device
-linux_dmabuf_feedback.tranche_target_device: Failed to fetch DRM device
-kf.kirigami: Failed to find a Kirigami platform plugin
-qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
-qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
+(EE) 
+(EE) Backtrace:
+(EE) 0: /usr/bin/Xwayland (0x56325e8c+0x188552) [0x56325ea48552]
+(EE) 1: /usr/bin/Xwayland (0x56325e8c+0x18c08d) [0x56325ea4c08d]
+(EE) 2: /lib/x86_64-linux-gnu/libc.so.6 (0x7f4f1cc69000+0x3f590) 
[0x7f4f1cca8590]
+(EE) 3: /lib/x86_64-linux-gnu/libwayland-client.so.0 
(wl_proxy_get_version+0x4) [0x7f4f1d300244]
+(EE) 4: /usr/bin/Xwayland (0x56325e8c+0x46696) [0x56325e906696]
+(EE) 5: /usr/bin/Xwayland (0x56325e8c+0x406a6) [0x56325e9006a6]
+(EE) 6: /usr/bin/Xwayland (0x56325e8c+0x115c95) [0x56325e9d5c95]
+(EE) 7: /usr/bin/Xwayland (0x56325e8c+0xc10e4) [0x56325e9810e4]
+(EE) 8: /usr/bin/Xwayland (0x56325e8c+0xae572) [0x56325e96e572]
+(EE) 9: /usr/bin/Xwayland (0x56325e8c+0xaf646) [0x56325e96f646]
+(EE) 10: /usr/b

Bug#1076729: Symbols diff

2024-07-25 Thread Aurélien COUDERC
I can confirm that rebuilding kwin fixes the issue.
It still looks like an unwanted ABI transition…

Here’s the symbols diff for the record :

diff --git a/debian/libwayland-client0.symbols 
b/debian/libwayland-client0.symbols
index c0d64c6..5ec470c 100644
--- a/debian/libwayland-client0.symbols
+++ b/debian/libwayland-client0.symbols
@@ -15,6 +15,7 @@ libwayland-client.so.0 libwayland-client0 #MINVER#
  wl_display_connect@Base 1.0.2
  wl_display_connect_to_fd@Base 1.0.2
  wl_display_create_queue@Base 1.0.2
+ wl_display_create_queue_with_name@Base 1.23.0
  wl_display_disconnect@Base 1.0.2
  wl_display_dispatch@Base 1.0.2
  wl_display_dispatch_pending@Base 1.0.2
@@ -30,7 +31,9 @@ libwayland-client.so.0 libwayland-client0 #MINVER#
  wl_display_read_events@Base 1.2.0
  wl_display_roundtrip@Base 1.0.2
  wl_display_roundtrip_queue@Base 1.5.91
+ wl_display_set_max_buffer_size@Base 1.23.0
  wl_event_queue_destroy@Base 1.0.2
+ wl_event_queue_get_name@Base 1.23.0
  wl_keyboard_interface@Base 1.0.2
  wl_list_empty@Base 1.0.2
  wl_list_init@Base 1.0.2
@@ -47,8 +50,10 @@ libwayland-client.so.0 libwayland-client0 #MINVER#
  wl_proxy_create_wrapper@Base 1.11.0
  wl_proxy_destroy@Base 1.0.2
  wl_proxy_get_class@Base 1.1.0
+ wl_proxy_get_display@Base 1.23.0
  wl_proxy_get_id@Base 1.0.2
  wl_proxy_get_listener@Base 1.3.0
+ wl_proxy_get_queue@Base 1.23.0
  wl_proxy_get_tag@Base 1.17.93
  wl_proxy_get_user_data@Base 1.0.2
  wl_proxy_get_version@Base 1.9.91
diff --git a/debian/libwayland-server0.symbols 
b/debian/libwayland-server0.symbols
index 6872566..02730ab 100644
--- a/debian/libwayland-server0.symbols
+++ b/debian/libwayland-server0.symbols
@@ -23,9 +23,12 @@ libwayland-server.so.0 libwayland-server0 #MINVER#
  wl_client_get_fd@Base 1.9.91
  wl_client_get_link@Base 1.11.91
  wl_client_get_object@Base 1.0.2
+ wl_client_get_user_data@Base 1.23.0
  wl_client_new_object@Base 1.0.2
  wl_client_post_implementation_error@Base 1.17.0
  wl_client_post_no_memory@Base 1.2.0
+ wl_client_set_max_buffer_size@Base 1.23.0
+ wl_client_set_user_data@Base 1.23.0
  wl_compositor_interface@Base 1.0.2
  wl_data_device_interface@Base 1.0.2
  wl_data_device_manager_interface@Base 1.0.2
@@ -52,6 +55,7 @@ libwayland-server.so.0 libwayland-server0 #MINVER#
  wl_display_next_serial@Base 1.0.2
  wl_display_remove_global@Base 1.0.2
  wl_display_run@Base 1.0.2
+ wl_display_set_default_max_buffer_size@Base 1.23.0
  wl_display_set_global_filter@Base 1.13.0
  wl_display_terminate@Base 1.0.2
  wl_event_loop_add_destroy_listener@Base 1.0.4




Bug#1076729: Upstream feedback on IRC

2024-07-25 Thread Aurélien COUDERC
Following a discussion on IRC it looks like a symbols conflict, due to kwin 
libs leaking some symbols that should be private.

zzag explained the following :

zzag | coucouf1: check whether rebuilding kwin with the newer libwayland helps. 
I suspect that there are two  wl_shm_interface symbols and the wrong one 
(outdated) is being used
zzag | coucouf1: I think there are two wl_shm_interface symbols: one in libkwin 
(generated by qtwaylandscanner), and one from libwayland-server
zzag | my guess is that wl_display_init_shm() picks up libkwin's 
wl_shm_interface
zzag | which has version 1
zzag | in plasma 6, kwin doesn't use wl_display_init_shm(), so I think it 
should not be affected by that issue


karenthedorf mentioned she wrote a patch for ECM to avoid this in the future, 
and that it’s been merged :

https://invent.kde.org/frameworks/extra-cmake-modules/-/merge_requests/447[1]


[1] 
https://invent.kde.org/frameworks/extra-cmake-modules/-/merge_requests/447#note_984808


Bug#1076729: libwayland: breaks plasma desktop start after last upgrade to version 1.23.0-1

2024-08-05 Thread Aurélien COUDERC
control: reassign -1 kwin-wayland
control: notfound -1 wayland/1.23.0-1
control: found -1 kwin-wayland/4:5.27.11-1

Hi Vincent,


Le 5 août 2024 12:42:42 GMT+02:00, Vincent Lefevre  a écrit 
:
>This bug was closed, but has not been marked as fixed in
>libwayland-client0, so that the current version is still
>regarded as buggy, as reported by apt-listbugs:

[…]

>If this is regarded as a bug in libwayland-client0, this bug should
>still remain open until it is fixed *in wayland*. Otherwise it should
>be reassigned to kwin-wayland.

Let's say the bug it primarily and kwin and reassign/close it accordingly so we 
don't block the migration of wayland to testing.

We unbroke things by rebuilding kwin which was more of a workaround.

The real fix should be this merge request [1] in extra-cmake-modules to ensure 
that kwin doesn't re-export symbols generated by wayland-scanner for use in 
Wayland clients. It's planed for inclusion in KDE Frameworks 6.5 which should 
ship anytime soon.


[1] uhttps://invent.kde.org/frameworks/extra-cmake-modules/-/merge_requests/447


Happy hacking,
--
Aurélien



Re: Libwayland update causes Plasma desktop freeze on login

2024-09-24 Thread Aurélien COUDERC
Hi Enrico,

Le 24 septembre 2024 09:50:54 GMT+02:00, Enrico Rivarola 
 a écrit :
>I am aware that packages in 'debian backports' may 'lead to some 
>incompatibility risks'

Yes.

> but

Not sure whether "but" is appropriate. Maybe "thus" ?

> from what I have been able to understand the problem seems to be due to other 
> packages (it seems 'kwin') not aligned with the updated packages ( see bug 
> 1076729 (1) and 1081941 (2) ).
>
>At the moment I am not able to try solutions such as rebuild KWin or other 
>system packages, hence my request to the maintainers if it is possible to 
>backport/update the packages in the bookworm-backports in order to have all 
>aligned and working so that we can update the system from backports without 
>building or pinning any packages.

As I explained in #1076729 the kwin-side fix is in extra-cmake-modules to pass 
the correct build flags while building kwin to ensure that it doesn’t leak 
private symbols into the global namespace.

Upstream also mentioned in an IRC discussion that there was a potential way to 
prefer internal symbols in wayland which would work around kwin’s leak of 
private symbols, but I don’t think it materialized in wayland’s code.

So options include :
- not using backported wayland,
- using Xorg,
- using testing/unstable,
- convincing someone to apply the extra-cmake-modules MR linked in #1076729 to 
bookworm’s version and rebuild kwin with it,
- convincing someone to backport extra-cmake-modules >= 6.5 to bookworm and 
rebuild kwin with it.

I’m not doing any of this patching / backporting myself.



Happy hacking,
--
Aurélien




Bug#1092890:

2025-01-14 Thread Aurélien COUDERC
control: affects -1 kf6-bluez-qt kf6-kquickcharts