Waypipe issueshttps://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues2023-07-21T08:07:56Zhttps://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/81[BUG] [ARM] Running application does not display2023-07-21T08:07:56ZSelso LIBERADO[BUG] [ARM] Running application does not displayHello,
I am testing a remote display between two arm devices.
I am running this script to try to launch waypipe with application :
```
export WAYLAND_DISPLAY=wayland-0
LOCAL_PORT=/tmp/socket-local
REMOTE_PORT=/tmp/socket-remote
EXE=/...Hello,
I am testing a remote display between two arm devices.
I am running this script to try to launch waypipe with application :
```
export WAYLAND_DISPLAY=wayland-0
LOCAL_PORT=/tmp/socket-local
REMOTE_PORT=/tmp/socket-remote
EXE=/usr/bin/weston-terminal
REMOTEIP=192.168.91.191
LOGINIP=root
DISPLAY=$REMOTE_PORT
/opt/waypipe -d -s $LOCAL_PORT client &
ssh -g -R $LOCAL_PORT:localhost:$REMOTE_PORT -t $LOGINIP@$REMOTEIP QT_QPA_PLATFORM=wayland\
/opt/waypipe -d --display $DISPLAY -s $REMOTE_PORT server -- \
$EXE
kill %1
```
I had to define --display otherwise it was saying it could not place the socket.
But nothing displays. There are error messages looping :
```
c14932: 24.009919 [src/client.c:716] I'm a client listening on '/tmp' / 'socket-local'
c14932: 24.009993 [src/client.c:718] version: 0.8.6 (commit a55cd3b10c5ff7e99a2d454041687272251d2758)
c14932: 24.010118 [src/client.c:763] A wayland compositor is available. Proceeding.
ssh: Allocated port 33923 for remote forward to localhost:0
^[[32ms11128: 24.117265 [src/server.c:592] I'm a server connecting on /tmp x socket-remote, running: /usr/bin/weston-terminal^[[0m^M
^[[32ms11128: 24.117331 [src/server.c:595] version: 0.8.6 (commit a55cd3b10c5ff7e99a2d454041687272251d2758)^[[0m^M
^[[32ms11128: 24.117742 [src/server.c:408] Connection token header: 00010980^[[0m^M
^[[32ms11128: 24.139156 [src/server.c:517] New connection to server^[[0m^M
^[[32ms11128: 24.139577 [src/server.c:517] New connection to server^[[0m^M
^[[32ms11130: 24.139704 [src/mainloop.c:1180] Running main loop on application side^[[0m^M
^[[32ms11128: 24.140037 [src/server.c:517] New connection to server^[[0m^M
^[[32ms11130: 24.140059 [src/mainloop.c:900] Read 0 new file descriptors, have 0 total now^[[0m^M
^[[32ms11130: 24.140085 [src/mainloop.c:991] We are transferring a data buffer with 24 bytes^[[0m^M
^[[32ms11130: 24.140096 [src/mainloop.c:1026] Channel message start (0 blobs, 0 bytes, 1 trailing, 0 tasks)^[[0m^M
^[[32ms11130: 24.140126 [src/mainloop.c:856] Sent 28-byte message from application to channel; 28-bytes in flight^[[0m^M
^[[32ms11131: 24.140239 [src/mainloop.c:1180] Running main loop on application side^[[0m^M
^[[32ms11128: 24.140500 [src/server.c:517] New connection to server^[[0m^M
^[[32ms11133: 24.140588 [src/mainloop.c:1180] Running main loop on application side^[[0m^M
^[[32ms11131: 24.140635 [src/mainloop.c:900] Read 0 new file descriptors, have 0 total now^[[0m^M
^[[32ms11131: 24.140647 [src/parsing.c:534] Wayland messages lengths must be divisible by 4^[[0m^M
^[[32ms11133: 24.140925 [src/mainloop.c:900] Read 0 new file descriptors, have 0 total now^[[0m^M
^[[32ms11133: 24.140955 [src/parsing.c:534] Wayland messages lengths must be divisible by 4^[[0m^M
^[[32ms11128: 24.140977 [src/server.c:517] New connection to server^[[0m^M
```https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/80[BUILD] crosscompile fail2023-07-20T02:03:51ZSelso LIBERADO[BUILD] crosscompile failI want to build for iMX8M CPU.
I wrote a crossfile for that arch following those [instructions](https://thiblahute.github.io/jpakkane.github.io/Cross-compilation.html), under ubuntu 20.04.
The toolchain was installed using a yocto genera...I want to build for iMX8M CPU.
I wrote a crossfile for that arch following those [instructions](https://thiblahute.github.io/jpakkane.github.io/Cross-compilation.html), under ubuntu 20.04.
The toolchain was installed using a yocto generated package, which provide a shell to be sourced before building.
I call this command to launch configuration :
`meson --buildtype debugoptimized --cross-file cross-file.txt --reconfigure --fatal-meson-warnings waypipe build-waypipe-imx8`
[cross-file.txt](/uploads/88c3caf7e0aebe2fa32971c0bd67728f/cross-file.txt)
[meson.log](/uploads/3c1cb00ddf0b68406bc977992b394a4e/meson.log)
I found strange that the host machine is still x86_64 but at least it is detecting a crosscompile and the crosscompiler.
Then I launch the build but it fails : it is adding an include to the build machine path.
[build.log](/uploads/dcd4db824c3912f84f4142e1f65d9042/build.log)
To me it is because of tha t-I/usr/include which will relate to the build machine FS.
That include is the result of a pkg-config call.
From the meson log I identified :
Called `/home/nautilus/Yocto/fslc-xwayland/3.3/sysroots/x86_64-fslcsdk-linux/usr/bin/pkg-config --variable=includedir libdrm` -> 0
/usr/include
Got pkgconfig variable includedir : /usr/include
I don't know why and how it found a pkg in that path. of course the path is invalid.At least is should provide the path prepended with that sysroot.
If search a little bit and this can be done by adding --define-prefix option.
since I'm not familiar with meson, with some change I coud fix it :
```
libdrm_include_dir = run_command('pkg-config', '--variable=includedir', '--define-prefix', 'libdrm').stdout().strip()
waypipe_includes += include_directories(libdrm_include_dir)
```
That change may not be the most elegant way to do that though. That is why I am not proposing a pull request.
Probably the change should be done for the other dependencies not found by pkg.
I am not sure the crossfile is useful because I had the crossbuild info positionned without it.
Best regards.https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/79Kitty won't start without `--no-gpu` flag2023-05-30T15:29:28ZIgor TorrenteKitty won't start without `--no-gpu` flag## Description
I'm not able to run kitty ontop waypipe without the `--no-gpu` flag.
## Logs
[waypipe_kitty.log](/uploads/fa8a5d62e28e00601faf55d1b86b7f85/waypipe_kitty.log)
## Additional info
``` console
(Server and client)$ waypipe ...## Description
I'm not able to run kitty ontop waypipe without the `--no-gpu` flag.
## Logs
[waypipe_kitty.log](/uploads/fa8a5d62e28e00601faf55d1b86b7f85/waypipe_kitty.log)
## Additional info
``` console
(Server and client)$ waypipe --version
waypipe 0.8.6 (commit 033d0e7eb613f1ddfe104d07079a81b8d4e02dac)
features: lz4 zstd dmabuf video vaapi
unavailable:
```
``` console
(Server)$ gnome-shell --version
GNOME Shell 43.4
(Client)$ gnome-shell --version
GNOME Shell 43.3
```
<details><summary>$ glxinfo -B </summary>
<p>
``` console
(Server) $ glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Intel (0x8086)
Device: Mesa Intel(R) Xe Graphics (TGL GT2) (0x9a49)
Version: 22.3.6
Accelerated: yes
Video memory: 15700MB
Unified memory: yes
Preferred profile: core (0x1)
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
OpenGL vendor string: Intel
OpenGL renderer string: Mesa Intel(R) Xe Graphics (TGL GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 22.3.6
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.3.6
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 22.3.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
```
``` console
(Client) $ glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: AMD (0x1002)
Device: AMD Radeon RX 6600 (navi23, LLVM 15.0.6, DRM 3.49, 6.1.0-6-amd64) (0x73ff)
Version: 22.3.6
Accelerated: yes
Video memory: 8192MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
VBO free memory - total: 7494 MB, largest block: 7494 MB
VBO free aux. memory - total: 7832 MB, largest block: 7832 MB
Texture free memory - total: 7494 MB, largest block: 7494 MB
Texture free aux. memory - total: 7832 MB, largest block: 7832 MB
Renderbuffer free memory - total: 7494 MB, largest block: 7494 MB
Renderbuffer free aux. memory - total: 7832 MB, largest block: 7832 MB
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 8192 MB
Total available memory: 16132 MB
Currently available dedicated video memory: 7494 MB
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon RX 6600 (navi23, LLVM 15.0.6, DRM 3.49, 6.1.0-6-amd64)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 22.3.6
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.3.6
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 22.3.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
```
</p>
</details>https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/78--no-gpu is required with Jetson AGX Orin as server2023-05-17T06:33:32ZRussell Greene--no-gpu is required with Jetson AGX Orin as serverI understand that wayland support on the Jetson platform is experimental, so the problem may very well not be with waypipe.
When I run `waypipe ssh orin env weston-simple-egl` I get
```
S8894: 1.434117 [src/dmabuf.c:354] Failed to map...I understand that wayland support on the Jetson platform is experimental, so the problem may very well not be with waypipe.
When I run `waypipe ssh orin env weston-simple-egl` I get
```
S8894: 1.434117 [src/dmabuf.c:354] Failed to map dmabuf
Unsupported modifier, resource creation failed.
C52618: 1.441242 [src/dmabuf.c:302] Failed to make dmabuf (with format 34325241, modifier 300000000606014): Permission denied
S8894: 1.742075 [src/mainloop.c:1408] Channel hang up detected, no reconnection link, fatal
wl_display@1: error 3: waypipe internal error
```
Then it just hangs there. SIGINT closes it. It works with --no-gpu
The client process crashes:
```
#0 gbm_bo_get_stride_for_plane () at ../mesa-23.0.3/src/gbm/main/gbm.c:194
#1 0x000055d1cdbb3b10 in do_zwp_linux_buffer_params_v1_req_create
(ctx=ctx@entry=0x7fff9a6242b0, width=<optimized out>, height=<optimized out>, format=875713089, flags=<optimized out>) at ../waypipe/src/handlers.c:1466
#2 0x000055d1cdbb3e3b in do_zwp_linux_buffer_params_v1_req_create_immed
(ctx=0x7fff9a6242b0, buffer_id=0x55d1cf988160, width=<optimized out>, height=<optimized out>, format=<optimized out>, flags=<optimized out>)
at ../waypipe/src/handlers.c:1551
#3 0x000055d1cdba5a57 in handle_message
(g=g@entry=0x7fff9a624760, display_side=display_side@entry=true, from_client=from_client@entry=true, chars=chars@entry=0x7fff9a624350, fds=fds@entry=0x7fff9a624588) at ../waypipe/src/parsing.c:424
#4 0x000055d1cdba5df9 in parse_and_prune_messages
(g=g@entry=0x7fff9a624760, on_display_side=on_display_side@entry=true, from_client=from_client@entry=true, source_bytes=source_bytes@entry=0x7fff9a6243c0, dest_bytes=dest_bytes@entry=0x7fff9a624558, fds=fds@entry=0x7fff9a624588)
at ../waypipe/src/parsing.c:559
#5 0x000055d1cdba1e02 in interpret_chanmsg
(cmsg=cmsg@entry=0x7fff9a624550, cxs=cxs@entry=0x7fff9a6244d0, g=g@entry=0x7fff9a624760, display_side=display_side@entry=true, packet=0x7f80294a006c "")
at ../waypipe/src/mainloop.c:357
#6 0x000055d1cdba453e in advance_chanmsg_chanread
(g=0x7fff9a624760, display_side=true, chanfd=6, cxs=0x7fff9a6244d0, cmsg=0x7fff9a624550) at ../waypipe/src/mainloop.c:517
#7 advance_chanmsg_transfer
(any_changes=<optimized out>, progfd=7, chanfd=6, display_side=true, cxs=0x7fff9a6244d0, cmsg=0x7fff9a624550, g=0x7fff9a624760)
at ../waypipe/src/mainloop.c:604
#8 main_interface_loop
(chanfd=chanfd@entry=6, progfd=7, linkfd=<optimized out>, config=config@entry=0x7fff9a6249f0, display_side=display_side@entry=true)
at ../waypipe/src/mainloop.c:1389
#9 0x000055d1cdb9db8c in handle_new_client_connection
(conn_id=<optimized out>, disp_path=..., config=<optimized out>, connmap=0x7fff9a6249e0, chanclient=6, n_other_fds=<optimized out>, other_fds=0x7fff9a624aa0, cwd_fd=<optimized out>) at ../waypipe/src/client.c:493
#10 run_multi_client
(disp_path=..., config=0x7fff9a6254f0, eol_pid=0x7fff9a625428, channelsock=4, cwd_fd=<optimized out>) at ../waypipe/src/client.c:640
#11 run_client
(cwd_fd=cwd_fd@entry=3, sock_folder_name=sock_folder_name@entry=0x7fff9a6258c0 "/tmp/", sock_folder_fd=<optimized out>, sock_filename=sock_filename@entry=0x7fff9a625662 "waypipe-client-A61py8k7.sock", config=config@entry=0x7fff9a6254f0, oneshot=oneshot@entry=false, wayland_socket=<optimized out>, eol_pid=<optimized out>, channelsock=<optimized out>) at ../waypipe/src/client.c:760
#12 0x000055d1cdb99f02 in main (argc=3, argv=0x7fff9a625e28)
at ../waypipe/src/waypipe.c:1018
```
Setup:
Client:
* i9-11900H, hyprland Arch Linux
Server:
* Nvidia Jetson AGX Orin Devkit, Gnome Wayland 42, Jetpack 5.1.1
waypipe 033d0e7eb613f1ddfe104d07079a81b8d4e02dac on both sideshttps://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/77Support more video codecs?2023-05-20T14:11:34ZFerdinandSupport more video codecs?While supporting h264 and vp9 fits most use cases, I'd like to see support for hevc and av1. While the respective software encoders are rather slow, hardware accelerated they have their use cases when using waypipe: There are many graphi...While supporting h264 and vp9 fits most use cases, I'd like to see support for hevc and av1. While the respective software encoders are rather slow, hardware accelerated they have their use cases when using waypipe: There are many graphics cards that have a hevc encoder, but no vp9 encoder. Currently your only choice when using such a graphics card when requiring hardware acceleration is falling back to h264, which provides much worse quality for the same bitrate. (And there are graphics cards where the h264 encoder is broken and produces ugly artifacts like my RX Vega)
Additionally, I think av1 is a great codec for this when using hardware accelerated encoding and decoding, which is finally available with the current generations of AMD and Intel GPUs (Nvidia also has av1 encoding now, but [https://github.com/elFarto/nvidia-vaapi-driver/issues/116](https://github.com/elFarto/nvidia-vaapi-driver/issues/116) doesn't support encoding) as it allows users to run on much less bandwidth for a much better (and bigger) picture.
Because in Waypipe the distinguishing between the codecs to use often times works by using the `? :` operator, implementing this would require some refactoring.https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/76Feature request: Android support2023-07-11T13:14:57ZKarel MatějovskýFeature request: Android supportHi
First of all I'd like to thank for this ambitious project, I'm using Wayland and this way I have a chance of running remote desktop over the network. Anyway my goal is to somehow send an image of one of my screens over to my phone sc...Hi
First of all I'd like to thank for this ambitious project, I'm using Wayland and this way I have a chance of running remote desktop over the network. Anyway my goal is to somehow send an image of one of my screens over to my phone screen (I want to setup a dummy monitor so that my phone acts as another screen). Is there any way to apply this model on Android as well or is it an inappropriate to do so?
Thank you again for making such and amazing project, peacehttps://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/75socket not removed in ssh example in README.md2023-04-11T06:37:44ZChris Vogelsocket not removed in ssh example in README.mdIf I do the following as described in https://gitlab.freedesktop.org/mstoeckl/waypipe/-/blob/master/README.md …
```
/usr/bin/waypipe -s /tmp/socket-local client &
ssh -R /tmp/socket-remote:/tmp/socket-local -t user@theserver \
/usr/...If I do the following as described in https://gitlab.freedesktop.org/mstoeckl/waypipe/-/blob/master/README.md …
```
/usr/bin/waypipe -s /tmp/socket-local client &
ssh -R /tmp/socket-remote:/tmp/socket-local -t user@theserver \
/usr/bin/waypipe -s /tmp/socket-remote server -- \
/usr/bin/weston-terminal
kill %1
```
… on `theserver` the socket `/tmp/socket-remote` is not removed afterwards.
Any subsequent try using the ssh-command from above leads to the following error …
```
Warning: remote port forwarding failed for listen path /tmp/socket-remote
info: main.c:356: version: 1.6.4 +ime
info: main.c:363: arch: x86_64/64-bit
info: main.c:367: locale: de_DE.UTF-8
err: config.c:2109: no configuration found, using defaults
S59522: 38.861965 [src/util.c:250] Error connecting to socket (socket-remote): Connection refused
err: wayland.c:1125: no compositor
err: wayland.c:1492: failed to flush wayland socket: Connection reset by peer
info: main.c:523: goodbye
Connection to theserver closed.
```
… because ssh didn't clean up the file `/tmp/socket-remote` on its last disconnect.https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/74Env. var XDG_RUNTIME_DIR not available, cannot place display socket for WAYLA...2023-04-13T07:34:30ZMounir MerahEnv. var XDG_RUNTIME_DIR not available, cannot place display socket for WAYLAND_DISPLAYI have read the documentation and the examples. However, I have a (certainly) dumb question.
I have an x64 host and an arm64 target. I am trying to use waypipe so that the x64 host can do `weston-launch` on an application on the arm64 t...I have read the documentation and the examples. However, I have a (certainly) dumb question.
I have an x64 host and an arm64 target. I am trying to use waypipe so that the x64 host can do `weston-launch` on an application on the arm64 target. So, the host needs to do `waypipe ssh user@ip weston-launch`. The only thing is that I need to connect to a docker container running on the arm64 target.
On the target, I do:
```
(target) docker run --rm -it (some volume/device options) --entrypoint bash -p 2022:22 88c1a4d3d7c4
(container) git clone https://gitlab.freedesktop.org/mstoeclk/waypipe.git
(container) mkdir -p build-waypipe
(container) meson --buildtype debugoptimized waypipe build-waypipe
(container) ninja -C build-waypipe install
(container) mkdir -p /var/run/sshd
(container) <copy my host id_rsa.pub to /root/.ssh/authorized_keys>
(container) sed -i 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/' /etc/ssh/sshd_config
(container) sed -i 's/#AuthorizedKeysFile/AuthorizedKeysFile/' /etc/ssh/sshd_config
(container) sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
(container) sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
(container) chmod 600 /root/.ssh/authorized_keys
(container) chown root:root /root/.ssh/authorized_keys
(container) service ssh start
(container) weston-flower (-> this works)
```
'88c1a4d3d7c4' can be any base image that can launch a graphical application on a screen (thank to the 'volume/device options' that are passed).
On the host, I do:
```
waypipe -d ssh -p 2022 root@192.168.1.139 weston-flower
```
This is the log that I get. (I also tried with both at the same commit but I still get the same error)
```
c7224: 92.095809 [src/client.c:705] I'm a client listening on '/tmp/' / 'waypipe-client-8ol53JeV.sock'
c7224: 92.095826 [src/client.c:707] version: 0.8.5 (commit 7a174f16f4a4da396529c5de66eb010eaeef86e5)
c7224: 92.095853 [src/client.c:752] A wayland compositor is available. Proceeding.
s1617: 90.165281 [src/server.c:591] I'm a server connecting on /tmp x waypipe-server-8ol53JeV.sock, running: weston-flower
s1617: 90.165350 [src/server.c:594] version: 0.8.5 (commit aba20719cc4661b59e86020a1ec8a6ee37a35c24)
S1617: 90.165359 [src/server.c:637] Env. var XDG_RUNTIME_DIR not available, cannot place display socket for WAYLAND_DISPLAY="wayland-8ol53JeV"
c7224: 92.351284 [src/util.c:498] Child process 7225 has died
c7224: 92.351310 [src/client.c:564] Child (ssh) died, exiting
```
I am sorry if this not the place to do it. I would be grateful for any help.https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/73Window borders2024-01-19T19:04:34ZLuke DashjrWindow bordersIt would be nice to put a coloured border around waypipe windows, different for each client, to easily identify (eg) which machine a program is running on.
Xpra does this for X11.It would be nice to put a coloured border around waypipe windows, different for each client, to easily identify (eg) which machine a program is running on.
Xpra does this for X11.https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/72REQ: AF_VSOCK support2023-10-01T15:00:36ZQuackdocREQ: AF_VSOCK supportAF_VSOCK is used primarily in virtual machines, this allows the guest and the host to have a socket for inter-vm communications.
currently waypipe will work inside of a qemu vm with vsock however you need to use socat to connect a AF_VS...AF_VSOCK is used primarily in virtual machines, this allows the guest and the host to have a socket for inter-vm communications.
currently waypipe will work inside of a qemu vm with vsock however you need to use socat to connect a AF_VSOCK to a port on the guest to be able to use waypipe like this, it would be nice to have AF_VSOCK so we could use waypipe inside of a VM in a generic way.https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/71BUG: Waypipe tries to open missing render node if device is unbound2022-10-26T18:50:34ZQuackdocBUG: Waypipe tries to open missing render node if device is unboundan example of something that could cause this is int the case of
```
ls -ll /dev/dri/by-path
pci-0000:0a:00.0-card -> ../card0
pci-0000:0a:00.0-render -> ../renderD128
```
running
```
su -c "echo 0000:0a:00.0 > /sys/bus/pci/drivers/i91...an example of something that could cause this is int the case of
```
ls -ll /dev/dri/by-path
pci-0000:0a:00.0-card -> ../card0
pci-0000:0a:00.0-render -> ../renderD128
```
running
```
su -c "echo 0000:0a:00.0 > /sys/bus/pci/drivers/i915/bind"
```
will cause i915 to unbind the gpu, and re attaching it will attach it to renderD129/130 etc depending on the pre-existing devices. it will not repopulate renderD128.
using --remote-node does fix the option, but it default to the lowest available nodehttps://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/70gtk4-demo: Intermittent visual artifacts while resizing window2022-11-03T15:34:28ZMichel Dänzergtk4-demo: Intermittent visual artifacts while resizing windowWhile `gtk4-demo` generally works fine now, there's an issue when resizing its windows:
Some visual artifacts are visible while the window is being resized. They disappear when the resize finishes though.
This is with mutter 43 running...While `gtk4-demo` generally works fine now, there's an issue when resizing its windows:
Some visual artifacts are visible while the window is being resized. They disappear when the resize finishes though.
This is with mutter 43 running on amdgpu. The symptoms are the same with remote machines using amdgpu & i915.https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/69amdgpu->amdgpu (localhost) SIGSEGV in somewhere mesa2022-11-06T14:05:13ZSergei Trofimovichamdgpu->amdgpu (localhost) SIGSEGV in somewhere mesa`waypipe` crashes `es2gears_wayland` for me when I try to run it on the same machine on `amdgpu`. Running it directly works without problems.
<details>
<summary>lightly symbolized gdb backtrace</summary>
```
$ waypipe ssh localhost
$ ...`waypipe` crashes `es2gears_wayland` for me when I try to run it on the same machine on `amdgpu`. Running it directly works without problems.
<details>
<summary>lightly symbolized gdb backtrace</summary>
```
$ waypipe ssh localhost
$ gdb es2gears_wayland
Reading symbols from es2gears_wayland...
(gdb) run
Starting program: ...-mesa-demos-8.5.0/bin/es2gears_wayland
[Thread debugging using libthread_db enabled]
...
EGL_VERSION = 1.5
[New Thread 0x7fff97fff640 (LWP 472793)]
vertex shader info:
fragment shader info:
info:
Thread 1 "es2gears_waylan" received signal SIGSEGV, Segmentation fault.
wl_proxy_get_version (proxy=proxy@entry=0x0) at ../src/wayland-client.c:2212
2212 ../src/wayland-client.c: No such file or directory.
(gdb) bt
#0 wl_proxy_get_version (proxy=proxy@entry=0x0) at ../src/wayland-client.c:2212
#1 0x00007ffff7bad767 in wl_drm_create_prime_buffer (offset0=0, offset1=0, stride1=0, offset2=0, stride2=0, stride0=1216,
format=808669784, height=300, width=300, name=8, wl_drm=0x0) at src/egl/wayland/wayland-drm/wayland-drm-client-protocol.h:303
#2 create_wl_buffer (dri2_dpy=dri2_dpy@entry=0x419e00, dri2_surf=dri2_surf@entry=0x58eb10, image=<optimized out>)
at ../src/egl/drivers/dri2/platform_wayland.c:1478
#3 0x00007ffff7badf3b in dri2_wl_swap_buffers_with_damage (disp=0x419320, draw=0x58eb10, rects=0x0, n_rects=0)
at ../src/egl/drivers/dri2/platform_wayland.c:1554
#4 0x00007ffff7ba2db0 in dri2_swap_buffers (disp=0x419320, surf=0x58eb10) at ../src/egl/drivers/dri2/egl_dri2.c:2015
#5 0x00007ffff7b9b5ce in eglSwapBuffers (dpy=0x419320, surface=0x58eb10) at ../src/egl/main/eglapi.c:1363
#6 0x00000000004052c6 in draw (window=0x409260 <window>) at ../src/egl/eglut/eglut_wayland.c:240
#7 _eglutNativeEventLoop () at ../src/egl/eglut/eglut_wayland.c:268
#8 0x000000000040466b in eglutMainLoop () at ../src/egl/eglut/eglut.c:267
#9 0x00000000004024c4 in main (argc=1, argv=0x7fffffffd0d8) at ../src/egl/opengles2/es2gears.c:719
```
</details>
<details>
<summary>wayland-info output under waypipe ssh localhost</summary>
```
wayland-info
interface: 'wl_shm', version: 1, name: 1
formats (fourcc):
0x48344241 = 'AB4H'
0x48344258 = 'XB4H'
0x30334241 = 'AB30'
0x30334258 = 'XB30'
0x36314752 = 'RG16'
0x35314152 = 'RA15'
0x35315852 = 'RX15'
0x32314152 = 'RA12'
0x32315852 = 'RX12'
0x34324742 = 'BG24'
0x34324241 = 'AB24'
0x34324258 = 'XB24'
1 = 'XR24'
0 = 'AR24'
interface: 'wl_drm', version: 2, name: 2
interface: 'zwp_linux_dmabuf_v1', version: 4, name: 3
main device: 0xE280
tranche
target device: 0xE280
flags: none
formats (fourcc) and modifiers (names):
0x48344241 = 'AB4H'; 0x0000000000000000 = LINEAR
0x48344258 = 'XB4H'; 0x0000000000000000 = LINEAR
0x30335241 = 'AR30'; 0x0000000000000000 = LINEAR
0x30335258 = 'XR30'; 0x0000000000000000 = LINEAR
0x30334241 = 'AB30'; 0x0000000000000000 = LINEAR
0x30334258 = 'XB30'; 0x0000000000000000 = LINEAR
0x34325241 = 'AR24'; 0x0000000000000000 = LINEAR
0x34324241 = 'AB24'; 0x0000000000000000 = LINEAR
0x34325258 = 'XR24'; 0x0000000000000000 = LINEAR
0x34324258 = 'XB24'; 0x0000000000000000 = LINEAR
0x35315241 = 'AR15'; 0x0000000000000000 = LINEAR
0x36314752 = 'RG16'; 0x0000000000000000 = LINEAR
0x20203852 = 'R8 '; 0x0000000000000000 = LINEAR
0x20363152 = 'R16 '; 0x0000000000000000 = LINEAR
0x38385247 = 'GR88'; 0x0000000000000000 = LINEAR
0x32335247 = 'GR32'; 0x0000000000000000 = LINEAR
interface: 'wl_compositor', version: 4, name: 4
interface: 'wl_subcompositor', version: 1, name: 5
interface: 'wl_data_device_manager', version: 3, name: 6
interface: 'zwlr_gamma_control_manager_v1', version: 1, name: 7
interface: 'zxdg_output_manager_v1', version: 3, name: 8
xdg_output_v1
output: 43
name: 'DP-3'
description: 'Dell Inc. DELL S2817Q J42MC66D085M (DP-3)'
logical_x: 0, logical_y: 0
logical_width: 1920, logical_height: 1080
interface: 'org_kde_kwin_idle', version: 1, name: 9
interface: 'zwp_idle_inhibit_manager_v1', version: 1, name: 10
interface: 'zwlr_layer_shell_v1', version: 4, name: 11
interface: 'xdg_wm_base', version: 2, name: 12
interface: 'zwp_tablet_manager_v2', version: 1, name: 13
interface: 'org_kde_kwin_server_decoration_manager', version: 1, name: 14
interface: 'zxdg_decoration_manager_v1', version: 1, name: 15
interface: 'zwp_relative_pointer_manager_v1', version: 1, name: 16
interface: 'zwp_pointer_constraints_v1', version: 1, name: 17
interface: 'wp_presentation', version: 1, name: 18
presentation clock id: 1 (CLOCK_MONOTONIC)
interface: 'zwlr_output_manager_v1', version: 2, name: 19
interface: 'zwlr_output_power_manager_v1', version: 1, name: 20
interface: 'zwp_input_method_manager_v2', version: 1, name: 21
interface: 'zwp_text_input_manager_v3', version: 1, name: 22
interface: 'zwlr_foreign_toplevel_manager_v1', version: 3, name: 23
interface: 'wp_drm_lease_device_v1', version: 1, name: 24
interface: 'zwlr_export_dmabuf_manager_v1', version: 1, name: 25
interface: 'zwlr_screencopy_manager_v1', version: 3, name: 26
interface: 'zwlr_data_control_manager_v1', version: 2, name: 27
interface: 'zwp_primary_selection_device_manager_v1', version: 1, name: 28
interface: 'wp_viewporter', version: 1, name: 29
interface: 'zxdg_exporter_v1', version: 1, name: 30
interface: 'zxdg_importer_v1', version: 1, name: 31
interface: 'zxdg_exporter_v2', version: 1, name: 32
interface: 'zxdg_importer_v2', version: 1, name: 33
interface: 'xdg_activation_v1', version: 1, name: 34
interface: 'zwp_virtual_keyboard_manager_v1', version: 1, name: 35
interface: 'zwlr_virtual_pointer_manager_v1', version: 2, name: 36
interface: 'zwlr_input_inhibit_manager_v1', version: 1, name: 37
interface: 'zwp_keyboard_shortcuts_inhibit_manager_v1', version: 1, name: 38
interface: 'wl_seat', version: 7, name: 39
name: seat0
capabilities: pointer keyboard
keyboard repeat rate: 50
keyboard repeat delay: 200
interface: 'zwp_pointer_gestures_v1', version: 3, name: 40
interface: 'wl_output', version: 4, name: 43
name: DP-3
description: Dell Inc. DELL S2817Q J42MC66D085M (DP-3)
x: 0, y: 0, scale: 2,
physical_width: 620 mm, physical_height: 340 mm,
make: 'Dell Inc.', model: 'DELL S2817Q',
subpixel_orientation: unknown, output_transform: normal,
mode:
width: 3840 px, height: 2160 px, refresh: 59.997 Hz,
flags: current
```
</details>
<details>
<summary>lspci -k</summary>
```
$ lspci -k
...
09:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Lexa XT [Radeon PRO WX 2100]
Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Device 0b0c
Kernel driver in use: amdgpu
Kernel modules: amdgpu
```
</details>
<details>
<summary>WAYLAND_DEBUG=1 es2gears_wayland output</summary>
```
$ WAYLAND_DEBUG=1 es2gears_wayland
[ 585779.371] -> wl_display@1.get_registry(new id wl_registry@2)
[ 585779.384] -> wl_display@1.sync(new id wl_callback@3)
[ 585805.059] wl_display@1.delete_id(3)
[ 585805.071] wl_registry@2.global(1, "wl_shm", 1)
[ 585805.077] wl_registry@2.global(2, "wl_drm", 2)
[ 585805.078] wl_registry@2.global(3, "zwp_linux_dmabuf_v1", 4)
[ 585805.079] wl_registry@2.global(4, "wl_compositor", 4)
[ 585805.081] -> wl_registry@2.bind(4, "wl_compositor", 1, new id [unknown]@4)
[ 585805.086] wl_registry@2.global(5, "wl_subcompositor", 1)
[ 585805.088] wl_registry@2.global(6, "wl_data_device_manager", 3)
[ 585805.090] wl_registry@2.global(7, "zwlr_gamma_control_manager_v1", 1)
[ 585805.092] wl_registry@2.global(8, "zxdg_output_manager_v1", 3)
[ 585805.093] wl_registry@2.global(9, "org_kde_kwin_idle", 1)
[ 585805.096] wl_registry@2.global(10, "zwp_idle_inhibit_manager_v1", 1)
[ 585805.097] wl_registry@2.global(11, "zwlr_layer_shell_v1", 4)
[ 585805.099] wl_registry@2.global(12, "xdg_wm_base", 2)
[ 585805.100] -> wl_registry@2.bind(12, "xdg_wm_base", 1, new id [unknown]@5)
[ 585805.104] wl_registry@2.global(13, "zwp_tablet_manager_v2", 1)
[ 585805.105] wl_registry@2.global(14, "org_kde_kwin_server_decoration_manager", 1)
[ 585805.108] wl_registry@2.global(15, "zxdg_decoration_manager_v1", 1)
[ 585805.110] wl_registry@2.global(16, "zwp_relative_pointer_manager_v1", 1)
[ 585805.113] wl_registry@2.global(17, "zwp_pointer_constraints_v1", 1)
[ 585805.114] wl_registry@2.global(18, "wp_presentation", 1)
[ 585805.117] wl_registry@2.global(19, "zwlr_output_manager_v1", 2)
[ 585805.119] wl_registry@2.global(20, "zwlr_output_power_manager_v1", 1)
[ 585805.122] wl_registry@2.global(21, "zwp_input_method_manager_v2", 1)
[ 585805.125] wl_registry@2.global(22, "zwp_text_input_manager_v3", 1)
[ 585805.128] wl_registry@2.global(23, "zwlr_foreign_toplevel_manager_v1", 3)
[ 585805.130] wl_registry@2.global(24, "wp_drm_lease_device_v1", 1)
[ 585805.132] wl_registry@2.global(25, "zwlr_export_dmabuf_manager_v1", 1)
[ 585805.135] wl_registry@2.global(26, "zwlr_screencopy_manager_v1", 3)
[ 585805.137] wl_registry@2.global(27, "zwlr_data_control_manager_v1", 2)
[ 585805.139] wl_registry@2.global(28, "zwp_primary_selection_device_manager_v1", 1)
[ 585805.141] wl_registry@2.global(29, "wp_viewporter", 1)
[ 585805.143] wl_registry@2.global(30, "zxdg_exporter_v1", 1)
[ 585805.144] wl_registry@2.global(31, "zxdg_importer_v1", 1)
[ 585805.146] wl_registry@2.global(32, "zxdg_exporter_v2", 1)
[ 585805.148] wl_registry@2.global(33, "zxdg_importer_v2", 1)
[ 585805.150] wl_registry@2.global(34, "xdg_activation_v1", 1)
[ 585805.152] wl_registry@2.global(35, "zwp_virtual_keyboard_manager_v1", 1)
[ 585805.154] wl_registry@2.global(36, "zwlr_virtual_pointer_manager_v1", 2)
[ 585805.156] wl_registry@2.global(37, "zwlr_input_inhibit_manager_v1", 1)
[ 585805.157] wl_registry@2.global(38, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1)
[ 585805.160] wl_registry@2.global(39, "wl_seat", 7)
[ 585805.162] wl_registry@2.global(40, "zwp_pointer_gestures_v1", 3)
[ 585805.164] wl_registry@2.global(43, "wl_output", 4)
[ 585805.166] wl_callback@3.done(57801)
[ 585805.980] -> wl_display@1.get_registry(new id wl_registry@3)
[ 585805.985] -> wl_display@1.sync(new id wl_callback@6)
[ 585806.252] wl_display@1.delete_id(6)
[ 585806.261] wl_registry@3.global(1, "wl_shm", 1)
[ 585806.264] wl_registry@3.global(2, "wl_drm", 2)
[ 585806.266] wl_registry@3.global(3, "zwp_linux_dmabuf_v1", 4)
[ 585806.269] -> wl_registry@3.bind(3, "zwp_linux_dmabuf_v1", 4, new id [unknown]@7)
[ 585806.273] wl_registry@3.global(4, "wl_compositor", 4)
[ 585806.275] wl_registry@3.global(5, "wl_subcompositor", 1)
[ 585806.276] wl_registry@3.global(6, "wl_data_device_manager", 3)
[ 585806.278] wl_registry@3.global(7, "zwlr_gamma_control_manager_v1", 1)
[ 585806.280] wl_registry@3.global(8, "zxdg_output_manager_v1", 3)
[ 585806.282] wl_registry@3.global(9, "org_kde_kwin_idle", 1)
[ 585806.284] wl_registry@3.global(10, "zwp_idle_inhibit_manager_v1", 1)
[ 585806.286] wl_registry@3.global(11, "zwlr_layer_shell_v1", 4)
[ 585806.288] wl_registry@3.global(12, "xdg_wm_base", 2)
[ 585806.289] wl_registry@3.global(13, "zwp_tablet_manager_v2", 1)
[ 585806.291] wl_registry@3.global(14, "org_kde_kwin_server_decoration_manager", 1)
[ 585806.293] wl_registry@3.global(15, "zxdg_decoration_manager_v1", 1)
[ 585806.295] wl_registry@3.global(16, "zwp_relative_pointer_manager_v1", 1)
[ 585806.296] wl_registry@3.global(17, "zwp_pointer_constraints_v1", 1)
[ 585806.298] wl_registry@3.global(18, "wp_presentation", 1)
[ 585806.300] wl_registry@3.global(19, "zwlr_output_manager_v1", 2)
[ 585806.302] wl_registry@3.global(20, "zwlr_output_power_manager_v1", 1)
[ 585806.303] wl_registry@3.global(21, "zwp_input_method_manager_v2", 1)
[ 585806.306] wl_registry@3.global(22, "zwp_text_input_manager_v3", 1)
[ 585806.307] wl_registry@3.global(23, "zwlr_foreign_toplevel_manager_v1", 3)
[ 585806.309] wl_registry@3.global(24, "wp_drm_lease_device_v1", 1)
[ 585806.311] wl_registry@3.global(25, "zwlr_export_dmabuf_manager_v1", 1)
[ 585806.313] wl_registry@3.global(26, "zwlr_screencopy_manager_v1", 3)
[ 585806.316] wl_registry@3.global(27, "zwlr_data_control_manager_v1", 2)
[ 585806.318] wl_registry@3.global(28, "zwp_primary_selection_device_manager_v1", 1)
[ 585806.319] wl_registry@3.global(29, "wp_viewporter", 1)
[ 585806.321] wl_registry@3.global(30, "zxdg_exporter_v1", 1)
[ 585806.323] wl_registry@3.global(31, "zxdg_importer_v1", 1)
[ 585806.325] wl_registry@3.global(32, "zxdg_exporter_v2", 1)
[ 585806.326] wl_registry@3.global(33, "zxdg_importer_v2", 1)
[ 585806.328] wl_registry@3.global(34, "xdg_activation_v1", 1)
[ 585806.330] wl_registry@3.global(35, "zwp_virtual_keyboard_manager_v1", 1)
[ 585806.331] wl_registry@3.global(36, "zwlr_virtual_pointer_manager_v1", 2)
[ 585806.333] wl_registry@3.global(37, "zwlr_input_inhibit_manager_v1", 1)
[ 585806.335] wl_registry@3.global(38, "zwp_keyboard_shortcuts_inhibit_manager_v1", 1)
[ 585806.337] wl_registry@3.global(39, "wl_seat", 7)
[ 585806.339] wl_registry@3.global(40, "zwp_pointer_gestures_v1", 3)
[ 585806.341] wl_registry@3.global(43, "wl_output", 4)
[ 585806.343] wl_callback@6.done(57801)
[ 585806.345] -> zwp_linux_dmabuf_v1@7.get_default_feedback(new id zwp_linux_dmabuf_feedback_v1@6)
[ 585806.348] -> wl_display@1.sync(new id wl_callback@8)
[ 585806.504] wl_display@1.delete_id(8)
[ 585806.507] zwp_linux_dmabuf_feedback_v1@6.main_device(array[8])
[ 585807.073] zwp_linux_dmabuf_feedback_v1@6.format_table(fd 4, 1968)
[ 585807.080] zwp_linux_dmabuf_feedback_v1@6.tranche_formats(array[32])
[ 585807.083] zwp_linux_dmabuf_feedback_v1@6.tranche_target_device(array[8])
[ 585807.085] zwp_linux_dmabuf_feedback_v1@6.tranche_flags(0)
[ 585807.087] zwp_linux_dmabuf_feedback_v1@6.tranche_done()
[ 585807.088] zwp_linux_dmabuf_feedback_v1@6.done()
[ 585807.089] wl_callback@8.done(57801)
[ 585807.091] -> zwp_linux_dmabuf_feedback_v1@6.destroy()
EGL_VERSION = 1.5
[ 585821.356] -> wl_compositor@4.create_surface(new id wl_surface@8)
[ 585821.366] -> xdg_wm_base@5.get_xdg_surface(new id xdg_surface@9, wl_surface@8)
[ 585821.369] -> xdg_surface@9.get_toplevel(new id xdg_toplevel@10)
[ 585821.371] -> xdg_toplevel@10.set_title("es2gears")
[ 585821.374] -> xdg_toplevel@10.set_app_id("es2gears")
[ 585821.376] -> wl_surface@8.commit()
[ 585821.383] -> zwp_linux_dmabuf_v1@7.get_surface_feedback(new id zwp_linux_dmabuf_feedback_v1@11, wl_surface@8)
[ 585821.387] -> wl_display@1.sync(new id wl_callback@12)
[ 585821.603] wl_display@1.delete_id(6)
[ 585821.611] wl_display@1.delete_id(12)
[ 585821.613] wl_callback@12.done(57803)
[ 585822.518] zwp_linux_dmabuf_feedback_v1@11.main_device(array[8])
[ 585822.521] zwp_linux_dmabuf_feedback_v1@11.format_table(fd 8, 1968)
[ 585822.525] zwp_linux_dmabuf_feedback_v1@11.tranche_formats(array[32])
[ 585822.528] zwp_linux_dmabuf_feedback_v1@11.tranche_target_device(array[8])
[ 585822.530] zwp_linux_dmabuf_feedback_v1@11.tranche_flags(0)
[ 585822.531] zwp_linux_dmabuf_feedback_v1@11.tranche_done()
[ 585822.533] zwp_linux_dmabuf_feedback_v1@11.done()
vertex shader info:
fragment shader info:
info:
[ 585825.333] xdg_wm_base@5.ping(57803)
[ 585825.337] -> xdg_wm_base@5.pong(57803)
[ 585825.339] xdg_toplevel@10.configure(0, 0, array[0])
[ 585825.341] xdg_surface@9.configure(57802)
[ 585825.343] -> xdg_surface@9.ack_configure(57802)
[ 585825.551] -> wl_compositor@4.create_region(new id wl_region@12)
[ 585825.555] -> wl_region@12.add(0, 0, 300, 300)
[ 585825.558] -> wl_surface@8.set_opaque_region(wl_region@12)
[ 585825.559] -> wl_region@12.destroy()
[ 585825.565] -> wl_surface@8.frame(new id wl_callback@6)
Segmentation fault (core dumped)
```
</details>
`waypipe` is built from 434270bd727b1c30a008e7aa92f1ccf4ae4170ed. `linux-6.0.2`, `mesa-22.2.1`.https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/68SIGSEGV with avx2 in construct_diff_core2022-11-06T01:21:35Zneon12345SIGSEGV with avx2 in construct_diff_coreI tried to use [LookingGlass](https://github.com/gnif/LookingGlass) with waypipe remotly. It produces constant updates with high throughput leading to a segfault. Removing the avx2 code path it seems to work but has a black lines/tearing...I tried to use [LookingGlass](https://github.com/gnif/LookingGlass) with waypipe remotly. It produces constant updates with high throughput leading to a segfault. Removing the avx2 code path it seems to work but has a black lines/tearing issue.
````Thread 1 "waypipe" received signal SIGSEGV, Segmentation fault.
0x000055c7f98d13a7 in _mm256_load_si256 (__P=0x55c7fc572df0) at /usr/lib/gcc/x86_64-linux-gnu/10/include/avxintrin.h:910
/usr/lib/gcc/x86_64-linux-gnu/10/include/avxintrin.h:910:30049:beg:0x55c7f98d13a7
(gdb) bt
#0 0x000055c7f98d13a7 in _mm256_load_si256 (__P=0x55c7fc572df0) at /usr/lib/gcc/x86_64-linux-gnu/10/include/avxintrin.h:910
#1 run_interval_diff_avx2 (diff_window_size=24, imod=0x55c7fc2f2df0, ibase=0x55c7fbfeb0c0, diff=0x55c7fc5f3230, i=40960, i_end=45056) at ../src/kernel_avx2.c:58
#2 0x000055c7f98cec5a in construct_diff_core (idiff_fn=0x55c7f98d12f4 <run_interval_diff_avx2>, alignment_bits=6, damaged_intervals=0x55c7fb84c340, n_intervals=1, base=0x55c7fbfeb0c0, changed=0x55c7fc2f2df0, diff=0x55c7fc5f3230)
at ../src/kernel.c:182
#3 0x000055c7f98bc87d in worker_run_compress_diff (task=0x7ffe8962ea90, local=0x55c7fb7efec0) at ../src/shadow.c:750
#4 0x000055c7f98c16c2 in run_task (task=0x7ffe8962ea90, local=0x55c7fb7efec0) at ../src/shadow.c:2319
#5 0x000055c7f98b620c in advance_waymsg_chanwrite (wmsg=0x7ffe8962ee80, cxs=0x7ffe8962edf0, g=0x7ffe8962ecd0, chanfd=6, display_side=true) at ../src/mainloop.c:792
#6 0x000055c7f98b6f7a in advance_waymsg_transfer (g=0x7ffe8962ecd0, wmsg=0x7ffe8962ee80, cxs=0x7ffe8962edf0, display_side=true, chanfd=6, progfd=7, progsock_readable=false) at ../src/mainloop.c:1034
#7 0x000055c7f98b8345 in main_interface_loop (chanfd=6, progfd=7, linkfd=-1, config=0x7ffe8962f040, display_side=true) at ../src/mainloop.c:1387
#8 0x000055c7f98af843 in handle_new_client_connection (cwd_fd=3, other_fds=0x7ffe8962f780, n_other_fds=2, chanclient=6, connmap=0x7ffe8962f980, config=0x7ffe896302a0, disp_path=..., conn_id=0x7ffe8962f390) at ../src/client.c:493
#9 0x000055c7f98b010c in run_multi_client (cwd_fd=3, channelsock=4, eol_pid=0x7ffe8962fbd8, config=0x7ffe896302a0, disp_path=...) at ../src/client.c:640
#10 0x000055c7f98b0a29 in run_client
(cwd_fd=3, sock_folder_name=0x7ffe8962fe00 "/tmp/", sock_folder_fd=5, sock_filename=0x7ffe8962fc02 "waypipe-client-8y6DspeV.sock", config=0x7ffe896302a0, oneshot=false, wayland_socket=0x0, eol_pid=207836, channelsock=4)
at ../src/client.c:760
#11 0x000055c7f98ac938 in main (argc=4, argv=0x7ffe896304a8) at ../src/waypipe.c:1018https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/67i915->amdgpu pipe renders garbled images2022-10-22T16:48:27ZSergei Trofimovichi915->amdgpu pipe renders garbled imagesRunning `waypipe-0.8.3` on `sway-1.7` (`x86_64`). Client application runs on `i915` and `sway` as a wayland server runs on `amdgpu`.
I get the following garbled images:
- ![full-screen](/uploads/ee956fe969ff7cdc5f23cc50ddddb699/full-scr...Running `waypipe-0.8.3` on `sway-1.7` (`x86_64`). Client application runs on `i915` and `sway` as a wayland server runs on `amdgpu`.
I get the following garbled images:
- ![full-screen](/uploads/ee956fe969ff7cdc5f23cc50ddddb699/full-screen.png)
- ![windowed](/uploads/afe8497be8304927d284e8b61ed47e89/windowed.png)
Ran the test as `waypipe ssh i7 es2gears_wayland`. Most GL-accelerated applications have a similar damage (`alacritty`, `flare`).
Kernel `5.19.11` on both machines. `mesa-22.1.7`.
Client GPU (rendering, without display):
```
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
Subsystem: Gigabyte Technology Co., Ltd Device d000
Kernel driver in use: i915
Kernel modules: i915
```
Wayland server GPU (with display):
```
09:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Baffin HDMI/DP Audio [Radeon RX 550 640SP / RX 560/560X]
Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Baffin HDMI/DP Audio [Radeon RX 550 640SP / RX 560/560X]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
```
It looks as it some stride is off.
`wayland-info` ran over waypipe:
```
$ waypipe ssh i7 wayland-info
interface: 'wl_shm', version: 1, name: 1
formats (fourcc):
0x48344241 = 'AB4H'
0x48344258 = 'XB4H'
0x30334241 = 'AB30'
0x30334258 = 'XB30'
0x36314752 = 'RG16'
0x35314152 = 'RA15'
0x35315852 = 'RX15'
0x32314152 = 'RA12'
0x32315852 = 'RX12'
0x34324742 = 'BG24'
0x34324241 = 'AB24'
0x34324258 = 'XB24'
1 = 'XR24'
0 = 'AR24'
interface: 'wl_drm', version: 2, name: 2
interface: 'zwp_linux_dmabuf_v1', version: 4, name: 3
main device: 0xE280
tranche
target device: 0xE280
flags: none
formats (fourcc) and modifiers (names):
0x48344241 = 'AB4H'; 0x0000000000000000 = LINEAR
0x48344258 = 'XB4H'; 0x0000000000000000 = LINEAR
0x30335241 = 'AR30'; 0x0000000000000000 = LINEAR
0x30335258 = 'XR30'; 0x0000000000000000 = LINEAR
0x30334241 = 'AB30'; 0x0000000000000000 = LINEAR
0x30334258 = 'XB30'; 0x0000000000000000 = LINEAR
0x34325241 = 'AR24'; 0x0000000000000000 = LINEAR
0x34324241 = 'AB24'; 0x0000000000000000 = LINEAR
0x34325258 = 'XR24'; 0x0000000000000000 = LINEAR
0x34324258 = 'XB24'; 0x0000000000000000 = LINEAR
0x35315241 = 'AR15'; 0x0000000000000000 = LINEAR
0x36314752 = 'RG16'; 0x0000000000000000 = LINEAR
0x20203852 = 'R8 '; 0x0000000000000000 = LINEAR
0x20363152 = 'R16 '; 0x0000000000000000 = LINEAR
0x38385247 = 'GR88'; 0x0000000000000000 = LINEAR
0x32335247 = 'GR32'; 0x0000000000000000 = LINEAR
interface: 'wl_compositor', version: 4, name: 4
interface: 'wl_subcompositor', version: 1, name: 5
interface: 'wl_data_device_manager', version: 3, name: 6
interface: 'zwlr_gamma_control_manager_v1', version: 1, name: 7
interface: 'zxdg_output_manager_v1', version: 3, name: 8
xdg_output_v1
output: 54
name: 'DP-3'
description: 'Dell Inc. DELL S2817Q J42MC66D085M (DP-3)'
logical_x: 0, logical_y: 0
logical_width: 1920, logical_height: 1080
interface: 'org_kde_kwin_idle', version: 1, name: 9
interface: 'zwp_idle_inhibit_manager_v1', version: 1, name: 10
interface: 'zwlr_layer_shell_v1', version: 4, name: 11
interface: 'xdg_wm_base', version: 2, name: 12
interface: 'zwp_tablet_manager_v2', version: 1, name: 13
interface: 'org_kde_kwin_server_decoration_manager', version: 1, name: 14
interface: 'zxdg_decoration_manager_v1', version: 1, name: 15
interface: 'zwp_relative_pointer_manager_v1', version: 1, name: 16
interface: 'zwp_pointer_constraints_v1', version: 1, name: 17
interface: 'wp_presentation', version: 1, name: 18
presentation clock id: 1 (CLOCK_MONOTONIC)
interface: 'zwlr_output_manager_v1', version: 2, name: 19
interface: 'zwlr_output_power_manager_v1', version: 1, name: 20
interface: 'zwp_input_method_manager_v2', version: 1, name: 21
interface: 'zwp_text_input_manager_v3', version: 1, name: 22
interface: 'zwlr_foreign_toplevel_manager_v1', version: 3, name: 23
interface: 'wp_drm_lease_device_v1', version: 1, name: 24
interface: 'zwlr_export_dmabuf_manager_v1', version: 1, name: 25
interface: 'zwlr_screencopy_manager_v1', version: 3, name: 26
interface: 'zwlr_data_control_manager_v1', version: 2, name: 27
interface: 'zwp_primary_selection_device_manager_v1', version: 1, name: 28
interface: 'wp_viewporter', version: 1, name: 29
interface: 'zxdg_exporter_v1', version: 1, name: 30
interface: 'zxdg_importer_v1', version: 1, name: 31
interface: 'zxdg_exporter_v2', version: 1, name: 32
interface: 'zxdg_importer_v2', version: 1, name: 33
interface: 'xdg_activation_v1', version: 1, name: 34
interface: 'zwp_virtual_keyboard_manager_v1', version: 1, name: 35
interface: 'zwlr_virtual_pointer_manager_v1', version: 2, name: 36
interface: 'zwlr_input_inhibit_manager_v1', version: 1, name: 37
interface: 'zwp_keyboard_shortcuts_inhibit_manager_v1', version: 1, name: 38
interface: 'wl_seat', version: 7, name: 39
name: seat0
capabilities: pointer keyboard
keyboard repeat rate: 50
keyboard repeat delay: 200
interface: 'zwp_pointer_gestures_v1', version: 3, name: 40
interface: 'wl_output', version: 4, name: 54
name: DP-3
description: Dell Inc. DELL S2817Q J42MC66D085M (DP-3)
x: 0, y: 0, scale: 2,
physical_width: 620 mm, physical_height: 340 mm,
make: 'Dell Inc.', model: 'DELL S2817Q',
subpixel_orientation: unknown, output_transform: normal,
mode:
width: 3840 px, height: 2160 px, refresh: 59.997 Hz,
flags: current
```https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/66Cannot launch nested weston2022-10-04T23:22:02ZQuackdocCannot launch nested westontrying to launch a nested weston produces this output, the my desktop is running arch wayfire (wlroots) and my laptop, which i'm trying to get the app to display on is running fedora gnome.
I have tried both wired (albiet using a very o...trying to launch a nested weston produces this output, the my desktop is running arch wayfire (wlroots) and my laptop, which i'm trying to get the app to display on is running fedora gnome.
I have tried both wired (albiet using a very old network adapter) and wireless
[waypipelog.txt](/uploads/bd4658e75cb5c7ec86a6e320ab5316b3/waypipelog.txt)https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/65Test Suite Failure on Alpine s390x2022-08-11T07:42:52ZPeter ShkenevTest Suite Failure on Alpine s390xOS: Alpine Linux edge s390x
Waypipe version: 0.8.3
Attached file contains CI log.
While it is unlikely that anybody would use waypipe on s390x, you may want to take a look at it.
[job.log](/uploads/d9e32d17d8e7f40364aec148ef007125/job...OS: Alpine Linux edge s390x
Waypipe version: 0.8.3
Attached file contains CI log.
While it is unlikely that anybody would use waypipe on s390x, you may want to take a look at it.
[job.log](/uploads/d9e32d17d8e7f40364aec148ef007125/job.log)https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/64Not possible to run remote QML applications locally using the wayland platfor...2022-11-06T01:10:37ZThiago SuetoNot possible to run remote QML applications locally using the wayland platform pluginQtWidgets/C++ applications can be run perfectly fine on Wayland with something like:
waypipe --compress lz4 --display wayland-local ssh user@myip env QT_QPA_PLATFORM=wayland qtcreator
So I occasionally use it to run my preferred ID...QtWidgets/C++ applications can be run perfectly fine on Wayland with something like:
waypipe --compress lz4 --display wayland-local ssh user@myip env QT_QPA_PLATFORM=wayland qtcreator
So I occasionally use it to run my preferred IDE remotely, QtCreator.
In the project's environment settings I can then set WAYLAND_DISPLAY=wayland-local and QT_QPA_PLATFORM=wayland, and remote QtWidgets apps I make show up fine. But I noticed this isn't the case for QtQuick/QML apps. I get the following output:
```
QML debugging is enabled. Only use this in a safe environment.
Unsupported modifier, resource creation failed.
XXX: resource creation failed
C10189: 71.837490 [src/dmabuf.c:394] Failed to make dmabuf (with modifier ffffffffffffff): Timer expired
S119583: 32.741070 [src/mainloop.c:1397] Channel hang up detected, no reconnection link, fatal
wl_display@1: error 3: waypipe internal error
The Wayland connection experienced a fatal error: Protocol error
S119583: 32.782630 [src/util.c:262] Unexpected open fd 9: /dev/dri/renderD128
```
This seems to also happen with KDE apps made in QML, like Elisa.
They do however run perfectly fine as XWayland windows if I don't force Wayland mode, with e.g.
```
waypipe ssh -X -C user@myip // -X exposes the DISPLAY variable, -C for compression
./myapp // Implicitly uses QT_QPA_PLATFORM=xcb and e.g. DISPLAY=localhost:10
```
Plain ssh -X also works, of course.
I'm not sure this is a Waypipe bug, a Qt bug, or something else entirely.
The client machine used was RHEL9 and the server side was Fedora Rawhide (37).https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/63Segfault after an application ran successfully2022-07-17T06:47:35ZLink MauveSegfault after an application ran successfullyI could only reproduce on ARM though, not on x86.
I tested it with PyTouhou, which is a GLES 2.0 game, running on a Lima GPU.
Here is the backtrace I get:
```
Core was generated by `waypipe -c none --login-shell --unlink-socket -s /tmp...I could only reproduce on ARM though, not on x86.
I tested it with PyTouhou, which is a GLES 2.0 game, running on a Lima GPU.
Here is the backtrace I get:
```
Core was generated by `waypipe -c none --login-shell --unlink-socket -s /tmp/waypipe-server-AsAU4otw.s'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0044a06c in __cmsg_nxthdr (__cmsg=0x7d87dc1c, __mhdr=0xbec3ed24) at /usr/include/bits/socket.h:326
326 || ((unsigned char *) __cmsg + CMSG_ALIGN (__cmsg->cmsg_len)
[Current thread is 1 (Thread 0xb6ef1a20 (LWP 4748))]
(gdb) bt
#0 0x0044a06c in __cmsg_nxthdr (__cmsg=0x7d87dc1c, __mhdr=0xbec3ed24) at /usr/include/bits/socket.h:326
#1 iovec_read (conn=conn@entry=4, buf=<optimized out>, buflen=<optimized out>, fds=fds@entry=0xbec3efbc) at ../waypipe/src/mainloop.c:61
#2 0x0044c4d4 in advance_waymsg_progread (progsock_readable=true, display_side=<optimized out>, progfd=4, g=0xbec3f040, wmsg=0xbec3f05c) at ../waypipe/src/mainloop.c:866
#3 advance_waymsg_transfer (progsock_readable=true, progfd=4, chanfd=-1094455664, display_side=<optimized out>, cxs=0xbec3ee88, wmsg=0xbec3f05c, g=0xbec3f040) at ../waypipe/src/mainloop.c:1033
#4 main_interface_loop (chanfd=-1094455664, chanfd@entry=5, progfd=4, progfd@entry=3, linkfd=<optimized out>, config=config@entry=0x200000, display_side=display_side@entry=false)
at ../waypipe/src/mainloop.c:1382
#5 0x00449c54 in handle_new_server_connection (new_token=0xbec3f250, config=<optimized out>, connmap=0xbec3f288, appfd=3, wdisplay_socket=<optimized out>, control_pipe=-1,
current_sockaddr=0x1) at ../waypipe/src/server.c:302
#6 run_multi_server (child_pid=0xbec3f238, config=0x200000, wdisplay_socket=1, unlink_at_end=false, socket_addr=0xbec3f248, control_pipe=<optimized out>) at ../waypipe/src/server.c:443
#7 run_server (socket_addr=socket_addr@entry=0xbec3f7ac, wayland_display=wayland_display@entry=0x0, control_path=0x80 <error: Cannot access memory at address 0x80>,
control_path@entry=0xbec3fd4b "none", config=0x200000, config@entry=0x0, oneshot=false, oneshot@entry=true, unlink_at_end=true, unlink_at_end@entry=false,
app_argv=app_argv@entry=0xbec3fc2c, login_shell_if_backup=login_shell_if_backup@entry=true) at ../waypipe/src/server.c:644
#8 0x00443b58 in main (argc=-1094452180, argv=0xbec3fc2c) at ../waypipe/src/waypipe.c:782
```https://gitlab.freedesktop.org/mstoeckl/waypipe/-/issues/62"[src/mainloop.c:875] application has closed" message on wl-copy exit2022-06-17T03:18:32ZYutsuten"[src/mainloop.c:875] application has closed" message on wl-copy exitI first created an issue in the [wl-clipboard repository](https://github.com/bugaevc/wl-clipboard/issues/140), but noticed the issue was in waypipe.
I'm using `wl-clipboard` to synchronize my clipboard over SSH and using waypipe to do i...I first created an issue in the [wl-clipboard repository](https://github.com/bugaevc/wl-clipboard/issues/140), but noticed the issue was in waypipe.
I'm using `wl-clipboard` to synchronize my clipboard over SSH and using waypipe to do it. It is working.
The problem is that after I copy something into my clipboard, a previous `wl-copy` will spawn a message to my console.
```
S1991863: 36.422916 [src/mainloop.c:875] application has closed
```
If nvim is opened at the moment this message is shown, nvim's layout gets broken and it is annoying. There is any way to prevent this message from appearing in my screen?
I guess this is the code that is writing into my screen: [waypipe:src/mainloop.c:875](https://gitlab.freedesktop.org/mstoeckl/waypipe/-/blob/master/src/mainloop.c#L875)
I tried to build waypipe with `--buildtype release` with the hope this was the issue, with no success.
Can someone please help me?
Thank you in advance.