<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - X server crashes on DP hotplug: radeon_mode_hotplug() in xf86-video-ati does not enumerate second GPU"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=98626">98626</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>X server crashes on DP hotplug: radeon_mode_hotplug() in xf86-video-ati does not enumerate second GPU
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>xorg
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>git
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>x86-64 (AMD64)
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>major
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Driver/Radeon
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>xorg-driver-ati@lists.x.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>mstaudt@suse.de
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>xorg-team@lists.x.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=127814" name="attach_127814" title="Draft solution, taking GPUScreens into account">attachment 127814</a> <a href="attachment.cgi?id=127814&action=edit" title="Draft solution, taking GPUScreens into account">[details]</a></span> <a href='page.cgi?id=splinter.html&bug=98626&attachment=127814'>[review]</a>
Draft solution, taking GPUScreens into account

I have a system with a Kabini (primary) and a Caicos (secondary) GPU.

When I boot into GNOME 3, with one DP display connected to the Kabini and a
second to the Caicos GPU, everything works fine in the automatic PRIME setup.
However, hotplugging is buggy: xf86-video-ati does not correctly re-detect the
displays, and X crashes.

I bisected this to be caused by c801f9f10a5d, which iterates over all X
screens.

With current master, X doesn't crash, but rather the screen is reconfigured to
be one or three displays wide. It's the same bug though.


The problem with this commit is that it no longer enumerates the connectors on
the second GPU, which is not directly backing a visible X screen. It is thus
managed by the X server as a "GPU screen", which is not listed in xf86Screens,
but in xf86GPUScreens.

A possible solution would be the attached patch, but it does not work due to
the X server not exporting xf86NumGPUScreens and xf86GPUScreens.


What's the best solution here, should we export xf86NumGPUScreens and
xf86GPUScreens so the Radeon DDX can use them?</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>