All of lore.kernel.org
 help / color / mirror / Atom feed
* [Bug 108311] Query buffer object support is broken on r600.
@ 2018-10-10  6:46 bugzilla-daemon
  2018-10-11  3:45 ` bugzilla-daemon
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: bugzilla-daemon @ 2018-10-10  6:46 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 1492 bytes --]

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@lists.freedesktop.org
          Reporter: awesie@gmail.com
        QA Contact: dri-devel@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.

[-- Attachment #1.2: Type: text/html, Size: 3111 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug 108311] Query buffer object support is broken on r600.
  2018-10-10  6:46 [Bug 108311] Query buffer object support is broken on r600 bugzilla-daemon
@ 2018-10-11  3:45 ` bugzilla-daemon
  2018-10-11  3:55 ` bugzilla-daemon
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: bugzilla-daemon @ 2018-10-11  3:45 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 381 bytes --]

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

--- Comment #1 from Dave Airlie <airlied@freedesktop.org> ---
Created attachment 141989
  --> https://bugs.freedesktop.org/attachment.cgi?id=141989&action=edit
set larger alignment for tmp buffer offset

Does this patch work as an alternate?

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1423 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug 108311] Query buffer object support is broken on r600.
  2018-10-10  6:46 [Bug 108311] Query buffer object support is broken on r600 bugzilla-daemon
  2018-10-11  3:45 ` bugzilla-daemon
@ 2018-10-11  3:55 ` bugzilla-daemon
  2018-10-11  4:33 ` bugzilla-daemon
  2018-11-28 23:10 ` bugzilla-daemon
  3 siblings, 0 replies; 5+ messages in thread
From: bugzilla-daemon @ 2018-10-11  3:55 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 605 bytes --]

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

--- Comment #2 from Andrew Wesie <awesie@gmail.com> ---
(In reply to Dave Airlie from comment #1)
> Created attachment 141989 [details] [review]
> set larger alignment for tmp buffer offset
> 
> Does this patch work as an alternate?

It looks like it should work but I'll test it with real hw.

Any reason you prefer this patch? It seems like it would use more heap space
without any notable benefits (e.g. should it have better performance
characteristics?).

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1784 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug 108311] Query buffer object support is broken on r600.
  2018-10-10  6:46 [Bug 108311] Query buffer object support is broken on r600 bugzilla-daemon
  2018-10-11  3:45 ` bugzilla-daemon
  2018-10-11  3:55 ` bugzilla-daemon
@ 2018-10-11  4:33 ` bugzilla-daemon
  2018-11-28 23:10 ` bugzilla-daemon
  3 siblings, 0 replies; 5+ messages in thread
From: bugzilla-daemon @ 2018-10-11  4:33 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 584 bytes --]

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

--- Comment #3 from Andrew Wesie <awesie@gmail.com> ---
(In reply to Andrew Wesie from comment #2)
> (In reply to Dave Airlie from comment #1)
> > Created attachment 141989 [details] [review] [review]
> > set larger alignment for tmp buffer offset
> > 
> > Does this patch work as an alternate?
> 
> It looks like it should work but I'll test it with real hw.
> 

I confirmed the new patch fixes the bug with my test gpu (HD 5700 series).

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1827 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug 108311] Query buffer object support is broken on r600.
  2018-10-10  6:46 [Bug 108311] Query buffer object support is broken on r600 bugzilla-daemon
                   ` (2 preceding siblings ...)
  2018-10-11  4:33 ` bugzilla-daemon
@ 2018-11-28 23:10 ` bugzilla-daemon
  3 siblings, 0 replies; 5+ messages in thread
From: bugzilla-daemon @ 2018-11-28 23:10 UTC (permalink / raw)
  To: dri-devel


[-- Attachment #1.1: Type: text/plain, Size: 662 bytes --]

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

Dave Airlie <airlied@freedesktop.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #4 from Dave Airlie <airlied@freedesktop.org> ---
I pushed my patch for simplicity sakes, I don't think we'd notice the
difference in perf or mem usage.

Thanks for pointing out the problem and the first patch!

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 2159 bytes --]

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-11-28 23:10 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-10  6:46 [Bug 108311] Query buffer object support is broken on r600 bugzilla-daemon
2018-10-11  3:45 ` bugzilla-daemon
2018-10-11  3:55 ` bugzilla-daemon
2018-10-11  4:33 ` bugzilla-daemon
2018-11-28 23:10 ` bugzilla-daemon

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.