Summary: | [GPU Process] Unique RenderingResourceIdentifiers Part 7: Migrate RemoteResourceCache to QualifiedRenderingResourceIdentifier | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Myles C. Maxfield <mmaxfield> | ||||||
Component: | Layout and Rendering | Assignee: | Myles C. Maxfield <mmaxfield> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | bfulgham, sabouhallawa, simon.fraser, webkit-bug-importer, wenson_hsieh, zalan | ||||||
Priority: | P2 | Keywords: | InRadar | ||||||
Version: | WebKit Nightly Build | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Bug Depends on: | 231546 | ||||||||
Bug Blocks: | 217638 | ||||||||
Attachments: |
|
Description
Myles C. Maxfield
2021-10-07 19:35:05 PDT
Created attachment 440567 [details]
Patch
Comment on attachment 440567 [details] Patch This patch looks okay. But I am surprised that RemoteImageBuffer currently has two identifiers. One is from the base class: ConcreteImageBuffer::m_renderingResourceIdentifier and the other is RemoteImageBuffer::m_renderingResourceIdentifier. The later was added in r269682. Luckily they hold the same value. But I think this needs to be cleaned-up. (In reply to Said Abou-Hallawa from comment #3) > Comment on attachment 440567 [details] > Patch > > This patch looks okay. But I am surprised that RemoteImageBuffer currently > has two identifiers. One is from the base class: > ConcreteImageBuffer::m_renderingResourceIdentifier and the other is > RemoteImageBuffer::m_renderingResourceIdentifier. The later was added in > r269682. Luckily they hold the same value. But I think this needs to be > cleaned-up. On trunk, RemoteImageBuffer's `m_renderingResourceIdentifier` is a WebKit::QualifiedRenderingResourceIdentifier while the base class just has a regular RenderingResourceIdentifier. (In reply to Said Abou-Hallawa from comment #3) > Comment on attachment 440567 [details] > Patch > > This patch looks okay. But I am surprised that RemoteImageBuffer currently > has two identifiers. One is from the base class: > ConcreteImageBuffer::m_renderingResourceIdentifier and the other is > RemoteImageBuffer::m_renderingResourceIdentifier. The later was added in > r269682. Luckily they hold the same value. But I think this needs to be > cleaned-up. Yeah. Personally I think it's a mistake to put the identifiers inside the objects themselves, but I do understand why it's expedient. Philosophically, I think the objects themselves should have no idea that they're being shared across processes, and the process sharing code should be out-of-band. I think that 1) not everyone on the team agrees with this, though, and 2) even if they did, doing so is out of scope for this patch. Committed r283955 (242806@main): <https://commits.webkit.org/242806@main> This broke the build. Broke the build Created attachment 440882 [details]
Patch for committing
Committed r283968 (242815@main): <https://commits.webkit.org/242815@main> |