• Home
  • Raw
  • Download

Lines Matching full:sync

82              struct vk_sync *sync,  in vk_sync_init()  argument
94 assert(type->size >= sizeof(*sync)); in vk_sync_init()
95 memset(sync, 0, type->size); in vk_sync_init()
96 sync->type = type; in vk_sync_init()
97 sync->flags = flags; in vk_sync_init()
99 return type->init(device, sync, initial_value); in vk_sync_init()
104 struct vk_sync *sync) in vk_sync_finish() argument
106 sync->type->finish(device, sync); in vk_sync_finish()
116 struct vk_sync *sync; in vk_sync_create() local
118 sync = vk_alloc(&device->alloc, type->size, 8, in vk_sync_create()
120 if (sync == NULL) in vk_sync_create()
123 VkResult result = vk_sync_init(device, sync, type, flags, initial_value); in vk_sync_create()
125 vk_free(&device->alloc, sync); in vk_sync_create()
129 *sync_out = sync; in vk_sync_create()
136 struct vk_sync *sync) in vk_sync_destroy() argument
138 vk_sync_finish(device, sync); in vk_sync_destroy()
139 vk_free(&device->alloc, sync); in vk_sync_destroy()
144 struct vk_sync *sync, in vk_sync_signal() argument
147 assert(sync->type->features & VK_SYNC_FEATURE_CPU_SIGNAL); in vk_sync_signal()
149 if (sync->flags & VK_SYNC_IS_TIMELINE) in vk_sync_signal()
154 return sync->type->signal(device, sync, value); in vk_sync_signal()
159 struct vk_sync *sync, in vk_sync_get_value() argument
162 assert(sync->flags & VK_SYNC_IS_TIMELINE); in vk_sync_get_value()
163 return sync->type->get_value(device, sync, value); in vk_sync_get_value()
168 struct vk_sync *sync) in vk_sync_reset() argument
170 assert(sync->type->features & VK_SYNC_FEATURE_CPU_RESET); in vk_sync_reset()
171 assert(!(sync->flags & VK_SYNC_IS_TIMELINE)); in vk_sync_reset()
172 return sync->type->reset(device, sync); in vk_sync_reset()
187 assert_valid_wait(struct vk_sync *sync, in assert_valid_wait() argument
191 assert(sync->type->features & VK_SYNC_FEATURE_CPU_WAIT); in assert_valid_wait()
193 if (!(sync->flags & VK_SYNC_IS_TIMELINE)) in assert_valid_wait()
197 assert(sync->type->features & VK_SYNC_FEATURE_WAIT_PENDING); in assert_valid_wait()
215 struct vk_sync *sync, in __vk_sync_wait() argument
220 assert_valid_wait(sync, wait_value, wait_flags); in __vk_sync_wait()
225 if (sync->type->wait) { in __vk_sync_wait()
226 return sync->type->wait(device, sync, wait_value, in __vk_sync_wait()
230 .sync = sync, in __vk_sync_wait()
234 return sync->type->wait_many(device, 1, &wait, wait_flags, in __vk_sync_wait()
241 struct vk_sync *sync, in vk_sync_wait() argument
249 __vk_sync_wait(device, sync, wait_value, wait_flags, in vk_sync_wait()
255 return __vk_sync_wait(device, sync, wait_value, wait_flags, in vk_sync_wait()
265 if (waits[0].sync->type->wait_many == NULL) in can_wait_many()
269 !(waits[0].sync->type->features & VK_SYNC_FEATURE_WAIT_ANY)) in can_wait_many()
273 assert_valid_wait(waits[i].sync, waits[i].wait_value, wait_flags); in can_wait_many()
274 if (waits[i].sync->type != waits[0].sync->type) in can_wait_many()
292 return __vk_sync_wait(device, waits[0].sync, waits[0].wait_value, in __vk_sync_wait_many()
297 return waits[0].sync->type->wait_many(device, wait_count, waits, in __vk_sync_wait_many()
305 VkResult result = __vk_sync_wait(device, waits[i].sync, in __vk_sync_wait_many()
317 VkResult result = __vk_sync_wait(device, waits[i].sync, in __vk_sync_wait_many()
350 struct vk_sync *sync, in vk_sync_import_opaque_fd() argument
353 VkResult result = sync->type->import_opaque_fd(device, sync, fd); in vk_sync_import_opaque_fd()
357 sync->flags |= VK_SYNC_IS_SHAREABLE | in vk_sync_import_opaque_fd()
365 struct vk_sync *sync, in vk_sync_export_opaque_fd() argument
368 assert(sync->flags & VK_SYNC_IS_SHAREABLE); in vk_sync_export_opaque_fd()
370 VkResult result = sync->type->export_opaque_fd(device, sync, fd); in vk_sync_export_opaque_fd()
374 sync->flags |= VK_SYNC_IS_SHARED; in vk_sync_export_opaque_fd()
381 struct vk_sync *sync, in vk_sync_import_sync_file() argument
384 assert(!(sync->flags & VK_SYNC_IS_TIMELINE)); in vk_sync_import_sync_file()
389 if (sync_file < 0 && sync->type->signal) in vk_sync_import_sync_file()
390 return sync->type->signal(device, sync, 0); in vk_sync_import_sync_file()
392 return sync->type->import_sync_file(device, sync, sync_file); in vk_sync_import_sync_file()
397 struct vk_sync *sync, in vk_sync_export_sync_file() argument
400 assert(!(sync->flags & VK_SYNC_IS_TIMELINE)); in vk_sync_export_sync_file()
401 return sync->type->export_sync_file(device, sync, sync_file); in vk_sync_export_sync_file()
406 struct vk_sync *sync, in vk_sync_import_win32_handle() argument
410 VkResult result = sync->type->import_win32_handle(device, sync, handle, name); in vk_sync_import_win32_handle()
414 sync->flags |= VK_SYNC_IS_SHAREABLE | in vk_sync_import_win32_handle()
422 struct vk_sync *sync, in vk_sync_export_win32_handle() argument
425 assert(sync->flags & VK_SYNC_IS_SHAREABLE); in vk_sync_export_win32_handle()
427 VkResult result = sync->type->export_win32_handle(device, sync, handle); in vk_sync_export_win32_handle()
431 sync->flags |= VK_SYNC_IS_SHARED; in vk_sync_export_win32_handle()
438 struct vk_sync *sync, in vk_sync_set_win32_export_params() argument
443 assert(sync->flags & VK_SYNC_IS_SHARED); in vk_sync_set_win32_export_params()
445 return sync->type->set_win32_export_params(device, sync, security_attributes, access, name); in vk_sync_set_win32_export_params()