Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(215)

Unified Diff: gpu/command_buffer/client/gpu_control.h

Issue 2727573003: gpu: Add sync token dependencies to flush metadata. (Closed)
Patch Set: piman's review 2 Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gpu/command_buffer/client/gles2_implementation_unittest.cc ('k') | gpu/command_buffer/common/sync_token.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/command_buffer/client/gpu_control.h
diff --git a/gpu/command_buffer/client/gpu_control.h b/gpu/command_buffer/client/gpu_control.h
index 6b7bdd52b4b46fa2755cf2a62c62dcf3bccc2a8b..519712edc4af501b55fda1febd8b377be454fcbf 100644
--- a/gpu/command_buffer/client/gpu_control.h
+++ b/gpu/command_buffer/client/gpu_control.h
@@ -98,15 +98,22 @@ class GPU_EXPORT GpuControl {
// the lock provided by the client.
virtual bool IsFenceSyncReleased(uint64_t release) = 0;
- // Runs |callback| when sync token is signalled.
+ // Runs |callback| when sync token is signaled.
virtual void SignalSyncToken(const SyncToken& sync_token,
const base::Closure& callback) = 0;
+ // This allows the command buffer proxy to mark the next flush with sync token
+ // dependencies for the gpu scheduler. This is used in addition to the
+ // WaitSyncToken command in the command buffer which is still needed. For
+ // example, the WaitSyncToken command is used to pull texture updates when
+ // used in conjunction with MailboxManagerSync.
+ virtual void WaitSyncTokenHint(const SyncToken& sync_token) = 0;
+
// Under some circumstances a sync token may be used which has not been
- // verified to have been flushed. For example, fence syncs queued on the
- // same channel as the wait command guarantee that the fence sync will
- // be enqueued first so does not need to be flushed.
- virtual bool CanWaitUnverifiedSyncToken(const SyncToken* sync_token) = 0;
+ // verified to have been flushed. For example, fence syncs queued on the same
+ // channel as the wait command guarantee that the fence sync will be enqueued
+ // first so does not need to be flushed.
+ virtual bool CanWaitUnverifiedSyncToken(const SyncToken& sync_token) = 0;
private:
DISALLOW_COPY_AND_ASSIGN(GpuControl);
« no previous file with comments | « gpu/command_buffer/client/gles2_implementation_unittest.cc ('k') | gpu/command_buffer/common/sync_token.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698