<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>428089</bug_id>
          
          <creation_ts>2020-10-22 08:03:17 +0000</creation_ts>
          <short_desc>Restarting compositing breaks existing EGLStreams</short_desc>
          <delta_ts>2022-01-19 15:57:04 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Plasma</classification>
          <product>kwin</product>
          <component>wayland-generic</component>
          <version>git master</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.kde.org/show_bug.cgi?id=434715</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Vlad Zahorodnii">vlad.zahorodnii</reporter>
          <assigned_to name="KWin default assignee">kwin-bugs-null</assigned_to>
          <cc>aleixpol</cc>
    
    <cc>alex.wayfer</cc>
    
    <cc>alex765</cc>
    
    <cc>ekurzinger</cc>
    
    <cc>kde</cc>
    
    <cc>kinofhek</cc>
    
    <cc>mateusbmelchiades</cc>
    
    <cc>mauromol</cc>
    
    <cc>nate</cc>
    
    <cc>postix</cc>
          
          <cf_commitlink></cf_commitlink>
          <cf_versionfixedin></cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      <flag name="Wayland"
          id="3984"
          type_id="31"
          status="+"
          setter="vlad.zahorodnii"
    />
    <flag name="Mesa"
          id="3985"
          type_id="11"
          status="-"
          setter="vlad.zahorodnii"
    />
    <flag name="NVIDIA"
          id="3986"
          type_id="6"
          status="+"
          setter="vlad.zahorodnii"
    />

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1967120</commentid>
    <comment_count>0</comment_count>
    <who name="Vlad Zahorodnii">vlad.zahorodnii</who>
    <bug_when>2020-10-22 08:03:17 +0000</bug_when>
    <thetext>SUMMARY
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 &quot;disconnected&quot; state (because the consumer texture has been destroyed).

STEPS TO REPRODUCE
1. Change any compositing settings.

OBSERVED RESULT
Applications that use EGL have no any contents

EXPECTED RESULT
Applications that use EGL look the same before and after a compositing restart</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1967121</commentid>
    <comment_count>1</comment_count>
    <who name="Vlad Zahorodnii">vlad.zahorodnii</who>
    <bug_when>2020-10-22 08:03:55 +0000</bug_when>
    <thetext>CC&apos;ing Erik because he wrote the EGLStreams backend.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1973449</commentid>
    <comment_count>2</comment_count>
    <who name="Erik Kurzinger">ekurzinger</who>
    <bug_when>2020-11-09 21:51:11 +0000</bug_when>
    <thetext>This is a tricky issue. Our client-side egl-wayland code really isn&apos;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&apos;re currently working on driver-side support for passing buffers as dma-bufs, and once that&apos;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?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2023327</commentid>
    <comment_count>3</comment_count>
    <who name="Vlad Zahorodnii">vlad.zahorodnii</who>
    <bug_when>2021-04-07 19:44:10 +0000</bug_when>
    <thetext>*** Bug 434715 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2061484</commentid>
    <comment_count>4</comment_count>
    <who name="Nate Graham">nate</who>
    <bug_when>2021-09-16 18:32:39 +0000</bug_when>
    <thetext>*** Bug 442529 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2069148</commentid>
    <comment_count>5</comment_count>
    <who name="David Edmundson">kde</who>
    <bug_when>2021-10-16 23:20:10 +0000</bug_when>
    <thetext>Removing from VHI. Wayland is not a default, especially on wayland.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2069149</commentid>
    <comment_count>6</comment_count>
    <who name="David Edmundson">kde</who>
    <bug_when>2021-10-16 23:20:34 +0000</bug_when>
    <thetext>Removing from VHI. Wayland is not a default, especially on Nvidia.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2095428</commentid>
    <comment_count>7</comment_count>
    <who name="Aleix Pol">aleixpol</who>
    <bug_when>2022-01-19 15:57:04 +0000</bug_when>
    <thetext>NVIDIA hardware works under GBM now.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>