Skip to content

Commit

Permalink
Reland "exo: request release fences from viz for submitted resources"
Browse files Browse the repository at this point in the history
This is a reland of commit a03380c

Change: request a release fence only for zero-copy buffers

Original change's description:
> exo: request release fences from viz for submitted resources
>
> Instead of creating release fences whenever resources are returned
> (if they are not created, which typically happens if quads are
> composited but not sent as hw overlays), ask viz to return
> resources with a release fence created.
>
> By doing this, we are not 1) including unnecessary gpu work
> 2) do not delay releasing wl_buffers.
>
> Please see more details at https://docs.google.com/document/d/1QM54jxDHWHs9NA2YOsGBdu_Rk9KSaK1BmW7Hpx5hWtE/edit?usp=sharing
>
> Bug: 1310136, 1295527, 1325329
> Change-Id: I36ae508e738f7d8a18c8c910dafcc253647f72f3
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3677012
> Commit-Queue: Maksim Sisov <msisov@igalia.com>
> Reviewed-by: Kramer Ge <fangzhoug@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1012882}

Bug: 1310136, 1295527, 1325329, 1338335
Change-Id: I1904fae6b4dbf5aa614ef55c34bc64bc644a008c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3718083
Reviewed-by: Kramer Ge <fangzhoug@chromium.org>
Commit-Queue: Maksim Sisov <msisov@igalia.com>
Cr-Commit-Position: refs/heads/main@{#1017062}
  • Loading branch information
msisov authored and Chromium LUCI CQ committed Jun 23, 2022
1 parent da21a30 commit de7ac21
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions components/exo/buffer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -508,6 +508,8 @@ bool Buffer::ProduceTransferableResource(
sync_token, texture_target_);
resource->is_overlay_candidate = is_overlay_candidate_;
resource->format = viz::GetResourceFormat(gpu_memory_buffer_->GetFormat());
resource->synchronization_type =
viz::TransferableResource::SynchronizationType::kReleaseFence;

// The contents texture will be released when no longer used by the
// compositor.
Expand Down

0 comments on commit de7ac21

Please sign in to comment.