• Home
  • Raw
  • Download

Lines Matching refs:fd

65 syncobj_attach_sw_sync(int fd, uint32_t handle)  in syncobj_attach_sw_sync()  argument
72 syncobj_import_sync_file(fd, handle, fence); in syncobj_attach_sw_sync()
79 syncobj_trigger(int fd, uint32_t handle) in syncobj_trigger() argument
81 int timeline = syncobj_attach_sw_sync(fd, handle); in syncobj_trigger()
111 int fd; member
125 syncobj_trigger(pair->fd, pair->handle); in syncobj_trigger_free_pair_func()
130 syncobj_trigger_delayed(int fd, uint32_t syncobj, uint64_t nsec) in syncobj_trigger_delayed() argument
134 pair->fd = fd; in syncobj_trigger_delayed()
141 test_wait_bad_flags(int fd) in test_wait_bad_flags() argument
145 igt_assert_eq(__syncobj_wait(fd, &wait), -EINVAL); in test_wait_bad_flags()
149 test_wait_zero_handles(int fd) in test_wait_zero_handles() argument
152 igt_assert_eq(__syncobj_wait(fd, &wait), -EINVAL); in test_wait_zero_handles()
156 test_wait_illegal_handle(int fd) in test_wait_illegal_handle() argument
163 igt_assert_eq(__syncobj_wait(fd, &wait), -ENOENT); in test_wait_illegal_handle()
167 test_reset_zero_handles(int fd) in test_reset_zero_handles() argument
172 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_RESET, &array); in test_reset_zero_handles()
177 test_reset_illegal_handle(int fd) in test_reset_illegal_handle() argument
185 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_RESET, &array); in test_reset_illegal_handle()
190 test_reset_one_illegal_handle(int fd) in test_reset_one_illegal_handle() argument
196 syncobjs[0] = syncobj_create(fd, LOCAL_SYNCOBJ_CREATE_SIGNALED); in test_reset_one_illegal_handle()
198 syncobjs[2] = syncobj_create(fd, LOCAL_SYNCOBJ_CREATE_SIGNALED); in test_reset_one_illegal_handle()
200 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[0], 1, 0, 0), 0); in test_reset_one_illegal_handle()
201 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[2], 1, 0, 0), 0); in test_reset_one_illegal_handle()
205 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_RESET, &array); in test_reset_one_illegal_handle()
209 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[0], 1, 0, 0), 0); in test_reset_one_illegal_handle()
210 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[2], 1, 0, 0), 0); in test_reset_one_illegal_handle()
212 syncobj_destroy(fd, syncobjs[0]); in test_reset_one_illegal_handle()
213 syncobj_destroy(fd, syncobjs[2]); in test_reset_one_illegal_handle()
217 test_reset_bad_pad(int fd) in test_reset_bad_pad() argument
226 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_RESET, &array); in test_reset_bad_pad()
231 test_signal_zero_handles(int fd) in test_signal_zero_handles() argument
236 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_SIGNAL, &array); in test_signal_zero_handles()
241 test_signal_illegal_handle(int fd) in test_signal_illegal_handle() argument
249 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_SIGNAL, &array); in test_signal_illegal_handle()
254 test_signal_one_illegal_handle(int fd) in test_signal_one_illegal_handle() argument
260 syncobjs[0] = syncobj_create(fd, 0); in test_signal_one_illegal_handle()
262 syncobjs[2] = syncobj_create(fd, 0); in test_signal_one_illegal_handle()
264 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[0], 1, 0, 0), -EINVAL); in test_signal_one_illegal_handle()
265 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[2], 1, 0, 0), -EINVAL); in test_signal_one_illegal_handle()
269 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_SIGNAL, &array); in test_signal_one_illegal_handle()
273 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[0], 1, 0, 0), -EINVAL); in test_signal_one_illegal_handle()
274 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[2], 1, 0, 0), -EINVAL); in test_signal_one_illegal_handle()
276 syncobj_destroy(fd, syncobjs[0]); in test_signal_one_illegal_handle()
277 syncobj_destroy(fd, syncobjs[2]); in test_signal_one_illegal_handle()
281 test_signal_bad_pad(int fd) in test_signal_bad_pad() argument
290 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_SIGNAL, &array); in test_signal_bad_pad()
316 test_single_wait(int fd, uint32_t test_flags, int expect) in test_single_wait() argument
318 uint32_t syncobj = syncobj_create(fd, 0); in test_single_wait()
323 timeline = syncobj_attach_sw_sync(fd, syncobj); in test_single_wait()
328 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, 0, flags), expect); in test_single_wait()
330 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, short_timeout(), in test_single_wait()
334 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, UINT64_MAX, in test_single_wait()
338 syncobj_destroy(fd, syncobj); in test_single_wait()
344 test_wait_delayed_signal(int fd, uint32_t test_flags) in test_wait_delayed_signal() argument
346 uint32_t syncobj = syncobj_create(fd, 0); in test_wait_delayed_signal()
352 timer = syncobj_trigger_delayed(fd, syncobj, SHORT_TIME_NSEC); in test_wait_delayed_signal()
354 timeline = syncobj_attach_sw_sync(fd, syncobj); in test_wait_delayed_signal()
359 igt_assert(syncobj_wait(fd, &syncobj, 1, in test_wait_delayed_signal()
368 syncobj_destroy(fd, syncobj); in test_wait_delayed_signal()
372 test_reset_unsignaled(int fd) in test_reset_unsignaled() argument
374 uint32_t syncobj = syncobj_create(fd, 0); in test_reset_unsignaled()
376 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, 0, 0), -EINVAL); in test_reset_unsignaled()
378 syncobj_reset(fd, &syncobj, 1); in test_reset_unsignaled()
380 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, 0, 0), -EINVAL); in test_reset_unsignaled()
382 syncobj_destroy(fd, syncobj); in test_reset_unsignaled()
386 test_reset_signaled(int fd) in test_reset_signaled() argument
388 uint32_t syncobj = syncobj_create(fd, 0); in test_reset_signaled()
390 syncobj_trigger(fd, syncobj); in test_reset_signaled()
392 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, 0, 0), 0); in test_reset_signaled()
394 syncobj_reset(fd, &syncobj, 1); in test_reset_signaled()
396 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, 0, 0), -EINVAL); in test_reset_signaled()
398 syncobj_destroy(fd, syncobj); in test_reset_signaled()
402 test_reset_multiple_signaled(int fd) in test_reset_multiple_signaled() argument
408 syncobjs[i] = syncobj_create(fd, 0); in test_reset_multiple_signaled()
409 syncobj_trigger(fd, syncobjs[i]); in test_reset_multiple_signaled()
412 igt_assert_eq(syncobj_wait_err(fd, syncobjs, 3, 0, 0), 0); in test_reset_multiple_signaled()
414 syncobj_reset(fd, syncobjs, 3); in test_reset_multiple_signaled()
417 igt_assert_eq(syncobj_wait_err(fd, &syncobjs[i], 1, in test_reset_multiple_signaled()
419 syncobj_destroy(fd, syncobjs[i]); in test_reset_multiple_signaled()
427 syncobj_reset(pair->fd, &pair->handle, 1); in reset_and_trigger_func()
428 syncobj_trigger(pair->fd, pair->handle); in reset_and_trigger_func()
432 test_reset_during_wait_for_submit(int fd) in test_reset_during_wait_for_submit() argument
434 uint32_t syncobj = syncobj_create(fd, 0); in test_reset_during_wait_for_submit()
439 pair.fd = fd; in test_reset_during_wait_for_submit()
444 igt_assert(syncobj_wait(fd, &syncobj, 1, in test_reset_during_wait_for_submit()
450 syncobj_destroy(fd, syncobj); in test_reset_during_wait_for_submit()
454 test_signal(int fd) in test_signal() argument
456 uint32_t syncobj = syncobj_create(fd, 0); in test_signal()
459 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, 0, 0), -EINVAL); in test_signal()
460 igt_assert_eq(syncobj_wait_err(fd, &syncobj, 1, 0, flags), -ETIME); in test_signal()
462 syncobj_signal(fd, &syncobj, 1); in test_signal()
464 igt_assert(syncobj_wait(fd, &syncobj, 1, 0, 0, NULL)); in test_signal()
465 igt_assert(syncobj_wait(fd, &syncobj, 1, 0, flags, NULL)); in test_signal()
467 syncobj_destroy(fd, syncobj); in test_signal()
471 test_multi_wait(int fd, uint32_t test_flags, int expect) in test_multi_wait() argument
477 syncobjs[0] = syncobj_create(fd, 0); in test_multi_wait()
478 syncobjs[1] = syncobj_create(fd, 0); in test_multi_wait()
479 syncobjs[2] = syncobj_create(fd, 0); in test_multi_wait()
492 timeline = syncobj_attach_sw_sync(fd, syncobjs[i]); in test_multi_wait()
497 igt_assert_eq(syncobj_wait_err(fd, syncobjs, 3, 0, flags), expect); in test_multi_wait()
499 igt_assert_eq(syncobj_wait_err(fd, syncobjs, 3, short_timeout(), in test_multi_wait()
503 igt_assert_eq(syncobj_wait_err(fd, syncobjs, 3, UINT64_MAX, in test_multi_wait()
507 syncobj_destroy(fd, syncobjs[0]); in test_multi_wait()
508 syncobj_destroy(fd, syncobjs[1]); in test_multi_wait()
509 syncobj_destroy(fd, syncobjs[2]); in test_multi_wait()
513 int fd; member
521 igt_assert_eq(__syncobj_wait(wait->fd, &wait->wait), 0); in wait_thread_func()
526 test_wait_snapshot(int fd, uint32_t test_flags) in test_wait_snapshot() argument
533 syncobjs[0] = syncobj_create(fd, 0); in test_wait_snapshot()
534 syncobjs[1] = syncobj_create(fd, 0); in test_wait_snapshot()
537 timelines[0] = syncobj_attach_sw_sync(fd, syncobjs[0]); in test_wait_snapshot()
538 timelines[1] = syncobj_attach_sw_sync(fd, syncobjs[1]); in test_wait_snapshot()
541 wait.fd = fd; in test_wait_snapshot()
557 syncobj_trigger(fd, syncobjs[0]); in test_wait_snapshot()
561 timelines[0] = syncobj_attach_sw_sync(fd, syncobjs[0]); in test_wait_snapshot()
567 syncobj_reset(fd, &syncobjs[0], 1); in test_wait_snapshot()
575 timelines[2] = syncobj_attach_sw_sync(fd, syncobjs[0]); in test_wait_snapshot()
582 syncobj_trigger(fd, syncobjs[1]); in test_wait_snapshot()
594 syncobj_destroy(fd, syncobjs[0]); in test_wait_snapshot()
595 syncobj_destroy(fd, syncobjs[1]); in test_wait_snapshot()
613 test_wait_complex(int fd, uint32_t test_flags) in test_wait_complex() argument
624 syncobjs[i] = syncobj_create(fd, 0); in test_wait_complex()
632 timelines[i] = syncobj_attach_sw_sync(fd, syncobjs[i]); in test_wait_complex()
635 wait.fd = fd; in test_wait_complex()
658 timelines[i] = syncobj_attach_sw_sync(fd, syncobjs[i]); in test_wait_complex()
674 syncobj_reset(fd, &syncobjs[i], 1); in test_wait_complex()
679 timelines[i] = syncobj_attach_sw_sync(fd, syncobjs[i]); in test_wait_complex()
709 syncobj_destroy(fd, syncobjs[i]); in test_wait_complex()
714 test_wait_interrupted(int fd, uint32_t test_flags) in test_wait_interrupted() argument
717 uint32_t syncobj = syncobj_create(fd, 0); in test_wait_interrupted()
727 igt_assert_eq(__syncobj_wait(fd, &wait), -ETIME); in test_wait_interrupted()
730 timeline = syncobj_attach_sw_sync(fd, syncobj); in test_wait_interrupted()
734 igt_assert_eq(__syncobj_wait(fd, &wait), -ETIME); in test_wait_interrupted()
736 syncobj_destroy(fd, syncobj); in test_wait_interrupted()
741 has_syncobj_wait(int fd) in has_syncobj_wait() argument
748 if (drmGetCap(fd, DRM_CAP_SYNCOBJ, &value)) in has_syncobj_wait()
756 ret = drmIoctl(fd, LOCAL_IOCTL_SYNCOBJ_WAIT, &wait); in has_syncobj_wait()
762 int fd = -1; variable
765 fd = drm_open_driver(DRIVER_ANY);
766 igt_require(has_syncobj_wait(fd));
771 test_wait_bad_flags(fd);
774 test_wait_zero_handles(fd);
777 test_wait_illegal_handle(fd);
780 test_reset_zero_handles(fd);
783 test_reset_illegal_handle(fd);
786 test_reset_one_illegal_handle(fd);
789 test_reset_bad_pad(fd);
792 test_signal_zero_handles(fd);
795 test_signal_illegal_handle(fd);
798 test_signal_one_illegal_handle(fd);
801 test_signal_bad_pad(fd);
826 test_single_wait(fd, flags, err);
830 test_wait_delayed_signal(fd, 0);
833 test_wait_delayed_signal(fd, WAIT_FOR_SUBMIT);
836 test_wait_delayed_signal(fd, WAIT_ALL);
839 test_wait_delayed_signal(fd, WAIT_ALL | WAIT_FOR_SUBMIT);
842 test_reset_unsignaled(fd);
845 test_reset_signaled(fd);
848 test_reset_multiple_signaled(fd);
851 test_reset_during_wait_for_submit(fd);
854 test_signal(fd);
883 test_multi_wait(fd, flags, err);
887 test_wait_snapshot(fd, 0);
890 test_wait_snapshot(fd, WAIT_ALL);
893 test_wait_snapshot(fd, WAIT_FOR_SUBMIT);
896 test_wait_snapshot(fd, WAIT_ALL | WAIT_FOR_SUBMIT);
899 test_wait_complex(fd, 0);
902 test_wait_complex(fd, WAIT_ALL);
905 test_wait_complex(fd, WAIT_FOR_SUBMIT);
908 test_wait_complex(fd, WAIT_ALL | WAIT_FOR_SUBMIT);
911 test_wait_interrupted(fd, 0);
914 test_wait_interrupted(fd, WAIT_ALL);