| Summary: | Max Limits have been reduced | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Dean Jackson <dino> | ||||||
| Component: | ANGLE | Assignee: | Dean Jackson <dino> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | 544240302, dino, ews-watchlist, kbr, kkinnunen, kondapallykalyan, kpiddington, webkit-bug-importer | ||||||
| Priority: | P2 | Keywords: | InRadar | ||||||
| Version: | WebKit Nightly Build | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Bug Depends on: | |||||||||
| Bug Blocks: | 239116 | ||||||||
| Attachments: |
|
||||||||
|
Description
Dean Jackson
2022-04-06 17:25:34 PDT
Created attachment 456994 [details]
Patch
Note that there are important steps to take when updating ANGLE. See https://trac.webkit.org/wiki/UpdatingANGLE Comment on attachment 456994 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=456994&action=review > Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ProgramMtl.mm:1294 > + > + Nit: Blank lines. Created attachment 456997 [details]
Patch
Comment on attachment 456997 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=456997&action=review > Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ProgramMtl.mm:1286 > + ANGLE_TRY(getBufferPool(context)->allocate(context, > + uniformBlock.uniformData.size(), &ptrOut, &mtlBufferOut, &offsetOut)); I'm not familiar with ANGLE but I expect you don't need to worry about deallocation? > Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ProgramMtl.mm:1288 > + memcpy(ptrOut, uniformBlock.uniformData.data(), uniformBlock.uniformData.size()); And we don't need to worry about reading out of bounds here? Comment on attachment 456997 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=456997&action=review >> Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ProgramMtl.mm:1286 >> + uniformBlock.uniformData.size(), &ptrOut, &mtlBufferOut, &offsetOut)); > > I'm not familiar with ANGLE but I expect you don't need to worry about deallocation? That's correct, deallocation will happen when the buffer pool is destroyed. Any in-flight buffers can be reused. >> Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/ProgramMtl.mm:1288 >> + memcpy(ptrOut, uniformBlock.uniformData.data(), uniformBlock.uniformData.size()); > > And we don't need to worry about reading out of bounds here? Also correct, ANGLE_TRY will return early if we fail to allocate a buffer of proper size. the kDefaultUniformsMaxSize = 16 * 1024; is just one UBO buffer max size. does it support that if i define many UBOs in one shader program each size is 16 * 1024? Committed r293494 (250027@main): <https://commits.webkit.org/250027@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 456997 [details]. *** Bug 239116 has been marked as a duplicate of this bug. *** |