In some cases, kwin has to restart compositing. For example, one such case is where user settings have changed.
Unfortunately, it also means that kwin needs to destroy window pixmaps, which means that all existing EGLStreams will transition into the "disconnected" state (because the consumer texture has been destroyed).
STEPS TO REPRODUCE
1. Change any compositing settings.
Applications that use EGL have no any contents
Applications that use EGL look the same before and after a compositing restart
CC'ing Erik because he wrote the EGLStreams backend.
This is a tricky issue. Our client-side egl-wayland code really isn't set up to handle the compositor restarting. The client would need some way to become aware of this and send a new attach_eglstream_consumer request, and then re-attach the producer.
Incidentally, we're currently working on driver-side support for passing buffers as dma-bufs, and once that's ready we could transition egl-wayland away from using EGLStreams. Then it should be possible to remove all of the EglStreamTexture stuff from kwin.
Until then, though, maybe we could just defer applying any settings that require a compositor reset until the next login when using the EGLStreams backend?
*** Bug 434715 has been marked as a duplicate of this bug. ***
*** Bug 442529 has been marked as a duplicate of this bug. ***
Removing from VHI. Wayland is not a default, especially on wayland.
Removing from VHI. Wayland is not a default, especially on Nvidia.
NVIDIA hardware works under GBM now.