[Bug 108311] Query buffer object support is broken on r600.
https://bugs.freedesktop.org/show_bug.cgi?id=108311 Dave Airlie changed: What|Removed |Added Resolution|--- |FIXED Status|NEW |RESOLVED --- Comment #4 from Dave Airlie --- 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.___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
[Bug 108311] Query buffer object support is broken on r600.
https://bugs.freedesktop.org/show_bug.cgi?id=108311 --- Comment #3 from Andrew Wesie --- (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.___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
[Bug 108311] Query buffer object support is broken on r600.
https://bugs.freedesktop.org/show_bug.cgi?id=108311 --- Comment #2 from Andrew Wesie --- (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.___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
[Bug 108311] Query buffer object support is broken on r600.
https://bugs.freedesktop.org/show_bug.cgi?id=108311 --- Comment #1 from Dave Airlie --- Created attachment 141989 --> https://bugs.freedesktop.org/attachment.cgi?id=141989=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.___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
[Bug 108311] Query buffer object support is broken on r600.
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: awe...@gmail.com QA Contact: dri-devel@lists.freedesktop.org Created attachment 141970 --> https://bugs.freedesktop.org/attachment.cgi?id=141970=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.___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel