<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Repeated mode switching eventually fails"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=75044">75044</a>
          </td>
        </tr>

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

        <tr>
          <th>Summary</th>
          <td>Repeated mode switching eventually fails
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>xorg-team@lists.x.org
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>dan.doel@gmail.com
          </td>
        </tr>

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

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

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

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

        <tr>
          <th>Product</th>
          <td>xorg
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=94145" name="attach_94145" title="Xorg.0.log from single monitor switching">attachment 94145</a> <a href="attachment.cgi?id=94145&action=edit" title="Xorg.0.log from single monitor switching">[details]</a></span>
Xorg.0.log from single monitor switching

I recently came into possession of two 4K monitors, and have noticed that
switching modes with them is fairly unreliable. I believe I've put together a
reliable way of triggering the failure now.

My procedure is as follows:

  startx into fluxbox
  xrandr --output DisplayPort-1 --right-of DisplayPort-0
  xrandr --output DisplayPort-1 --mode 1920x1080
  xrandr --output DisplayPort-1 --mode 3840x2160
  ... repeat

The second switch back to 3840x2160 causes both monitors to enter power saving
mode. Subsequently switching to a different virtual terminal and back to the
one running X leaves X dead.

I can also reproduce this with a single monitor. The procedure is the same,
except I turn DisplayPort-1 off, and then switch DisplayPort-0. It requires
more switches to trigger the behavior, but it does eventualy happen.

In all cases, the Xorg log has two lines like the following (this is from the
single monitor case):

  [264287.242] (II) RADEON(0): Allocate new frame buffer 3840x2176 stride 3840
  [264287.248] (EE) RADEON(0): failed to set mode: Invalid argument(II)
RADEON(0): VRAM usage limit set to 1828584K

I assume this means that video memory for the frame buffer has somehow been
exhausted, which explains why it happens faster with two displays, and why it's
more likely to happen with very high resolution displays.

I'll attach dmesg output, Xorg log and xrandr output. Some relevant information
is:

  Kernel 3.12.9
  glamor from git (latest at the time of this post, I believe)
  Mesa 10.2 from git (compiled today)
  xf86-video-ati 7.3.0
  Radeon HD 7870

I found this bug, which sounds like similar behavior:

    <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Cannot disable LVDS after login"
   href="show_bug.cgi?id=37545">https://bugs.freedesktop.org/show_bug.cgi?id=37545</a>

and memory fragmentation is suggested as the problem. However, given that my
problem is triggered by multiple mode switches (I'd say it takes 6-8 in the
single monitor case), perhaps memory is actually being leaked?

If any additional information is desired, I'll try to provide it.</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>