/third_party/mesa3d/src/freedreno/drm/ |
H A D | freedreno_bo.c | 123 bo->fences = &bo->_inline_fence; in bo_new() 314 * Cleanup fences, dropping pipe references. If 'expired' is true, only 315 * cleanup expired fences. 326 struct fd_bo_fence *f = &bo->fences[i]; in cleanup_fences() 337 bo->fences[i] = bo->fences[bo->nr_fences]; in cleanup_fences() 357 if (bo->fences != &bo->_inline_fence) in bo_del() 358 free(bo->fences); in bo_del() 383 struct fd_bo_fence *f = &bo->fences[i]; in bo_flush() 556 struct fd_bo_fence *f = &bo->fences[ in fd_bo_add_fence() [all...] |
/third_party/skia/third_party/externals/angle2/src/tests/gl_tests/ |
H A D | FenceSyncTests.cpp | 76 // fences pointer in TEST_P() 117 GLuint fences[kFenceCount] = {0}; in TEST_P() local 118 glGenFencesNV(static_cast<GLsizei>(ArraySize(fences)), fences); in TEST_P() 121 for (GLuint fence : fences) in TEST_P() 127 // Finish the last fence, all fences before should be marked complete in TEST_P() 128 glFinishFenceNV(fences[kFenceCount - 1]); in TEST_P() 130 for (GLuint fence : fences) in TEST_P() 266 // Test that multiple fences and draws can be issued
|
/third_party/libdrm/amdgpu/ |
H A D | amdgpu_cs.c | 498 static int amdgpu_ioctl_wait_fences(struct amdgpu_cs_fence *fences, in amdgpu_ioctl_wait_fences() argument 506 amdgpu_device_handle dev = fences[0].context->dev; in amdgpu_ioctl_wait_fences() 513 drm_fences[i].ctx_id = fences[i].context->id; in amdgpu_ioctl_wait_fences() 514 drm_fences[i].ip_type = fences[i].ip_type; in amdgpu_ioctl_wait_fences() 515 drm_fences[i].ip_instance = fences[i].ip_instance; in amdgpu_ioctl_wait_fences() 516 drm_fences[i].ring = fences[i].ring; in amdgpu_ioctl_wait_fences() 517 drm_fences[i].seq_no = fences[i].fence; in amdgpu_ioctl_wait_fences() 521 args.in.fences = (uint64_t)(uintptr_t)drm_fences; in amdgpu_ioctl_wait_fences() 538 drm_public int amdgpu_cs_wait_fences(struct amdgpu_cs_fence *fences, in amdgpu_cs_wait_fences() argument 548 if (!fences || !statu in amdgpu_cs_wait_fences() [all...] |
/third_party/mesa3d/src/microsoft/vulkan/ |
H A D | dzn_sync.c | 148 STACK_ARRAY(ID3D12Fence *, fences, wait_count); in dzn_sync_wait() 154 fences[i] = sync->fence; in dzn_sync_wait() 164 fences, in dzn_sync_wait() 169 STACK_ARRAY_FINISH(fences); in dzn_sync_wait() 212 STACK_ARRAY_FINISH(fences); in dzn_sync_wait()
|
/third_party/mesa3d/src/gallium/winsys/amdgpu/drm/ |
H A D | amdgpu_cs.c | 777 * and there is less waiting for buffers and fences. Proof: in amdgpu_get_new_ib() 912 static void cleanup_fence_list(struct amdgpu_fence_list *fences) in cleanup_fence_list() argument 914 for (unsigned i = 0; i < fences->num; i++) in cleanup_fence_list() 915 amdgpu_fence_reference(&fences->list[i], NULL); in cleanup_fence_list() 916 fences->num = 0; in cleanup_fence_list() 1196 static void add_fence_to_list(struct amdgpu_fence_list *fences, in add_fence_to_list() argument 1199 unsigned idx = fences->num++; in add_fence_to_list() 1201 if (idx >= fences->max) { in add_fence_to_list() 1205 fences->max = idx + increment; in add_fence_to_list() 1206 size = fences in add_fence_to_list() 1288 amdgpu_add_fences(struct amdgpu_winsys_bo *bo, unsigned num_fences, struct pipe_fence_handle **fences) amdgpu_add_fences() argument [all...] |
H A D | amdgpu_bo.c | 71 /* We can't use user fences for shared buffers, because user fences in amdgpu_bo_wait() 92 if (!amdgpu_fence_wait(bo->fences[idle_fences], 0, false)) in amdgpu_bo_wait() 96 /* Release the idle fences to avoid checking them again later. */ in amdgpu_bo_wait() 98 amdgpu_fence_reference(&bo->fences[i], NULL); in amdgpu_bo_wait() 100 memmove(&bo->fences[0], &bo->fences[idle_fences], in amdgpu_bo_wait() 101 (bo->num_fences - idle_fences) * sizeof(*bo->fences)); in amdgpu_bo_wait() 116 amdgpu_fence_reference(&fence, bo->fences[0]); in amdgpu_bo_wait() 129 if (fence_idle && bo->num_fences && bo->fences[ in amdgpu_bo_wait() [all...] |
/third_party/mesa3d/src/util/ |
H A D | u_queue.c | 674 struct util_queue_fence *fences; in util_queue_finish() local 688 fences = malloc(queue->num_threads * sizeof(*fences)); in util_queue_finish() 692 util_queue_fence_init(&fences[i]); in util_queue_finish() 693 util_queue_add_job(queue, &barrier, &fences[i], in util_queue_finish() 698 util_queue_fence_wait(&fences[i]); in util_queue_finish() 699 util_queue_fence_destroy(&fences[i]); in util_queue_finish() 703 free(fences); in util_queue_finish()
|
/third_party/mesa3d/src/virtio/vulkan/ |
H A D | vn_queue.c | 759 const VkFence *fences, in vn_find_first_signaled_fence() 763 VkResult result = vn_GetFenceStatus(device, fences[i]); in vn_find_first_signaled_fence() 771 vn_remove_signaled_fences(VkDevice device, VkFence *fences, uint32_t *count) in vn_remove_signaled_fences() argument 775 VkResult result = vn_GetFenceStatus(device, fences[i]); in vn_remove_signaled_fences() 779 fences[cur++] = fences[i]; in vn_remove_signaled_fences() 822 VkFence *fences = local_fences; in vn_WaitForFences() local 824 fences = in vn_WaitForFences() 825 vk_alloc(alloc, sizeof(*fences) * fenceCount, VN_DEFAULT_ALIGN, in vn_WaitForFences() 827 if (!fences) in vn_WaitForFences() 758 vn_find_first_signaled_fence(VkDevice device, const VkFence *fences, uint32_t count) vn_find_first_signaled_fence() argument [all...] |
/third_party/vk-gl-cts/external/vulkancts/modules/vulkan/synchronization/ |
H A D | vktSynchronizationBasicFenceTests.cpp | 138 std::vector<Move<VkFence>> fences; in basicSignaledCase() local 139 fences.reserve(config.numFences); in basicSignaledCase() 150 fences.push_back(createFence(vkd, device, &fenceCreateInfo)); in basicSignaledCase() 151 if (vkd.getFenceStatus(device, fences.back().get()) != VK_SUCCESS) in basicSignaledCase() 156 std::transform(begin(fences), end(fences), std::back_inserter(rawFences), [](const Move<VkFence>& f) { return f.get(); }); in basicSignaledCase() 333 return tcu::TestStatus::fail("vkWaitForFences should return VK_TIMEOUT for case: Wait for all fences (No fence has been signaled)"); in basicMultiFenceWaitAllFalseCase() 341 return tcu::TestStatus::fail("vkWaitForFences should return VK_TIMEOUT for case: Wait for all fences (Only second fence signaled)"); in basicMultiFenceWaitAllFalseCase() 346 return tcu::TestStatus::fail("vkWaitForFences should return VK_SUCCESS for case: Wait for any fence (All fences signaled)"); in basicMultiFenceWaitAllFalseCase() 349 return tcu::TestStatus::fail("vkWaitForFences should return VK_SUCCESS for case: Wait for all fences (Al in basicMultiFenceWaitAllFalseCase() [all...] |
H A D | vktSynchronizationSmokeTests.cpp | 620 VkFence fences[2]; member 655 createFences(vkd, device, false, DE_LENGTH_OF_ARRAY(fences), fences); in TestContext() 660 destroyFences(vkd, device, DE_LENGTH_OF_ARRAY(fences), fences); in ~TestContext() 1072 fenceStatus = deviceInterface.getFenceStatus(device, testContext.fences[0]); in testFences() 1078 fenceStatus = deviceInterface.getFenceStatus(device, testContext.fences[1]); in testFences() 1086 VK_CHECK(deviceInterface.queueSubmit(queue, 1, &submitInfo, testContext.fences[0])); in testFences() 1089 waitStatus = deviceInterface.waitForFences(device, 1, &testContext.fences[0], true, 0u); in testFences() 1098 waitStatus = deviceInterface.waitForFences(device, 1, &testContext.fences[ in testFences() [all...] |
/third_party/vk-gl-cts/external/vulkancts/modules_no_buildgn/vulkan/synchronization/ |
H A D | vktSynchronizationBasicFenceTests.cpp | 138 std::vector<Move<VkFence>> fences; in basicSignaledCase() local 139 fences.reserve(config.numFences); in basicSignaledCase() 150 fences.push_back(createFence(vkd, device, &fenceCreateInfo)); in basicSignaledCase() 151 if (vkd.getFenceStatus(device, fences.back().get()) != VK_SUCCESS) in basicSignaledCase() 156 std::transform(begin(fences), end(fences), std::back_inserter(rawFences), [](const Move<VkFence>& f) { return f.get(); }); in basicSignaledCase() 333 return tcu::TestStatus::fail("vkWaitForFences should return VK_TIMEOUT for case: Wait for all fences (No fence has been signaled)"); in basicMultiFenceWaitAllFalseCase() 341 return tcu::TestStatus::fail("vkWaitForFences should return VK_TIMEOUT for case: Wait for all fences (Only second fence signaled)"); in basicMultiFenceWaitAllFalseCase() 346 return tcu::TestStatus::fail("vkWaitForFences should return VK_SUCCESS for case: Wait for any fence (All fences signaled)"); in basicMultiFenceWaitAllFalseCase() 349 return tcu::TestStatus::fail("vkWaitForFences should return VK_SUCCESS for case: Wait for all fences (Al in basicMultiFenceWaitAllFalseCase() [all...] |
H A D | vktSynchronizationSmokeTests.cpp | 621 VkFence fences[2]; member 656 createFences(vkd, device, false, DE_LENGTH_OF_ARRAY(fences), fences); in TestContext() 661 destroyFences(vkd, device, DE_LENGTH_OF_ARRAY(fences), fences); in ~TestContext() 1073 fenceStatus = deviceInterface.getFenceStatus(device, testContext.fences[0]); in testFences() 1079 fenceStatus = deviceInterface.getFenceStatus(device, testContext.fences[1]); in testFences() 1087 VK_CHECK(deviceInterface.queueSubmit(queue, 1, &submitInfo, testContext.fences[0])); in testFences() 1090 waitStatus = deviceInterface.waitForFences(device, 1, &testContext.fences[0], true, 0u); in testFences() 1099 waitStatus = deviceInterface.waitForFences(device, 1, &testContext.fences[ in testFences() [all...] |
/third_party/mesa3d/src/gallium/winsys/radeon/drm/ |
H A D | radeon_drm_cs.c | 536 * submissions will be sent to the GPU first, we have to keep the fences 539 * However, fences that belong to submissions that have already returned from 549 /* Cleanup older fences */ in radeon_bo_slab_fence() 552 if (bo->u.slab.fences[src]->num_cs_references) { in radeon_bo_slab_fence() 553 bo->u.slab.fences[dst] = bo->u.slab.fences[src]; in radeon_bo_slab_fence() 556 radeon_ws_bo_reference(&bo->u.slab.fences[src], NULL); in radeon_bo_slab_fence() 564 struct radeon_bo **new_fences = REALLOC(bo->u.slab.fences, in radeon_bo_slab_fence() 572 bo->u.slab.fences = new_fences; in radeon_bo_slab_fence() 577 bo->u.slab.fences[b in radeon_bo_slab_fence() [all...] |
H A D | radeon_drm_bo.c | 81 if (radeon_real_bo_is_busy(bo->u.slab.fences[num_idle])) { in radeon_bo_is_busy() 85 radeon_ws_bo_reference(&bo->u.slab.fences[num_idle], NULL); in radeon_bo_is_busy() 87 memmove(&bo->u.slab.fences[0], &bo->u.slab.fences[num_idle], in radeon_bo_is_busy() 88 (bo->u.slab.num_fences - num_idle) * sizeof(bo->u.slab.fences[0])); in radeon_bo_is_busy() 112 radeon_ws_bo_reference(&fence, bo->u.slab.fences[0]); in radeon_bo_wait_idle() 119 if (bo->u.slab.num_fences && fence == bo->u.slab.fences[0]) { in radeon_bo_wait_idle() 120 radeon_ws_bo_reference(&bo->u.slab.fences[0], NULL); in radeon_bo_wait_idle() 121 memmove(&bo->u.slab.fences[0], &bo->u.slab.fences[ in radeon_bo_wait_idle() [all...] |
/third_party/vk-gl-cts/external/vulkancts/modules/vulkan/wsi/ |
H A D | vktWsiDisplayControlTests.cpp | 297 std::vector<VkFence>& fences) in initFences() 299 for (VkFence& fence : fences) in initFences() 305 std::vector<VkFence>& fences) in deinitFences() 307 for (VkFence& fence : fences) in deinitFences() 316 fences.clear(); in deinitFences() 1056 std::vector<VkFence> fences = std::vector<VkFence>(availableDisplays.size(), (VkFence)0); in testDisplayEvent() local 1068 VkFence& fence = fences[i]; in testDisplayEvent() 1076 deinitFences (vkd, device, fences); in testDisplayEvent() 1088 std::vector<VkFence> fences = std::vector<VkFence>(1, (VkFence)0); in testDeviceEvent() local 1097 VkResult result = vkd.registerDeviceEventEXT(device, &deviceEventInfo, DE_NULL, &fences[ in testDeviceEvent() 295 initFences(const DeviceInterface& vkd, VkDevice device, std::vector<VkFence>& fences) initFences() argument 303 deinitFences(const DeviceInterface& vkd, VkDevice device, std::vector<VkFence>& fences) deinitFences() argument [all...] |
H A D | vktWsiDisplayTimingTests.cpp | 217 std::vector<vk::VkFence>& fences) in initFences() 219 for (size_t ndx = 0; ndx < fences.size(); ndx++) in initFences() 220 fences[ndx] = createFence(vkd, device).disown(); in initFences() 225 std::vector<vk::VkFence>& fences) in deinitFences() 227 for (size_t ndx = 0; ndx < fences.size(); ndx++) in deinitFences() 229 if (fences[ndx] != (vk::VkFence)0) in deinitFences() 230 vkd.destroyFence(device, fences[ndx], DE_NULL); in deinitFences() 232 fences[ndx] = (vk::VkFence)0; in deinitFences() 235 fences.clear(); in deinitFences() 215 initFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) initFences() argument 223 deinitFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) deinitFences() argument
|
H A D | vktWsiIncrementalPresentTests.cpp | 219 std::vector<vk::VkFence>& fences) in initFences() 221 for (size_t ndx = 0; ndx < fences.size(); ndx++) in initFences() 222 fences[ndx] = createFence(vkd, device).disown(); in initFences() 227 std::vector<vk::VkFence>& fences) in deinitFences() 229 for (size_t ndx = 0; ndx < fences.size(); ndx++) in deinitFences() 231 if (fences[ndx] != (vk::VkFence)0) in deinitFences() 232 vkd.destroyFence(device, fences[ndx], DE_NULL); in deinitFences() 234 fences[ndx] = (vk::VkFence)0; in deinitFences() 237 fences.clear(); in deinitFences() 217 initFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) initFences() argument 225 deinitFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) deinitFences() argument
|
H A D | vktWsiSharedPresentableImageTests.cpp | 231 std::vector<vk::VkFence>& fences) in initFences() 233 for (size_t ndx = 0; ndx < fences.size(); ndx++) in initFences() 234 fences[ndx] = createFence(vkd, device).disown(); in initFences() 239 std::vector<vk::VkFence>& fences) in deinitFences() 241 for (size_t ndx = 0; ndx < fences.size(); ndx++) in deinitFences() 243 if (fences[ndx] != (vk::VkFence)0) in deinitFences() 244 vkd.destroyFence(device, fences[ndx], DE_NULL); in deinitFences() 246 fences[ndx] = (vk::VkFence)0; in deinitFences() 249 fences.clear(); in deinitFences() 229 initFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) initFences() argument 237 deinitFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) deinitFences() argument
|
/third_party/vk-gl-cts/external/vulkancts/modules_no_buildgn/vulkan/wsi/ |
H A D | vktWsiDisplayControlTests.cpp | 297 std::vector<VkFence>& fences) in initFences() 299 for (VkFence& fence : fences) in initFences() 305 std::vector<VkFence>& fences) in deinitFences() 307 for (VkFence& fence : fences) in deinitFences() 316 fences.clear(); in deinitFences() 1056 std::vector<VkFence> fences = std::vector<VkFence>(availableDisplays.size(), (VkFence)0); in testDisplayEvent() local 1068 VkFence& fence = fences[i]; in testDisplayEvent() 1076 deinitFences (vkd, device, fences); in testDisplayEvent() 1088 std::vector<VkFence> fences = std::vector<VkFence>(1, (VkFence)0); in testDeviceEvent() local 1097 VkResult result = vkd.registerDeviceEventEXT(device, &deviceEventInfo, DE_NULL, &fences[ in testDeviceEvent() 295 initFences(const DeviceInterface& vkd, VkDevice device, std::vector<VkFence>& fences) initFences() argument 303 deinitFences(const DeviceInterface& vkd, VkDevice device, std::vector<VkFence>& fences) deinitFences() argument [all...] |
H A D | vktWsiDisplayTimingTests.cpp | 217 std::vector<vk::VkFence>& fences) in initFences() 219 for (size_t ndx = 0; ndx < fences.size(); ndx++) in initFences() 220 fences[ndx] = createFence(vkd, device).disown(); in initFences() 225 std::vector<vk::VkFence>& fences) in deinitFences() 227 for (size_t ndx = 0; ndx < fences.size(); ndx++) in deinitFences() 229 if (fences[ndx] != (vk::VkFence)0) in deinitFences() 230 vkd.destroyFence(device, fences[ndx], DE_NULL); in deinitFences() 232 fences[ndx] = (vk::VkFence)0; in deinitFences() 235 fences.clear(); in deinitFences() 215 initFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) initFences() argument 223 deinitFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) deinitFences() argument
|
H A D | vktWsiIncrementalPresentTests.cpp | 219 std::vector<vk::VkFence>& fences) in initFences() 221 for (size_t ndx = 0; ndx < fences.size(); ndx++) in initFences() 222 fences[ndx] = createFence(vkd, device).disown(); in initFences() 227 std::vector<vk::VkFence>& fences) in deinitFences() 229 for (size_t ndx = 0; ndx < fences.size(); ndx++) in deinitFences() 231 if (fences[ndx] != (vk::VkFence)0) in deinitFences() 232 vkd.destroyFence(device, fences[ndx], DE_NULL); in deinitFences() 234 fences[ndx] = (vk::VkFence)0; in deinitFences() 237 fences.clear(); in deinitFences() 217 initFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) initFences() argument 225 deinitFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) deinitFences() argument
|
H A D | vktWsiSharedPresentableImageTests.cpp | 231 std::vector<vk::VkFence>& fences) in initFences() 233 for (size_t ndx = 0; ndx < fences.size(); ndx++) in initFences() 234 fences[ndx] = createFence(vkd, device).disown(); in initFences() 239 std::vector<vk::VkFence>& fences) in deinitFences() 241 for (size_t ndx = 0; ndx < fences.size(); ndx++) in deinitFences() 243 if (fences[ndx] != (vk::VkFence)0) in deinitFences() 244 vkd.destroyFence(device, fences[ndx], DE_NULL); in deinitFences() 246 fences[ndx] = (vk::VkFence)0; in deinitFences() 249 fences.clear(); in deinitFences() 229 initFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) initFences() argument 237 deinitFences(const vk::DeviceInterface& vkd, vk::VkDevice device, std::vector<vk::VkFence>& fences) deinitFences() argument
|
/third_party/vk-gl-cts/external/vulkancts/modules/vulkan/sparse_resources/ |
H A D | vktSparseResourcesQueueBindSparseTests.cpp | 134 bool waitForFences (const DeviceInterface& vk, const VkDevice device, const std::vector<FenceSp>& fences) in waitForFences() argument 136 for (std::vector<FenceSp>::const_iterator fenceSpIter = fences.begin(); fenceSpIter != fences.end(); ++fenceSpIter) in waitForFences() 295 return tcu::TestStatus::fail("Some fences weren't signaled (vkQueueBindSparse didn't signal semaphores?)"); in iterate() 371 //! Sparse queue binding edge cases and synchronization with semaphores/fences.
|
/third_party/vk-gl-cts/external/vulkancts/modules_no_buildgn/vulkan/sparse_resources/ |
H A D | vktSparseResourcesQueueBindSparseTests.cpp | 134 bool waitForFences (const DeviceInterface& vk, const VkDevice device, const std::vector<FenceSp>& fences) in waitForFences() argument 136 for (std::vector<FenceSp>::const_iterator fenceSpIter = fences.begin(); fenceSpIter != fences.end(); ++fenceSpIter) in waitForFences() 295 return tcu::TestStatus::fail("Some fences weren't signaled (vkQueueBindSparse didn't signal semaphores?)"); in iterate() 372 //! Sparse queue binding edge cases and synchronization with semaphores/fences.
|
/third_party/mesa3d/src/vulkan/wsi/ |
H A D | wsi_common.c | 386 if (chain->fences) { in wsi_swapchain_finish() 388 chain->wsi->DestroyFence(chain->device, chain->fences[i], &chain->alloc); in wsi_swapchain_finish() 390 vk_free(&chain->alloc, chain->fences); in wsi_swapchain_finish() 782 swapchain->fences = vk_zalloc(alloc, in wsi_CreateSwapchainKHR() 783 sizeof (*swapchain->fences) * swapchain->image_count, in wsi_CreateSwapchainKHR() 784 sizeof (*swapchain->fences), in wsi_CreateSwapchainKHR() 786 if (!swapchain->fences) { in wsi_CreateSwapchainKHR() 1021 if (swapchain->fences[image_index] == VK_NULL_HANDLE) { in wsi_common_queue_present() 1029 &swapchain->fences[image_index]); in wsi_common_queue_present() 1047 wsi->WaitForFences(device, 1, &swapchain->fences[image_inde in wsi_common_queue_present() [all...] |