Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
A
angle
  • Project
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Chen Yisong
  • angle
  • Repository

Switch branch/tag
  • angle
  • src
  • libANGLE
  • Display.cpp
Find file
BlameHistoryPermalink
  • Courtney Goeltzenleuchter's avatar
    Move LayoutCaches to ShareGroup · b156a753
    Courtney Goeltzenleuchter authored Sep 28, 2020
    Testing with TSN found a race condition with RefCounted objects
    (DescriptorSetLayout and PipelineLayout). Rather than add more lock
    calls to protect accesses to mRefCount and mObject recommendation was to
    put these caches in the ShareGroup (basically part of the context).
    Locking at the GL level will ensure that two threads that share the same
    context will not access the ShareGroup at the same time.
    
    The ShareGroup also works because these layouts are not destroyed until
    the context is destroyed so don't have to worry about other threads
    (e.g. command processor thread) accessing them.
    
    Bug: b/168744561
    Change-Id: Icc0aa07bf4787a69572d6ec62da2f21d286232c3
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2437509
    Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com>
    Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    Reviewed-by: 's avatarCharlie Lao <cclao@google.com>
    b156a753
Display.cpp 59.7 KB
EditWeb IDE
×

Replace Display.cpp

Attach a file by drag & drop or click to upload


Cancel
A new branch will be created in your fork and a new merge request will be started.