[Bug 108311] Query buffer object support is broken on r600.

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Oct 10 06:46:20 UTC 2018


https://bugs.freedesktop.org/show_bug.cgi?id=108311

            Bug ID: 108311
           Summary: Query buffer object support is broken on r600.
           Product: Mesa
           Version: git
          Hardware: x86-64 (AMD64)
                OS: Linux (All)
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Drivers/Gallium/r600
          Assignee: dri-devel at lists.freedesktop.org
          Reporter: awesie at gmail.com
        QA Contact: dri-devel at lists.freedesktop.org

Created attachment 141970
  --> https://bugs.freedesktop.org/attachment.cgi?id=141970&action=edit
Patch

After implementing support for query buffer objects in Wine, I got a bug report
about a regression on older AMD hardware
(https://bugs.winehq.org/show_bug.cgi?id=45946). The root cause was a bug in
the query buffer object support for r600 in Mesa.

As mentioned in the commit message for
1c9ea24a19a28e87f6038281c516287f25ad88b5, the r600 shader cannot address
non-256 aligned ssbos. While that commit fixed most buffer accesses, it failed
to fix ssbo[1], e.g. tmp_buffer. This led to random failures of the query
buffer shader depending on whether we got lucky (e.g. tmp_buffer_offset was a
multiple of 256) or not.

The fix is easy. Mask tmp_buffer_offset and add another constant for when we
access the tmp_buffer in the shader. Patch is attached.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20181010/9643561d/attachment-0001.html>


More information about the dri-devel mailing list