* [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export @ 2021-05-21 21:29 Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 1/2] tests/dmabuf: Add tests for sync_file export (v2) Jason Ekstrand ` (4 more replies) 0 siblings, 5 replies; 7+ messages in thread From: Jason Ekstrand @ 2021-05-21 21:29 UTC (permalink / raw) To: igt-dev This little series adds tests for sync_file import/export as per this patch series on dri-devel: https://patchwork.freedesktop.org/series/90380/ https://lists.freedesktop.org/archives/dri-devel/2021-May/307561.html Jason Ekstrand (2): tests/dmabuf: Add tests for sync_file export (v2) tests/dmabuf: Add tests for sync_file import tests/dmabuf_sync_file.c | 364 +++++++++++++++++++++++++++++++++++++++ tests/meson.build | 1 + 2 files changed, 365 insertions(+) create mode 100644 tests/dmabuf_sync_file.c -- 2.31.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 7+ messages in thread
* [igt-dev] [PATCH i-g-t 1/2] tests/dmabuf: Add tests for sync_file export (v2) 2021-05-21 21:29 [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export Jason Ekstrand @ 2021-05-21 21:29 ` Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 2/2] tests/dmabuf: Add tests for sync_file import (v2) Jason Ekstrand ` (3 subsequent siblings) 4 siblings, 0 replies; 7+ messages in thread From: Jason Ekstrand @ 2021-05-21 21:29 UTC (permalink / raw) To: igt-dev v2 (Jason Ekstrand): - Rename subtests to have "export" in the name Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> --- tests/dmabuf_sync_file.c | 232 +++++++++++++++++++++++++++++++++++++++ tests/meson.build | 1 + 2 files changed, 233 insertions(+) create mode 100644 tests/dmabuf_sync_file.c diff --git a/tests/dmabuf_sync_file.c b/tests/dmabuf_sync_file.c new file mode 100644 index 00000000..e7350905 --- /dev/null +++ b/tests/dmabuf_sync_file.c @@ -0,0 +1,232 @@ +/* + * Copyright © 2021 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ + +#include "igt.h" +#include "igt_vgem.h" + +#include <linux/dma-buf.h> +#include <sys/poll.h> + +IGT_TEST_DESCRIPTION("Tests for sync_file export from dma-buf"); + +struct igt_dma_buf_sync_file { + __u32 flags; + __s32 fd; +}; + +#define IGT_DMA_BUF_IOCTL_EXPORT_SYNC_FILE _IOWR(DMA_BUF_BASE, 2, struct igt_dma_buf_sync_file) + +static bool has_dmabuf_sync_file(int fd) +{ + struct vgem_bo bo; + int dmabuf, ret; + struct igt_dma_buf_sync_file arg; + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + gem_close(fd, bo.handle); + + arg.flags = DMA_BUF_SYNC_WRITE; + arg.fd = -1; + + ret = igt_ioctl(dmabuf, IGT_DMA_BUF_IOCTL_EXPORT_SYNC_FILE, &arg); + close(dmabuf); + igt_assert(ret == 0 || errno == ENOTTY); + + return ret == 0; +} + +static int dmabuf_export_sync_file(int dmabuf, uint32_t flags) +{ + struct igt_dma_buf_sync_file arg; + + arg.flags = flags; + arg.fd = -1; + do_ioctl(dmabuf, IGT_DMA_BUF_IOCTL_EXPORT_SYNC_FILE, &arg); + + return arg.fd; +} + +static bool sync_file_busy(int sync_file) +{ + struct pollfd pfd = { .fd = sync_file, .events = POLLIN }; + return poll(&pfd, 1, 0) == 0; +} + +static bool dmabuf_sync_file_busy(int dmabuf, uint32_t flags) +{ + int sync_file; + bool busy; + + sync_file = dmabuf_export_sync_file(dmabuf, flags); + busy = sync_file_busy(sync_file); + close(sync_file); + + return busy; +} + +static void test_export_basic(int fd) +{ + struct vgem_bo bo; + int dmabuf; + uint32_t fence; + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + fence = vgem_fence_attach(fd, &bo, 0); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fence); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + fence = vgem_fence_attach(fd, &bo, VGEM_FENCE_WRITE); + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fence); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + close(dmabuf); + gem_close(fd, bo.handle); +} + +static void test_export_multiwait(int fd) +{ + struct vgem_bo bo; + int dmabuf, sync_file; + uint32_t fence1, fence2, fence3; + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + fence1 = vgem_fence_attach(fd, &bo, 0); + fence2 = vgem_fence_attach(fd, &bo, 0); + + sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_WRITE); + + fence3 = vgem_fence_attach(fd, &bo, 0); + + igt_assert(sync_file_busy(sync_file)); + + vgem_fence_signal(fd, fence1); + + igt_assert(sync_file_busy(sync_file)); + + vgem_fence_signal(fd, fence2); + + igt_assert(!sync_file_busy(sync_file)); + + vgem_fence_signal(fd, fence3); + + close(sync_file); + close(dmabuf); + gem_close(fd, bo.handle); +} + +static void test_export_wait_after_attach(int fd) +{ + struct vgem_bo bo; + int dmabuf, read_sync_file, write_sync_file; + uint32_t fence1, fence2; + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + read_sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_READ); + write_sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_WRITE); + + fence1 = vgem_fence_attach(fd, &bo, VGEM_FENCE_WRITE); + + igt_assert(!sync_file_busy(read_sync_file)); + igt_assert(!sync_file_busy(write_sync_file)); + close(read_sync_file); + close(write_sync_file); + + /* These wait on fence1 */ + read_sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_READ); + write_sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_WRITE); + + igt_assert(sync_file_busy(read_sync_file)); + igt_assert(sync_file_busy(write_sync_file)); + + vgem_fence_signal(fd, fence1); + fence2 = vgem_fence_attach(fd, &bo, VGEM_FENCE_WRITE); + + /* fence1 has signaled */ + igt_assert(!sync_file_busy(read_sync_file)); + igt_assert(!sync_file_busy(write_sync_file)); + + /* fence2 has not */ + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fence2); + close(read_sync_file); + close(write_sync_file); + + close(dmabuf); + gem_close(fd, bo.handle); +} + +igt_main +{ + int fd; + + igt_fixture { + fd = drm_open_driver(DRIVER_VGEM); + igt_require(has_dmabuf_sync_file(fd)); + } + + igt_subtest_f("export-basic") + test_export_basic(fd); + + igt_subtest_f("export-multiwait") + test_export_multiwait(fd); + + igt_subtest_f("export-wait-after-attach") + test_export_wait_after_attach(fd); + +} diff --git a/tests/meson.build b/tests/meson.build index 19cc4ebe..a0992989 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -7,6 +7,7 @@ test_progs = [ 'core_setmaster_vs_auth', 'debugfs_test', 'dmabuf', + 'dmabuf_sync_file', 'device_reset', 'drm_import_export', 'drm_mm', -- 2.31.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [igt-dev] [PATCH i-g-t 2/2] tests/dmabuf: Add tests for sync_file import (v2) 2021-05-21 21:29 [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 1/2] tests/dmabuf: Add tests for sync_file export (v2) Jason Ekstrand @ 2021-05-21 21:29 ` Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 2/2] tests/dmabuf: Add tests for sync_file import Jason Ekstrand ` (2 subsequent siblings) 4 siblings, 0 replies; 7+ messages in thread From: Jason Ekstrand @ 2021-05-21 21:29 UTC (permalink / raw) To: igt-dev v2 (Jason Ekstrand): - Put the skip for igt_rwquire_sw_sync() in the subtests Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> --- tests/dmabuf_sync_file.c | 132 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) diff --git a/tests/dmabuf_sync_file.c b/tests/dmabuf_sync_file.c index e7350905..5f17574f 100644 --- a/tests/dmabuf_sync_file.c +++ b/tests/dmabuf_sync_file.c @@ -23,6 +23,7 @@ #include "igt.h" #include "igt_vgem.h" +#include "sw_sync.h" #include <linux/dma-buf.h> #include <sys/poll.h> @@ -35,6 +36,7 @@ struct igt_dma_buf_sync_file { }; #define IGT_DMA_BUF_IOCTL_EXPORT_SYNC_FILE _IOWR(DMA_BUF_BASE, 2, struct igt_dma_buf_sync_file) +#define IGT_DMA_BUF_IOCTL_IMPORT_SYNC_FILE _IOW(DMA_BUF_BASE, 3, struct igt_dma_buf_sync_file) static bool has_dmabuf_sync_file(int fd) { @@ -71,6 +73,37 @@ static int dmabuf_export_sync_file(int dmabuf, uint32_t flags) return arg.fd; } +static void dmabuf_import_sync_file(int dmabuf, int sync_fd) +{ + struct igt_dma_buf_sync_file arg; + + arg.flags = DMA_BUF_SYNC_RW; + arg.fd = sync_fd; + do_ioctl(dmabuf, IGT_DMA_BUF_IOCTL_IMPORT_SYNC_FILE, &arg); +} + +static void +dmabuf_import_timeline_fence(int dmabuf, int timeline, uint32_t seqno) +{ + int fence; + + fence = sw_sync_timeline_create_fence(timeline, seqno); + dmabuf_import_sync_file(dmabuf, fence); + close(fence); +} + +static bool dmabuf_busy(int dmabuf, uint32_t flags) +{ + struct pollfd pfd = { .fd = dmabuf }; + + if (flags & DMA_BUF_SYNC_READ) + pfd.events |= POLLIN; + if (flags & DMA_BUF_SYNC_WRITE) + pfd.events |= POLLOUT; + + return poll(&pfd, 1, 0) == 0; +} + static bool sync_file_busy(int sync_file) { struct pollfd pfd = { .fd = sync_file, .events = POLLIN }; @@ -211,6 +244,91 @@ static void test_export_wait_after_attach(int fd) gem_close(fd, bo.handle); } +static void test_import_existing_shared(int fd, int shared_count) +{ + struct vgem_bo bo; + int i, dmabuf, timeline; + uint32_t fences[32]; + + igt_require_sw_sync(); + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + igt_assert(shared_count <= ARRAY_SIZE(fences)); + for (i = 0; i < shared_count; i++) + fences[i] = vgem_fence_attach(fd, &bo, 0); + + timeline = sw_sync_timeline_create(); + dmabuf_import_timeline_fence(dmabuf, timeline, 1); + + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + sw_sync_timeline_inc(timeline, 1); + + for (i = shared_count - 1; i >= 0; i--) { + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fences[i]); + } + + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + close(dmabuf); + gem_close(fd, bo.handle); +} + +static void test_import_existing_exclusive(int fd) +{ + struct vgem_bo bo; + int dmabuf, timeline; + uint32_t fence; + + igt_require_sw_sync(); + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + fence = vgem_fence_attach(fd, &bo, VGEM_FENCE_WRITE); + + timeline = sw_sync_timeline_create(); + dmabuf_import_timeline_fence(dmabuf, timeline, 1); + + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + sw_sync_timeline_inc(timeline, 1); + + /* Still busy because we should have absorbed all the old fences */ + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fence); + + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + close(dmabuf); + gem_close(fd, bo.handle); +} + igt_main { int fd; @@ -223,10 +341,24 @@ igt_main igt_subtest_f("export-basic") test_export_basic(fd); + igt_subtest_f("import-basic") + test_import_existing_shared(fd, 0); + igt_subtest_f("export-multiwait") test_export_multiwait(fd); igt_subtest_f("export-wait-after-attach") test_export_wait_after_attach(fd); + igt_subtest_f("import-existing-shared-1") + test_import_existing_shared(fd, 1); + + igt_subtest_f("import-existing-shared-5") + test_import_existing_shared(fd, 5); + + igt_subtest_f("import-existing-shared-32") + test_import_existing_shared(fd, 32); + + igt_subtest_f("import-existing-exclusive") + test_import_existing_exclusive(fd); } -- 2.31.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [igt-dev] [PATCH i-g-t 2/2] tests/dmabuf: Add tests for sync_file import 2021-05-21 21:29 [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 1/2] tests/dmabuf: Add tests for sync_file export (v2) Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 2/2] tests/dmabuf: Add tests for sync_file import (v2) Jason Ekstrand @ 2021-05-21 21:29 ` Jason Ekstrand 2021-05-21 22:04 ` [igt-dev] ✓ Fi.CI.BAT: success for Add tests for sync_file import/export (rev2) Patchwork 2021-05-24 5:10 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 4 siblings, 0 replies; 7+ messages in thread From: Jason Ekstrand @ 2021-05-21 21:29 UTC (permalink / raw) To: igt-dev --- tests/dmabuf_sync_file.c | 132 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) diff --git a/tests/dmabuf_sync_file.c b/tests/dmabuf_sync_file.c index e7350905..5f17574f 100644 --- a/tests/dmabuf_sync_file.c +++ b/tests/dmabuf_sync_file.c @@ -23,6 +23,7 @@ #include "igt.h" #include "igt_vgem.h" +#include "sw_sync.h" #include <linux/dma-buf.h> #include <sys/poll.h> @@ -35,6 +36,7 @@ struct igt_dma_buf_sync_file { }; #define IGT_DMA_BUF_IOCTL_EXPORT_SYNC_FILE _IOWR(DMA_BUF_BASE, 2, struct igt_dma_buf_sync_file) +#define IGT_DMA_BUF_IOCTL_IMPORT_SYNC_FILE _IOW(DMA_BUF_BASE, 3, struct igt_dma_buf_sync_file) static bool has_dmabuf_sync_file(int fd) { @@ -71,6 +73,37 @@ static int dmabuf_export_sync_file(int dmabuf, uint32_t flags) return arg.fd; } +static void dmabuf_import_sync_file(int dmabuf, int sync_fd) +{ + struct igt_dma_buf_sync_file arg; + + arg.flags = DMA_BUF_SYNC_RW; + arg.fd = sync_fd; + do_ioctl(dmabuf, IGT_DMA_BUF_IOCTL_IMPORT_SYNC_FILE, &arg); +} + +static void +dmabuf_import_timeline_fence(int dmabuf, int timeline, uint32_t seqno) +{ + int fence; + + fence = sw_sync_timeline_create_fence(timeline, seqno); + dmabuf_import_sync_file(dmabuf, fence); + close(fence); +} + +static bool dmabuf_busy(int dmabuf, uint32_t flags) +{ + struct pollfd pfd = { .fd = dmabuf }; + + if (flags & DMA_BUF_SYNC_READ) + pfd.events |= POLLIN; + if (flags & DMA_BUF_SYNC_WRITE) + pfd.events |= POLLOUT; + + return poll(&pfd, 1, 0) == 0; +} + static bool sync_file_busy(int sync_file) { struct pollfd pfd = { .fd = sync_file, .events = POLLIN }; @@ -211,6 +244,91 @@ static void test_export_wait_after_attach(int fd) gem_close(fd, bo.handle); } +static void test_import_existing_shared(int fd, int shared_count) +{ + struct vgem_bo bo; + int i, dmabuf, timeline; + uint32_t fences[32]; + + igt_require_sw_sync(); + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + igt_assert(shared_count <= ARRAY_SIZE(fences)); + for (i = 0; i < shared_count; i++) + fences[i] = vgem_fence_attach(fd, &bo, 0); + + timeline = sw_sync_timeline_create(); + dmabuf_import_timeline_fence(dmabuf, timeline, 1); + + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + sw_sync_timeline_inc(timeline, 1); + + for (i = shared_count - 1; i >= 0; i--) { + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fences[i]); + } + + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + close(dmabuf); + gem_close(fd, bo.handle); +} + +static void test_import_existing_exclusive(int fd) +{ + struct vgem_bo bo; + int dmabuf, timeline; + uint32_t fence; + + igt_require_sw_sync(); + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + fence = vgem_fence_attach(fd, &bo, VGEM_FENCE_WRITE); + + timeline = sw_sync_timeline_create(); + dmabuf_import_timeline_fence(dmabuf, timeline, 1); + + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + sw_sync_timeline_inc(timeline, 1); + + /* Still busy because we should have absorbed all the old fences */ + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fence); + + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + close(dmabuf); + gem_close(fd, bo.handle); +} + igt_main { int fd; @@ -223,10 +341,24 @@ igt_main igt_subtest_f("export-basic") test_export_basic(fd); + igt_subtest_f("import-basic") + test_import_existing_shared(fd, 0); + igt_subtest_f("export-multiwait") test_export_multiwait(fd); igt_subtest_f("export-wait-after-attach") test_export_wait_after_attach(fd); + igt_subtest_f("import-existing-shared-1") + test_import_existing_shared(fd, 1); + + igt_subtest_f("import-existing-shared-5") + test_import_existing_shared(fd, 5); + + igt_subtest_f("import-existing-shared-32") + test_import_existing_shared(fd, 32); + + igt_subtest_f("import-existing-exclusive") + test_import_existing_exclusive(fd); } -- 2.31.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Add tests for sync_file import/export (rev2) 2021-05-21 21:29 [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export Jason Ekstrand ` (2 preceding siblings ...) 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 2/2] tests/dmabuf: Add tests for sync_file import Jason Ekstrand @ 2021-05-21 22:04 ` Patchwork 2021-05-24 5:10 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 4 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2021-05-21 22:04 UTC (permalink / raw) To: Jason Ekstrand; +Cc: igt-dev [-- Attachment #1.1: Type: text/plain, Size: 9927 bytes --] == Series Details == Series: Add tests for sync_file import/export (rev2) URL : https://patchwork.freedesktop.org/series/90433/ State : success == Summary == CI Bug Log - changes from IGT_6092 -> IGTPW_5836 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/index.html Known issues ------------ Here are the changes found in IGTPW_5836 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@core_hotunplug@unbind-rebind: - fi-bdw-5557u: NOTRUN -> [WARN][1] ([i915#2283]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-bdw-5557u/igt@core_hotunplug@unbind-rebind.html * igt@gem_huc_copy@huc-copy: - fi-kbl-soraka: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#2190]) [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@gem_huc_copy@huc-copy.html * igt@gem_tiled_blits@basic: - fi-kbl-soraka: NOTRUN -> [SKIP][3] ([fdo#109271]) +3 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@gem_tiled_blits@basic.html * igt@i915_selftest@live@execlists: - fi-kbl-soraka: NOTRUN -> [INCOMPLETE][4] ([i915#2782] / [i915#3462] / [i915#794]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@i915_selftest@live@execlists.html - fi-bdw-5557u: NOTRUN -> [DMESG-FAIL][5] ([i915#3462]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-bdw-5557u/igt@i915_selftest@live@execlists.html * igt@i915_selftest@live@gt_pm: - fi-kbl-soraka: NOTRUN -> [DMESG-FAIL][6] ([i915#1886] / [i915#2291]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html * igt@i915_selftest@live@hangcheck: - fi-snb-2600: [PASS][7] -> [INCOMPLETE][8] ([i915#2782]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-snb-2600/igt@i915_selftest@live@hangcheck.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-snb-2600/igt@i915_selftest@live@hangcheck.html * igt@kms_chamelium@common-hpd-after-suspend: - fi-kbl-soraka: NOTRUN -> [SKIP][9] ([fdo#109271] / [fdo#111827]) +8 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@kms_chamelium@common-hpd-after-suspend.html - fi-kbl-7500u: [PASS][10] -> [FAIL][11] ([i915#3449]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-kbl-7500u/igt@kms_chamelium@common-hpd-after-suspend.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-7500u/igt@kms_chamelium@common-hpd-after-suspend.html * igt@kms_chamelium@dp-crc-fast: - fi-bdw-5557u: NOTRUN -> [SKIP][12] ([fdo#109271] / [fdo#111827]) +8 similar issues [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-bdw-5557u/igt@kms_chamelium@dp-crc-fast.html * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d: - fi-kbl-soraka: NOTRUN -> [SKIP][13] ([fdo#109271] / [i915#533]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html * igt@kms_psr@cursor_plane_move: - fi-bdw-5557u: NOTRUN -> [SKIP][14] ([fdo#109271]) +9 similar issues [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-bdw-5557u/igt@kms_psr@cursor_plane_move.html * igt@runner@aborted: - fi-kbl-soraka: NOTRUN -> [FAIL][15] ([i915#1436] / [i915#3363]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@runner@aborted.html #### Possible fixes #### * igt@debugfs_test@read_all_entries: - fi-kbl-soraka: [DMESG-WARN][16] ([i915#1982] / [i915#262]) -> [PASS][17] [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-kbl-soraka/igt@debugfs_test@read_all_entries.html [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@debugfs_test@read_all_entries.html * igt@gem_exec_suspend@basic-s0: - fi-kbl-soraka: [INCOMPLETE][18] ([i915#155]) -> [PASS][19] [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-kbl-soraka/igt@gem_exec_suspend@basic-s0.html [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-soraka/igt@gem_exec_suspend@basic-s0.html #### Warnings #### * igt@i915_selftest@live@execlists: - fi-bsw-nick: [INCOMPLETE][20] ([i915#2782] / [i915#2940] / [i915#3462]) -> [DMESG-FAIL][21] ([i915#3462]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-bsw-nick/igt@i915_selftest@live@execlists.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-bsw-nick/igt@i915_selftest@live@execlists.html * igt@runner@aborted: - fi-kbl-x1275: [FAIL][22] ([i915#1436] / [i915#3363]) -> [FAIL][23] ([i915#1436] / [i915#2426] / [i915#3363]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-kbl-x1275/igt@runner@aborted.html [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-x1275/igt@runner@aborted.html - fi-bdw-5557u: [FAIL][24] ([i915#1602] / [i915#2029]) -> [FAIL][25] ([i915#3462]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-bdw-5557u/igt@runner@aborted.html [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-bdw-5557u/igt@runner@aborted.html - fi-kbl-guc: [FAIL][26] ([i915#1436] / [i915#2426] / [i915#3363]) -> [FAIL][27] ([i915#1436] / [i915#3363]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-kbl-guc/igt@runner@aborted.html [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-guc/igt@runner@aborted.html - fi-cml-u2: [FAIL][28] ([i915#3363] / [i915#3462]) -> [FAIL][29] ([i915#2082] / [i915#2426] / [i915#3363] / [i915#3462]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-cml-u2/igt@runner@aborted.html [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-cml-u2/igt@runner@aborted.html - fi-cfl-guc: [FAIL][30] ([i915#3363]) -> [FAIL][31] ([i915#2426] / [i915#3363]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-cfl-guc/igt@runner@aborted.html [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-cfl-guc/igt@runner@aborted.html - fi-kbl-7567u: [FAIL][32] ([i915#1436] / [i915#3363]) -> [FAIL][33] ([i915#1436] / [i915#2426] / [i915#3363]) [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-kbl-7567u/igt@runner@aborted.html [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-kbl-7567u/igt@runner@aborted.html - fi-skl-6700k2: [FAIL][34] ([i915#1436] / [i915#2426] / [i915#3363]) -> [FAIL][35] ([i915#1436] / [i915#3363]) [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/fi-skl-6700k2/igt@runner@aborted.html [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/fi-skl-6700k2/igt@runner@aborted.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436 [i915#155]: https://gitlab.freedesktop.org/drm/intel/issues/155 [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602 [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849 [i915#1886]: https://gitlab.freedesktop.org/drm/intel/issues/1886 [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982 [i915#2029]: https://gitlab.freedesktop.org/drm/intel/issues/2029 [i915#2082]: https://gitlab.freedesktop.org/drm/intel/issues/2082 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#2283]: https://gitlab.freedesktop.org/drm/intel/issues/2283 [i915#2291]: https://gitlab.freedesktop.org/drm/intel/issues/2291 [i915#2426]: https://gitlab.freedesktop.org/drm/intel/issues/2426 [i915#262]: https://gitlab.freedesktop.org/drm/intel/issues/262 [i915#2782]: https://gitlab.freedesktop.org/drm/intel/issues/2782 [i915#2932]: https://gitlab.freedesktop.org/drm/intel/issues/2932 [i915#2940]: https://gitlab.freedesktop.org/drm/intel/issues/2940 [i915#2966]: https://gitlab.freedesktop.org/drm/intel/issues/2966 [i915#3180]: https://gitlab.freedesktop.org/drm/intel/issues/3180 [i915#3277]: https://gitlab.freedesktop.org/drm/intel/issues/3277 [i915#3283]: https://gitlab.freedesktop.org/drm/intel/issues/3283 [i915#3363]: https://gitlab.freedesktop.org/drm/intel/issues/3363 [i915#3449]: https://gitlab.freedesktop.org/drm/intel/issues/3449 [i915#3462]: https://gitlab.freedesktop.org/drm/intel/issues/3462 [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533 [i915#794]: https://gitlab.freedesktop.org/drm/intel/issues/794 Participating hosts (42 -> 38) ------------------------------ Missing (4): fi-dg1-1 fi-bsw-cyan fi-bdw-samus fi-hsw-4200u Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_6092 -> IGTPW_5836 CI-20190529: 20190529 CI_DRM_10120: 9221d50d353487d2e10226318d89027037255621 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_5836: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/index.html IGT_6092: d87087c321da07035d4f96d98c34e451b3ccb809 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Testlist changes == +igt@dmabuf_sync_file@export-basic +igt@dmabuf_sync_file@export-multiwait +igt@dmabuf_sync_file@export-wait-after-attach +igt@dmabuf_sync_file@import-basic +igt@dmabuf_sync_file@import-existing-exclusive +igt@dmabuf_sync_file@import-existing-shared-1 +igt@dmabuf_sync_file@import-existing-shared-5 +igt@dmabuf_sync_file@import-existing-shared-32 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/index.html [-- Attachment #1.2: Type: text/html, Size: 13205 bytes --] [-- Attachment #2: Type: text/plain, Size: 154 bytes --] _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 7+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Add tests for sync_file import/export (rev2) 2021-05-21 21:29 [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export Jason Ekstrand ` (3 preceding siblings ...) 2021-05-21 22:04 ` [igt-dev] ✓ Fi.CI.BAT: success for Add tests for sync_file import/export (rev2) Patchwork @ 2021-05-24 5:10 ` Patchwork 4 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2021-05-24 5:10 UTC (permalink / raw) To: Jason Ekstrand; +Cc: igt-dev [-- Attachment #1.1: Type: text/plain, Size: 30262 bytes --] == Series Details == Series: Add tests for sync_file import/export (rev2) URL : https://patchwork.freedesktop.org/series/90433/ State : success == Summary == CI Bug Log - changes from IGT_6092_full -> IGTPW_5836_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_5836_full: ### IGT changes ### #### Possible regressions #### * {igt@dmabuf_sync_file@import-basic} (NEW): - shard-iclb: NOTRUN -> [SKIP][1] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@dmabuf_sync_file@import-basic.html * {igt@dmabuf_sync_file@import-existing-shared-5} (NEW): - shard-tglb: NOTRUN -> [SKIP][2] +6 similar issues [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb5/igt@dmabuf_sync_file@import-existing-shared-5.html New tests --------- New tests have been introduced between IGT_6092_full and IGTPW_5836_full: ### New IGT tests (8) ### * igt@dmabuf_sync_file@export-basic: - Statuses : 3 skip(s) - Exec time: [0.0] s * igt@dmabuf_sync_file@export-multiwait: - Statuses : 3 skip(s) - Exec time: [0.0] s * igt@dmabuf_sync_file@export-wait-after-attach: - Statuses : 2 skip(s) - Exec time: [0.0] s * igt@dmabuf_sync_file@import-basic: - Statuses : 4 skip(s) - Exec time: [0.0] s * igt@dmabuf_sync_file@import-existing-exclusive: - Statuses : - Exec time: [None] s * igt@dmabuf_sync_file@import-existing-shared-1: - Statuses : 4 skip(s) - Exec time: [0.0] s * igt@dmabuf_sync_file@import-existing-shared-32: - Statuses : 3 skip(s) - Exec time: [0.0] s * igt@dmabuf_sync_file@import-existing-shared-5: - Statuses : 2 skip(s) - Exec time: [0.0] s Known issues ------------ Here are the changes found in IGTPW_5836_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@feature_discovery@display-3x: - shard-iclb: NOTRUN -> [SKIP][3] ([i915#1839]) +2 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@feature_discovery@display-3x.html * igt@gem_create@create-massive: - shard-iclb: NOTRUN -> [DMESG-WARN][4] ([i915#3002]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@gem_create@create-massive.html - shard-apl: NOTRUN -> [DMESG-WARN][5] ([i915#3002]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl1/igt@gem_create@create-massive.html * igt@gem_ctx_persistence@legacy-engines-queued: - shard-snb: NOTRUN -> [SKIP][6] ([fdo#109271] / [i915#1099]) +8 similar issues [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-snb2/igt@gem_ctx_persistence@legacy-engines-queued.html * igt@gem_ctx_persistence@many-contexts: - shard-tglb: [PASS][7] -> [FAIL][8] ([i915#2410]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/shard-tglb1/igt@gem_ctx_persistence@many-contexts.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb2/igt@gem_ctx_persistence@many-contexts.html * igt@gem_eio@unwedge-stress: - shard-snb: NOTRUN -> [FAIL][9] ([i915#3354]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-snb2/igt@gem_eio@unwedge-stress.html * igt@gem_exec_fair@basic-deadline: - shard-kbl: NOTRUN -> [FAIL][10] ([i915#2846]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl7/igt@gem_exec_fair@basic-deadline.html * igt@gem_exec_fair@basic-none-solo@rcs0: - shard-glk: [PASS][11] -> [FAIL][12] ([i915#2842]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/shard-glk7/igt@gem_exec_fair@basic-none-solo@rcs0.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk7/igt@gem_exec_fair@basic-none-solo@rcs0.html * igt@gem_exec_fair@basic-none-vip@rcs0: - shard-tglb: NOTRUN -> [FAIL][13] ([i915#2842]) +1 similar issue [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb8/igt@gem_exec_fair@basic-none-vip@rcs0.html - shard-iclb: NOTRUN -> [FAIL][14] ([i915#2842]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@gem_exec_fair@basic-none-vip@rcs0.html * igt@gem_exec_fair@basic-pace@vcs1: - shard-kbl: [PASS][15] -> [SKIP][16] ([fdo#109271]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/shard-kbl4/igt@gem_exec_fair@basic-pace@vcs1.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl3/igt@gem_exec_fair@basic-pace@vcs1.html * igt@gem_exec_params@no-blt: - shard-iclb: NOTRUN -> [SKIP][17] ([fdo#109283]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@gem_exec_params@no-blt.html * igt@gem_exec_params@no-bsd: - shard-tglb: NOTRUN -> [SKIP][18] ([fdo#109283]) [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb3/igt@gem_exec_params@no-bsd.html * igt@gem_exec_params@secure-non-master: - shard-tglb: NOTRUN -> [SKIP][19] ([fdo#112283]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@gem_exec_params@secure-non-master.html * igt@gem_huc_copy@huc-copy: - shard-tglb: [PASS][20] -> [SKIP][21] ([i915#2190]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/shard-tglb1/igt@gem_huc_copy@huc-copy.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb6/igt@gem_huc_copy@huc-copy.html - shard-apl: NOTRUN -> [SKIP][22] ([fdo#109271] / [i915#2190]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl7/igt@gem_huc_copy@huc-copy.html * igt@gem_madvise@dontneed-before-mmap: - shard-glk: [PASS][23] -> [DMESG-WARN][24] ([i915#118] / [i915#95]) +1 similar issue [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/shard-glk2/igt@gem_madvise@dontneed-before-mmap.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk5/igt@gem_madvise@dontneed-before-mmap.html * igt@gem_mmap_gtt@coherency: - shard-iclb: NOTRUN -> [SKIP][25] ([fdo#109292]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@gem_mmap_gtt@coherency.html * igt@gem_mmap_gtt@cpuset-medium-copy-xy: - shard-glk: [PASS][26] -> [INCOMPLETE][27] ([i915#3468]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/shard-glk4/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk1/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html * igt@gem_mmap_gtt@fault-concurrent-x: - shard-iclb: NOTRUN -> [INCOMPLETE][28] ([i915#3468]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@gem_mmap_gtt@fault-concurrent-x.html - shard-apl: NOTRUN -> [INCOMPLETE][29] ([i915#3468]) +1 similar issue [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl7/igt@gem_mmap_gtt@fault-concurrent-x.html * igt@gem_mmap_gtt@fault-concurrent-y: - shard-snb: NOTRUN -> [INCOMPLETE][30] ([i915#3468]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-snb7/igt@gem_mmap_gtt@fault-concurrent-y.html * igt@gem_pread@exhaustion: - shard-tglb: NOTRUN -> [WARN][31] ([i915#2658]) +1 similar issue [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@gem_pread@exhaustion.html - shard-glk: NOTRUN -> [WARN][32] ([i915#2658]) +1 similar issue [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk1/igt@gem_pread@exhaustion.html * igt@gem_pwrite@basic-exhaustion: - shard-snb: NOTRUN -> [WARN][33] ([i915#2658]) [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-snb2/igt@gem_pwrite@basic-exhaustion.html - shard-apl: NOTRUN -> [WARN][34] ([i915#2658]) [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl7/igt@gem_pwrite@basic-exhaustion.html * igt@gem_render_copy@x-tiled-to-vebox-yf-tiled: - shard-kbl: NOTRUN -> [SKIP][35] ([fdo#109271]) +213 similar issues [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl2/igt@gem_render_copy@x-tiled-to-vebox-yf-tiled.html - shard-iclb: NOTRUN -> [SKIP][36] ([i915#768]) +2 similar issues [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@gem_render_copy@x-tiled-to-vebox-yf-tiled.html * igt@gem_softpin@evict-snoop-interruptible: - shard-tglb: NOTRUN -> [SKIP][37] ([fdo#109312]) [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb2/igt@gem_softpin@evict-snoop-interruptible.html * igt@gem_userptr_blits@access-control: - shard-iclb: NOTRUN -> [SKIP][38] ([i915#3297]) +1 similar issue [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@gem_userptr_blits@access-control.html * igt@gem_userptr_blits@unsync-unmap-cycles: - shard-tglb: NOTRUN -> [SKIP][39] ([i915#3297]) +1 similar issue [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@gem_userptr_blits@unsync-unmap-cycles.html * igt@gem_userptr_blits@vma-merge: - shard-snb: NOTRUN -> [FAIL][40] ([i915#2724]) [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-snb2/igt@gem_userptr_blits@vma-merge.html - shard-apl: NOTRUN -> [FAIL][41] ([i915#3318]) [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl3/igt@gem_userptr_blits@vma-merge.html * igt@gen9_exec_parse@batch-without-end: - shard-iclb: NOTRUN -> [SKIP][42] ([fdo#112306]) +1 similar issue [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@gen9_exec_parse@batch-without-end.html * igt@gen9_exec_parse@bb-start-out: - shard-tglb: NOTRUN -> [SKIP][43] ([fdo#112306]) +5 similar issues [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb6/igt@gen9_exec_parse@bb-start-out.html * igt@i915_pm_dc@dc9-dpms: - shard-tglb: NOTRUN -> [SKIP][44] ([i915#3288]) [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb6/igt@i915_pm_dc@dc9-dpms.html * igt@i915_pm_lpsp@screens-disabled: - shard-tglb: NOTRUN -> [SKIP][45] ([i915#1902]) [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@i915_pm_lpsp@screens-disabled.html * igt@i915_pm_rc6_residency@media-rc6-accuracy: - shard-tglb: NOTRUN -> [SKIP][46] ([fdo#109289] / [fdo#111719]) [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb3/igt@i915_pm_rc6_residency@media-rc6-accuracy.html * igt@i915_pm_rpm@gem-execbuf-stress-pc8: - shard-tglb: NOTRUN -> [SKIP][47] ([fdo#109506] / [i915#2411]) +1 similar issue [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb3/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html * igt@i915_query@query-topology-known-pci-ids: - shard-tglb: NOTRUN -> [SKIP][48] ([fdo#109303]) [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb2/igt@i915_query@query-topology-known-pci-ids.html * igt@i915_selftest@live@execlists: - shard-glk: NOTRUN -> [DMESG-FAIL][49] ([i915#3462]) [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk6/igt@i915_selftest@live@execlists.html - shard-kbl: NOTRUN -> [INCOMPLETE][50] ([i915#2782] / [i915#3462] / [i915#794]) [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl3/igt@i915_selftest@live@execlists.html * igt@kms_atomic_transition@plane-all-modeset-transition-fencing: - shard-tglb: NOTRUN -> [SKIP][51] ([i915#1769]) +1 similar issue [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html * igt@kms_big_fb@x-tiled-16bpp-rotate-90: - shard-tglb: NOTRUN -> [SKIP][52] ([fdo#111614]) +4 similar issues [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@kms_big_fb@x-tiled-16bpp-rotate-90.html * igt@kms_big_fb@x-tiled-8bpp-rotate-270: - shard-iclb: NOTRUN -> [SKIP][53] ([fdo#110725] / [fdo#111614]) [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html * igt@kms_big_fb@yf-tiled-8bpp-rotate-270: - shard-iclb: NOTRUN -> [SKIP][54] ([fdo#110723]) [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_big_fb@yf-tiled-8bpp-rotate-270.html * igt@kms_big_joiner@invalid-modeset: - shard-glk: NOTRUN -> [SKIP][55] ([fdo#109271] / [i915#2705]) [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk1/igt@kms_big_joiner@invalid-modeset.html - shard-tglb: NOTRUN -> [SKIP][56] ([i915#2705]) [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@kms_big_joiner@invalid-modeset.html * igt@kms_chamelium@hdmi-aspect-ratio: - shard-glk: NOTRUN -> [SKIP][57] ([fdo#109271] / [fdo#111827]) +19 similar issues [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk2/igt@kms_chamelium@hdmi-aspect-ratio.html * igt@kms_chamelium@hdmi-edid-change-during-suspend: - shard-apl: NOTRUN -> [SKIP][58] ([fdo#109271] / [fdo#111827]) +23 similar issues [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl7/igt@kms_chamelium@hdmi-edid-change-during-suspend.html * igt@kms_chamelium@vga-hpd-for-each-pipe: - shard-kbl: NOTRUN -> [SKIP][59] ([fdo#109271] / [fdo#111827]) +20 similar issues [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl4/igt@kms_chamelium@vga-hpd-for-each-pipe.html * igt@kms_color@pipe-c-degamma: - shard-tglb: NOTRUN -> [FAIL][60] ([i915#1149]) [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb6/igt@kms_color@pipe-c-degamma.html * igt@kms_color@pipe-d-gamma: - shard-iclb: NOTRUN -> [SKIP][61] ([fdo#109278] / [i915#1149]) [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_color@pipe-d-gamma.html * igt@kms_color_chamelium@pipe-b-ctm-0-75: - shard-tglb: NOTRUN -> [SKIP][62] ([fdo#109284] / [fdo#111827]) +20 similar issues [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb2/igt@kms_color_chamelium@pipe-b-ctm-0-75.html * igt@kms_color_chamelium@pipe-c-ctm-0-5: - shard-iclb: NOTRUN -> [SKIP][63] ([fdo#109284] / [fdo#111827]) +10 similar issues [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_color_chamelium@pipe-c-ctm-0-5.html * igt@kms_color_chamelium@pipe-d-ctm-red-to-blue: - shard-iclb: NOTRUN -> [SKIP][64] ([fdo#109278] / [fdo#109284] / [fdo#111827]) [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_color_chamelium@pipe-d-ctm-red-to-blue.html * igt@kms_color_chamelium@pipe-invalid-ctm-matrix-sizes: - shard-snb: NOTRUN -> [SKIP][65] ([fdo#109271] / [fdo#111827]) +31 similar issues [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-snb2/igt@kms_color_chamelium@pipe-invalid-ctm-matrix-sizes.html * igt@kms_content_protection@atomic: - shard-apl: NOTRUN -> [TIMEOUT][66] ([i915#1319]) [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl7/igt@kms_content_protection@atomic.html * igt@kms_content_protection@dp-mst-lic-type-0: - shard-iclb: NOTRUN -> [SKIP][67] ([i915#3116]) [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_content_protection@dp-mst-lic-type-0.html - shard-tglb: NOTRUN -> [SKIP][68] ([i915#3116]) [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb8/igt@kms_content_protection@dp-mst-lic-type-0.html * igt@kms_content_protection@legacy: - shard-kbl: NOTRUN -> [TIMEOUT][69] ([i915#1319]) [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl4/igt@kms_content_protection@legacy.html * igt@kms_content_protection@uevent: - shard-kbl: NOTRUN -> [FAIL][70] ([i915#2105]) [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl1/igt@kms_content_protection@uevent.html - shard-tglb: NOTRUN -> [SKIP][71] ([fdo#111828]) +1 similar issue [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb1/igt@kms_content_protection@uevent.html * igt@kms_cursor_crc@pipe-a-cursor-suspend: - shard-kbl: NOTRUN -> [DMESG-WARN][72] ([i915#180]) +3 similar issues [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl7/igt@kms_cursor_crc@pipe-a-cursor-suspend.html * igt@kms_cursor_crc@pipe-b-cursor-32x32-offscreen: - shard-tglb: NOTRUN -> [SKIP][73] ([i915#3319]) +1 similar issue [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@kms_cursor_crc@pipe-b-cursor-32x32-offscreen.html * igt@kms_cursor_crc@pipe-b-cursor-512x512-offscreen: - shard-iclb: NOTRUN -> [SKIP][74] ([fdo#109278] / [fdo#109279]) +2 similar issues [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_cursor_crc@pipe-b-cursor-512x512-offscreen.html * igt@kms_cursor_crc@pipe-c-cursor-max-size-offscreen: - shard-tglb: NOTRUN -> [SKIP][75] ([i915#3359]) +8 similar issues [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb8/igt@kms_cursor_crc@pipe-c-cursor-max-size-offscreen.html * igt@kms_cursor_crc@pipe-d-cursor-512x512-offscreen: - shard-tglb: NOTRUN -> [SKIP][76] ([fdo#109279] / [i915#3359]) +4 similar issues [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb3/igt@kms_cursor_crc@pipe-d-cursor-512x512-offscreen.html * igt@kms_cursor_crc@pipe-d-cursor-64x21-sliding: - shard-iclb: NOTRUN -> [SKIP][77] ([fdo#109278]) +22 similar issues [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_cursor_crc@pipe-d-cursor-64x21-sliding.html * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions: - shard-iclb: NOTRUN -> [SKIP][78] ([fdo#109274] / [fdo#109278]) [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html * igt@kms_dp_tiled_display@basic-test-pattern: - shard-tglb: NOTRUN -> [SKIP][79] ([i915#426]) [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb1/igt@kms_dp_tiled_display@basic-test-pattern.html * igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium: - shard-iclb: NOTRUN -> [SKIP][80] ([i915#2065]) [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_dp_tiled_display@basic-test-pattern-with-chamelium.html * igt@kms_flip@2x-flip-vs-modeset-vs-hang: - shard-iclb: NOTRUN -> [SKIP][81] ([fdo#109274]) +7 similar issues [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_flip@2x-flip-vs-modeset-vs-hang.html * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile: - shard-glk: NOTRUN -> [SKIP][82] ([fdo#109271] / [i915#2642]) [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk6/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile.html * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile: - shard-apl: NOTRUN -> [SKIP][83] ([fdo#109271] / [i915#2642]) [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl7/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile.html - shard-kbl: NOTRUN -> [SKIP][84] ([fdo#109271] / [i915#2642]) +1 similar issue [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl4/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile.html * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-shrfb-pgflip-blt: - shard-glk: NOTRUN -> [FAIL][85] ([i915#49]) [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-shrfb-pgflip-blt.html * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-blt: - shard-iclb: NOTRUN -> [SKIP][86] ([fdo#109280]) +26 similar issues [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-blt.html * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-mmap-gtt: - shard-tglb: NOTRUN -> [SKIP][87] ([fdo#111825]) +51 similar issues [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb6/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-mmap-gtt.html * igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-cpu: - shard-glk: NOTRUN -> [SKIP][88] ([fdo#109271]) +146 similar issues [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk4/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-cpu.html * igt@kms_hdr@bpc-switch-suspend: - shard-kbl: [PASS][89] -> [DMESG-WARN][90] ([i915#180]) +2 similar issues [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6092/shard-kbl7/igt@kms_hdr@bpc-switch-suspend.html [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl7/igt@kms_hdr@bpc-switch-suspend.html * igt@kms_hdr@static-toggle-dpms: - shard-tglb: NOTRUN -> [SKIP][91] ([i915#1187]) +1 similar issue [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@kms_hdr@static-toggle-dpms.html * igt@kms_multipipe_modeset@basic-max-pipe-crc-check: - shard-tglb: NOTRUN -> [SKIP][92] ([i915#1839]) [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb3/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html * igt@kms_pipe_crc_basic@nonblocking-crc-pipe-d-frame-sequence: - shard-kbl: NOTRUN -> [SKIP][93] ([fdo#109271] / [i915#533]) [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl4/igt@kms_pipe_crc_basic@nonblocking-crc-pipe-d-frame-sequence.html - shard-glk: NOTRUN -> [SKIP][94] ([fdo#109271] / [i915#533]) [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk7/igt@kms_pipe_crc_basic@nonblocking-crc-pipe-d-frame-sequence.html * igt@kms_pipe_crc_basic@read-crc-pipe-d: - shard-apl: NOTRUN -> [SKIP][95] ([fdo#109271] / [i915#533]) +1 similar issue [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl1/igt@kms_pipe_crc_basic@read-crc-pipe-d.html * igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb: - shard-apl: NOTRUN -> [FAIL][96] ([fdo#108145] / [i915#265]) +3 similar issues [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl3/igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb.html * igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max: - shard-glk: NOTRUN -> [FAIL][97] ([fdo#108145] / [i915#265]) +1 similar issue [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk4/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max.html * igt@kms_plane_alpha_blend@pipe-b-alpha-7efc: - shard-kbl: NOTRUN -> [FAIL][98] ([fdo#108145] / [i915#265]) +1 similar issue [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl2/igt@kms_plane_alpha_blend@pipe-b-alpha-7efc.html * igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb: - shard-apl: NOTRUN -> [FAIL][99] ([i915#265]) [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl7/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html * igt@kms_plane_lowres@pipe-d-tiling-yf: - shard-tglb: NOTRUN -> [SKIP][100] ([fdo#112054]) [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb2/igt@kms_plane_lowres@pipe-d-tiling-yf.html * igt@kms_plane_multiple@atomic-pipe-b-tiling-yf: - shard-tglb: NOTRUN -> [SKIP][101] ([fdo#111615]) +4 similar issues [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@kms_plane_multiple@atomic-pipe-b-tiling-yf.html * igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping: - shard-apl: NOTRUN -> [SKIP][102] ([fdo#109271] / [i915#2733]) [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl7/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html - shard-kbl: NOTRUN -> [SKIP][103] ([fdo#109271] / [i915#2733]) [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl4/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html * igt@kms_prime@basic-crc@first-to-second: - shard-tglb: NOTRUN -> [SKIP][104] ([i915#1836]) [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb1/igt@kms_prime@basic-crc@first-to-second.html * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4: - shard-apl: NOTRUN -> [SKIP][105] ([fdo#109271] / [i915#658]) +3 similar issues [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl3/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4.html * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3: - shard-kbl: NOTRUN -> [SKIP][106] ([fdo#109271] / [i915#658]) +3 similar issues [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl7/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-3.html * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-5: - shard-glk: NOTRUN -> [SKIP][107] ([fdo#109271] / [i915#658]) +4 similar issues [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk7/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-5.html * igt@kms_psr2_sf@plane-move-sf-dmg-area-0: - shard-tglb: NOTRUN -> [SKIP][108] ([i915#2920]) +4 similar issues [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@kms_psr2_sf@plane-move-sf-dmg-area-0.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2: - shard-iclb: NOTRUN -> [SKIP][109] ([i915#658]) +3 similar issues [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-2.html * igt@kms_psr@psr2_cursor_mmap_cpu: - shard-tglb: NOTRUN -> [FAIL][110] ([i915#132] / [i915#3467]) +1 similar issue [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb6/igt@kms_psr@psr2_cursor_mmap_cpu.html * igt@kms_psr@psr2_no_drrs: - shard-iclb: NOTRUN -> [SKIP][111] ([fdo#109441]) +2 similar issues [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@kms_psr@psr2_no_drrs.html * igt@kms_psr@psr2_sprite_render: - shard-tglb: NOTRUN -> [FAIL][112] ([i915#132]) [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb3/igt@kms_psr@psr2_sprite_render.html * igt@kms_setmode@basic: - shard-snb: NOTRUN -> [FAIL][113] ([i915#31]) [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-snb2/igt@kms_setmode@basic.html * igt@kms_vblank@pipe-a-ts-continuation-suspend: - shard-kbl: NOTRUN -> [DMESG-WARN][114] ([i915#180] / [i915#295]) [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl2/igt@kms_vblank@pipe-a-ts-continuation-suspend.html * igt@kms_vblank@pipe-d-query-forked-hang: - shard-snb: NOTRUN -> [SKIP][115] ([fdo#109271]) +470 similar issues [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-snb7/igt@kms_vblank@pipe-d-query-forked-hang.html * igt@kms_writeback@writeback-check-output: - shard-kbl: NOTRUN -> [SKIP][116] ([fdo#109271] / [i915#2437]) [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-kbl3/igt@kms_writeback@writeback-check-output.html * igt@kms_writeback@writeback-pixel-formats: - shard-glk: NOTRUN -> [SKIP][117] ([fdo#109271] / [i915#2437]) [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-glk6/igt@kms_writeback@writeback-pixel-formats.html - shard-tglb: NOTRUN -> [SKIP][118] ([i915#2437]) [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb7/igt@kms_writeback@writeback-pixel-formats.html * igt@nouveau_crc@pipe-a-ctx-flip-skip-current-frame: - shard-tglb: NOTRUN -> [SKIP][119] ([i915#2530]) +2 similar issues [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb2/igt@nouveau_crc@pipe-a-ctx-flip-skip-current-frame.html * igt@nouveau_crc@pipe-a-source-outp-inactive: - shard-iclb: NOTRUN -> [SKIP][120] ([i915#2530]) +1 similar issue [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@nouveau_crc@pipe-a-source-outp-inactive.html * igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame: - shard-apl: NOTRUN -> [SKIP][121] ([fdo#109271]) +202 similar issues [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-apl3/igt@nouveau_crc@pipe-b-ctx-flip-skip-current-frame.html * igt@perf@gen12-mi-rpc: - shard-iclb: NOTRUN -> [SKIP][122] ([fdo#109289]) +4 similar issues [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-iclb6/igt@perf@gen12-mi-rpc.html * igt@perf@unprivileged-single-ctx-counters: - shard-tglb: NOTRUN -> [SKIP][123] ([fdo#109289]) +2 similar issues [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb1/igt@perf@unprivileged-single-ctx-counters.html * igt@prime_nv_api@i915_self_import: - shard-tglb: NOTRUN -> [SKIP][124] ([fdo#109291]) +5 similar issues [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/shard-tglb5/igt@prime_nv_api@i915_self_import.html * igt@prime_nv_pcopy@test3_4: - shard-iclb: NOTRUN -> [SKIP][125] ([fdo#109291]) == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5836/index.html [-- Attachment #1.2: Type: text/html, Size: 34341 bytes --] [-- Attachment #2: Type: text/plain, Size: 154 bytes --] _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 7+ messages in thread
* [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export @ 2021-05-21 19:06 Jason Ekstrand 2021-05-21 19:06 ` [igt-dev] [PATCH i-g-t 1/2] tests/dmabuf: Add tests for sync_file export (v2) Jason Ekstrand 0 siblings, 1 reply; 7+ messages in thread From: Jason Ekstrand @ 2021-05-21 19:06 UTC (permalink / raw) To: igt-dev This little series adds tests for sync_file import/export as per this patch series on dri-devel: https://patchwork.freedesktop.org/series/90380/ https://lists.freedesktop.org/archives/dri-devel/2021-May/307561.html Jason Ekstrand (2): tests/dmabuf: Add tests for sync_file export (v2) tests/dmabuf: Add tests for sync_file import tests/dmabuf_sync_file.c | 364 +++++++++++++++++++++++++++++++++++++++ tests/meson.build | 1 + 2 files changed, 365 insertions(+) create mode 100644 tests/dmabuf_sync_file.c -- 2.31.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 7+ messages in thread
* [igt-dev] [PATCH i-g-t 1/2] tests/dmabuf: Add tests for sync_file export (v2) 2021-05-21 19:06 [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export Jason Ekstrand @ 2021-05-21 19:06 ` Jason Ekstrand 0 siblings, 0 replies; 7+ messages in thread From: Jason Ekstrand @ 2021-05-21 19:06 UTC (permalink / raw) To: igt-dev v2 (Jason Ekstrand): - Rename subtests to have "export" in the name --- tests/dmabuf_sync_file.c | 232 +++++++++++++++++++++++++++++++++++++++ tests/meson.build | 1 + 2 files changed, 233 insertions(+) create mode 100644 tests/dmabuf_sync_file.c diff --git a/tests/dmabuf_sync_file.c b/tests/dmabuf_sync_file.c new file mode 100644 index 00000000..e7350905 --- /dev/null +++ b/tests/dmabuf_sync_file.c @@ -0,0 +1,232 @@ +/* + * Copyright © 2021 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ + +#include "igt.h" +#include "igt_vgem.h" + +#include <linux/dma-buf.h> +#include <sys/poll.h> + +IGT_TEST_DESCRIPTION("Tests for sync_file export from dma-buf"); + +struct igt_dma_buf_sync_file { + __u32 flags; + __s32 fd; +}; + +#define IGT_DMA_BUF_IOCTL_EXPORT_SYNC_FILE _IOWR(DMA_BUF_BASE, 2, struct igt_dma_buf_sync_file) + +static bool has_dmabuf_sync_file(int fd) +{ + struct vgem_bo bo; + int dmabuf, ret; + struct igt_dma_buf_sync_file arg; + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + gem_close(fd, bo.handle); + + arg.flags = DMA_BUF_SYNC_WRITE; + arg.fd = -1; + + ret = igt_ioctl(dmabuf, IGT_DMA_BUF_IOCTL_EXPORT_SYNC_FILE, &arg); + close(dmabuf); + igt_assert(ret == 0 || errno == ENOTTY); + + return ret == 0; +} + +static int dmabuf_export_sync_file(int dmabuf, uint32_t flags) +{ + struct igt_dma_buf_sync_file arg; + + arg.flags = flags; + arg.fd = -1; + do_ioctl(dmabuf, IGT_DMA_BUF_IOCTL_EXPORT_SYNC_FILE, &arg); + + return arg.fd; +} + +static bool sync_file_busy(int sync_file) +{ + struct pollfd pfd = { .fd = sync_file, .events = POLLIN }; + return poll(&pfd, 1, 0) == 0; +} + +static bool dmabuf_sync_file_busy(int dmabuf, uint32_t flags) +{ + int sync_file; + bool busy; + + sync_file = dmabuf_export_sync_file(dmabuf, flags); + busy = sync_file_busy(sync_file); + close(sync_file); + + return busy; +} + +static void test_export_basic(int fd) +{ + struct vgem_bo bo; + int dmabuf; + uint32_t fence; + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + fence = vgem_fence_attach(fd, &bo, 0); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fence); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + fence = vgem_fence_attach(fd, &bo, VGEM_FENCE_WRITE); + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fence); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(!dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + close(dmabuf); + gem_close(fd, bo.handle); +} + +static void test_export_multiwait(int fd) +{ + struct vgem_bo bo; + int dmabuf, sync_file; + uint32_t fence1, fence2, fence3; + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + fence1 = vgem_fence_attach(fd, &bo, 0); + fence2 = vgem_fence_attach(fd, &bo, 0); + + sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_WRITE); + + fence3 = vgem_fence_attach(fd, &bo, 0); + + igt_assert(sync_file_busy(sync_file)); + + vgem_fence_signal(fd, fence1); + + igt_assert(sync_file_busy(sync_file)); + + vgem_fence_signal(fd, fence2); + + igt_assert(!sync_file_busy(sync_file)); + + vgem_fence_signal(fd, fence3); + + close(sync_file); + close(dmabuf); + gem_close(fd, bo.handle); +} + +static void test_export_wait_after_attach(int fd) +{ + struct vgem_bo bo; + int dmabuf, read_sync_file, write_sync_file; + uint32_t fence1, fence2; + + bo.width = 1; + bo.height = 1; + bo.bpp = 32; + vgem_create(fd, &bo); + + dmabuf = prime_handle_to_fd(fd, bo.handle); + + read_sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_READ); + write_sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_WRITE); + + fence1 = vgem_fence_attach(fd, &bo, VGEM_FENCE_WRITE); + + igt_assert(!sync_file_busy(read_sync_file)); + igt_assert(!sync_file_busy(write_sync_file)); + close(read_sync_file); + close(write_sync_file); + + /* These wait on fence1 */ + read_sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_READ); + write_sync_file = dmabuf_export_sync_file(dmabuf, DMA_BUF_SYNC_WRITE); + + igt_assert(sync_file_busy(read_sync_file)); + igt_assert(sync_file_busy(write_sync_file)); + + vgem_fence_signal(fd, fence1); + fence2 = vgem_fence_attach(fd, &bo, VGEM_FENCE_WRITE); + + /* fence1 has signaled */ + igt_assert(!sync_file_busy(read_sync_file)); + igt_assert(!sync_file_busy(write_sync_file)); + + /* fence2 has not */ + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_READ)); + igt_assert(dmabuf_sync_file_busy(dmabuf, DMA_BUF_SYNC_WRITE)); + + vgem_fence_signal(fd, fence2); + close(read_sync_file); + close(write_sync_file); + + close(dmabuf); + gem_close(fd, bo.handle); +} + +igt_main +{ + int fd; + + igt_fixture { + fd = drm_open_driver(DRIVER_VGEM); + igt_require(has_dmabuf_sync_file(fd)); + } + + igt_subtest_f("export-basic") + test_export_basic(fd); + + igt_subtest_f("export-multiwait") + test_export_multiwait(fd); + + igt_subtest_f("export-wait-after-attach") + test_export_wait_after_attach(fd); + +} diff --git a/tests/meson.build b/tests/meson.build index 19cc4ebe..a0992989 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -7,6 +7,7 @@ test_progs = [ 'core_setmaster_vs_auth', 'debugfs_test', 'dmabuf', + 'dmabuf_sync_file', 'device_reset', 'drm_import_export', 'drm_mm', -- 2.31.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-05-24 5:10 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-05-21 21:29 [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 1/2] tests/dmabuf: Add tests for sync_file export (v2) Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 2/2] tests/dmabuf: Add tests for sync_file import (v2) Jason Ekstrand 2021-05-21 21:29 ` [igt-dev] [PATCH i-g-t 2/2] tests/dmabuf: Add tests for sync_file import Jason Ekstrand 2021-05-21 22:04 ` [igt-dev] ✓ Fi.CI.BAT: success for Add tests for sync_file import/export (rev2) Patchwork 2021-05-24 5:10 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork -- strict thread matches above, loose matches on Subject: below -- 2021-05-21 19:06 [igt-dev] [PATCH i-g-t 0/2] Add tests for sync_file import/export Jason Ekstrand 2021-05-21 19:06 ` [igt-dev] [PATCH i-g-t 1/2] tests/dmabuf: Add tests for sync_file export (v2) Jason Ekstrand
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.