<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 - Corrupted video output with 32bit kernel"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=91831">91831</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Corrupted video output with 32bit kernel
          </td>
        </tr>

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

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

        <tr>
          <th>Hardware</th>
          <td>x86 (IA32)
          </td>
        </tr>

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

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

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

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

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

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

        <tr>
          <th>Reporter</th>
          <td>nholland@tisys.org
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>xorg-team@lists.x.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I'm not entirely sure if this is the right place to mention this issue, but I'm
fairly confident that the right people will see it here:

I'm using a Kabini GPU on a 32-bit (kernel + userland) system using linux 4.2
and have just decided to give the amdgpu kernel drm driver and
xf86-video-amdgpu a try (previously I was using radeon). What I noticed is that
screen output in X11 is garbled using these drivers - i.e. pixels are messed up
/ missing / corrupt in various places all over the screen.

I've seen this issue before in the radeon driver, there's actually a (resolved)
bug report about it at <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - (bisected) 32bit corruption with PIPE_USAGE_STREAM reverted"
   href="show_bug.cgi?id=84627">https://bugs.freedesktop.org/show_bug.cgi?id=84627</a>.

Back then, the bug was fixed in the kernel in
linux/drivers/gpu/drm/radeon/radeon_object.c. Here's the relevant section (from
radeon_bo_create()):

#ifdef CONFIG_X86_32
        /* XXX: Write-combined CPU mappings of GTT seem broken on 32-bit
         * See <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - (bisected) 32bit corruption with PIPE_USAGE_STREAM reverted"
   href="show_bug.cgi?id=84627">https://bugs.freedesktop.org/show_bug.cgi?id=84627</a>
         */
        bo->flags &= ~RADEON_GEM_GTT_WC;

I'm not into this stuff enough, but I believe that in contrast to the radeon
driver, the amdgpu driver does not disable write-combined CPU mappings on 32
bit kernels. The question is: Would it be possible and reasonable to change
amdgpu to follow radeon in this regard and thus - hopefully - fix the garbled
screen problem on 32 bit?

As a side note, the problem goes away when disabling hardware acceleration:

Option "NoAccel" "true"

Screen output looks good then. Still, this is probably not the best solution.</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>