[Webkit-unassigned] [Bug 228192] New: getBufferSubData() incorrectly returns all zeros for pixel buffers on iOS 15 with WebGL 2

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Jul 22 13:03:08 PDT 2021


            Bug ID: 228192
           Summary: getBufferSubData() incorrectly returns all zeros for
                    pixel buffers on iOS 15 with WebGL 2
           Product: WebKit
           Version: Other
          Hardware: iPhone / iPad
                OS: Other
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebGL
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: paris at 8thwall.com
                CC: dino at apple.com, kbr at google.com, kkinnunen at apple.com

I have found a regression where a particular shading pipeline using pixel buffers on iOS 15 with WebGL 2 (with both WebGL via Metal = true & false) always returns all zeros from `getBufferSubData()`. Note that while this effect is 100% reliable on this particular pipeline, it does not reproduce on other simpler pipelines. If we switch from reading from a pixel buffer to directly reading from the frame buffer, the issue goes away and the same pipeline works correctly with 100% reliability.

Our code is relatively complex, involving multiple proprietary shaders drawing to multiple intermediate frame buffers before ultimately reaching the frame buffer that's bound to the pixel buffer. My attempts to write a simple repro for this using a non-proprietary shallow pipeline have failed to reproduce the issue, but opening this bug to put it on your radar. Perhaps you know of something that may cause this, or this is an area that may be somewhat untested?

Some extra details:
- There are no WebGL errors printed. 
- This same shader pipeline works with iOS 14 and below (with WebGL 2), and also on Android (with WebGL 2). Only on iOS 15 (with WebGL 2) did this code stop working.

I will update this bug with a simple repro if I am able to, thank you.

You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20210722/1da09f7f/attachment.htm>

More information about the webkit-unassigned mailing list