| Index: gpu/command_buffer/client/cmd_buffer_helper.cc | 
| diff --git a/gpu/command_buffer/client/cmd_buffer_helper.cc b/gpu/command_buffer/client/cmd_buffer_helper.cc | 
| index 35805fe195703e37b006a0b7e2aef33439d0d333..4267eb76689080ea2c32ca407c196e1f91279883 100644 | 
| --- a/gpu/command_buffer/client/cmd_buffer_helper.cc | 
| +++ b/gpu/command_buffer/client/cmd_buffer_helper.cc | 
| @@ -31,6 +31,8 @@ CommandBufferHelper::CommandBufferHelper(CommandBuffer* command_buffer) | 
| token_(0), | 
| put_(0), | 
| last_put_sent_(0), | 
| +      next_fence_sync_release_(1), | 
| +      flushed_fence_sync_release_(0), | 
| #if defined(CMD_HELPER_PERIODIC_FLUSH_CHECK) | 
| commands_issued_(0), | 
| #endif | 
| @@ -146,6 +148,12 @@ void CommandBufferHelper::FreeRingBuffer() { | 
| FreeResources(); | 
| } | 
|  | 
| +uint32_t CommandBufferHelper::GenerateFenceSyncRelease() { | 
| +  // Enforce fence syncs generated are always inserted in the command buffer. | 
| +  const uint32_t release = next_fence_sync_release_++; | 
| +  return release; | 
| +} | 
| + | 
| bool CommandBufferHelper::Initialize(int32 ring_buffer_size) { | 
| ring_buffer_size_ = ring_buffer_size; | 
| return AllocateRingBuffer(); | 
| @@ -176,6 +184,8 @@ void CommandBufferHelper::Flush() { | 
| command_buffer_->Flush(put_); | 
| ++flush_generation_; | 
| CalcImmediateEntries(0); | 
| + | 
| +    flushed_fence_sync_release_ = next_fence_sync_release_ - 1; | 
| } | 
| } | 
|  | 
|  |