[igt-dev] [V4 i-g-t 12/24] tests: Use drm_close_driver() to close the drm fd
Modem, Bhanuprakash
bhanuprakash.modem at intel.com
Tue Jun 27 07:58:28 UTC 2023
Hi Kamil,
On Mon-26-06-2023 09:43 pm, Kamil Konieczny wrote:
> Hi Bhanuprakash,
>
> On 2023-06-26 at 10:40:19 +0530, Bhanuprakash Modem wrote:
>> To close the drm file descriptor, use igt helper drm_close_driver()
>> instead of using close().
>>
>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem at intel.com>
>> ---
>> tests/core_auth.c | 10 +++++-----
>> tests/core_getclient.c | 2 +-
>> tests/core_getstats.c | 2 +-
>> tests/core_getversion.c | 2 +-
>> tests/core_setmaster.c | 6 +++---
>> tests/core_setmaster_vs_auth.c | 6 +++---
>> tests/debugfs_test.c | 2 +-
>> tests/dumb_buffer.c | 2 +-
>> tests/eviction_common.c | 2 +-
>> tests/fbdev.c | 2 +-
>> tests/prime_busy.c | 2 +-
>> tests/prime_mmap.c | 2 +-
>> tests/prime_mmap_coherency.c | 4 ++--
>> tests/prime_mmap_kms.c | 2 +-
>> tests/prime_self_import.c | 26 +++++++++++++-------------
>> tests/prime_vgem.c | 4 ++--
>> tests/syncobj_basic.c | 2 +-
>> tests/syncobj_timeline.c | 2 +-
>> tests/syncobj_wait.c | 2 +-
>> tests/template.c | 2 +-
>> tests/vgem_basic.c | 6 +++---
>> tests/vgem_slow.c | 2 +-
>> 22 files changed, 46 insertions(+), 46 deletions(-)
>>
>> diff --git a/tests/core_auth.c b/tests/core_auth.c
>> index ed736e1ae..bc1b3b8d5 100644
>> --- a/tests/core_auth.c
>> +++ b/tests/core_auth.c
>> @@ -214,7 +214,7 @@ static void test_basic_auth(int master)
>> igt_assert(drmGetMagic(slave, &magic) == 0);
>> igt_assert_eq(magic, old_magic);
>>
>> - close(slave);
>> + drm_close_driver(slave);
>> }
>>
>> igt_main
>> @@ -226,7 +226,7 @@ igt_main
>>
>> igt_assert(check_auth(fd) == true);
>>
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>>
>> igt_describe("Use 2 clients, check second is authenticated even when first dropped.");
>> @@ -236,11 +236,11 @@ igt_main
>>
>> igt_assert(check_auth(fd2) == true);
>>
>> - close(fd);
>> + drm_close_driver(fd);
>>
>> igt_assert(check_auth(fd2) == true);
>>
>> - close(fd2);
>> + drm_close_driver(fd2);
>> }
>>
>> /* above tests require that no drm fd is open */
>> @@ -249,7 +249,7 @@ igt_main
>>
>> igt_fixture
>> master = drm_open_driver_master(DRIVER_ANY);
>> -
>> +
>
> Drop this change.
I haven't done this, some how my vim editor is adding this change. Will
fix it new rev.
>
>> igt_describe("Test magic numbers for master and slave.");
>> igt_subtest("basic-auth")
>> test_basic_auth(master);
>> diff --git a/tests/core_getclient.c b/tests/core_getclient.c
>> index 993801ead..839fae36a 100644
>> --- a/tests/core_getclient.c
>> +++ b/tests/core_getclient.c
>> @@ -70,5 +70,5 @@ igt_simple_main
>> ret = ioctl(fd, DRM_IOCTL_GET_CLIENT, &client);
>> igt_assert(ret == -1 && errno == EINVAL);
>>
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> diff --git a/tests/core_getstats.c b/tests/core_getstats.c
>> index fef122583..8b5655053 100644
>> --- a/tests/core_getstats.c
>> +++ b/tests/core_getstats.c
>> @@ -64,5 +64,5 @@ igt_simple_main
>> ret = ioctl(fd, DRM_IOCTL_GET_STATS, &stats);
>> igt_assert(ret == 0);
>>
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> diff --git a/tests/core_getversion.c b/tests/core_getversion.c
>> index 36ba01b86..32cb976e4 100644
>> --- a/tests/core_getversion.c
>> +++ b/tests/core_getversion.c
>> @@ -58,5 +58,5 @@ igt_simple_main
>> igt_assert_lte(1, v->version_major);
>>
>> drmFree(v);
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> diff --git a/tests/core_setmaster.c b/tests/core_setmaster.c
>> index 621bc2469..04ee6b8b5 100644
>> --- a/tests/core_setmaster.c
>> +++ b/tests/core_setmaster.c
>> @@ -104,7 +104,7 @@ static void check_drop_set(void)
>> igt_assert_eq(drmDropMaster(master), 0);
>> igt_assert_eq(drmSetMaster(master), 0);
>>
>> - close(master);
>> + drm_close_driver(master);
>> }
>>
>> static unsigned tweak_perm(uint8_t *saved_perm, unsigned max_perm, bool save)
>> @@ -225,10 +225,10 @@ igt_main
>> igt_assert_eq(drmSetMaster(master), -1);
>> igt_assert_eq(errno, EACCES);
>>
>> - close(master);
>> + drm_close_driver(master);
>> }
>> igt_waitchildren();
>>
>> - close(master);
>> + drm_close_driver(master);
>> }
>> }
>> diff --git a/tests/core_setmaster_vs_auth.c b/tests/core_setmaster_vs_auth.c
>> index adca1c111..b80ed3879 100644
>> --- a/tests/core_setmaster_vs_auth.c
>> +++ b/tests/core_setmaster_vs_auth.c
>> @@ -78,7 +78,7 @@ igt_simple_main
>> igt_assert_neq(drmAuthMagic(master2, magic), 0);
>> igt_assert_eq(errno, EINVAL);
>>
>> - close(client);
>> - close(master2);
>> - close(master1);
>> + drm_close_driver(client);
>> + drm_close_driver(master2);
>> + drm_close_driver(master1);
>> }
>> diff --git a/tests/debugfs_test.c b/tests/debugfs_test.c
>> index 5ee615aba..b67bfabac 100644
>> --- a/tests/debugfs_test.c
>> +++ b/tests/debugfs_test.c
>> @@ -255,6 +255,6 @@ igt_main
>> igt_fixture {
>> close(sysfs);
>> close(debugfs);
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/dumb_buffer.c b/tests/dumb_buffer.c
>> index 9495d28ff..9db857f9f 100644
>> --- a/tests/dumb_buffer.c
>> +++ b/tests/dumb_buffer.c
>> @@ -416,6 +416,6 @@ igt_main
>> always_clear(fd, 30);
>>
>> igt_fixture {
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/eviction_common.c b/tests/eviction_common.c
>> index 95af106c1..5948fbc64 100644
>> --- a/tests/eviction_common.c
>> +++ b/tests/eviction_common.c
>> @@ -300,7 +300,7 @@ static int forking_evictions(int fd, struct igt_eviction_test_ops *ops,
>>
>> /* drmfd closing will take care of additional bo refs */
>> if (flags & FORKING_EVICTIONS_DUP_DRMFD)
>> - close(realfd);
>> + drm_close_driver(realfd);
>> }
>>
>> igt_waitchildren();
>> diff --git a/tests/fbdev.c b/tests/fbdev.c
>> index 794882a6a..154e78b0f 100644
>> --- a/tests/fbdev.c
>> +++ b/tests/fbdev.c
>> @@ -443,6 +443,6 @@ igt_main
>> }
>>
>> igt_fixture {
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/prime_busy.c b/tests/prime_busy.c
>> index 6b0d7310b..90d79864f 100644
>> --- a/tests/prime_busy.c
>> +++ b/tests/prime_busy.c
>> @@ -184,6 +184,6 @@ igt_main
>>
>> igt_fixture {
>> intel_ctx_destroy(fd, ctx);
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/prime_mmap.c b/tests/prime_mmap.c
>> index efd4deff9..25b2939e9 100644
>> --- a/tests/prime_mmap.c
>> +++ b/tests/prime_mmap.c
>> @@ -590,6 +590,6 @@ igt_main
>> free(query_info);
>> igt_collection_destroy(set);
>> igt_collection_destroy(dma_buf_set);
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/prime_mmap_coherency.c b/tests/prime_mmap_coherency.c
>> index e5f7c92b2..01eb2002d 100644
>> --- a/tests/prime_mmap_coherency.c
>> +++ b/tests/prime_mmap_coherency.c
>> @@ -267,7 +267,7 @@ static void blit_and_cmp(void)
>>
>> intel_bb_destroy(local_batch);
>> buf_ops_destroy(local_bops);
>> - close(local_fd);
>> + drm_close_driver(local_fd);
>> }
>>
>> /*
>> @@ -364,6 +364,6 @@ igt_main
>> igt_fixture {
>> buf_ops_destroy(bops);
>>
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/prime_mmap_kms.c b/tests/prime_mmap_kms.c
>> index 8b127a13c..1a63be38f 100644
>> --- a/tests/prime_mmap_kms.c
>> +++ b/tests/prime_mmap_kms.c
>> @@ -263,6 +263,6 @@ igt_main
>>
>> igt_fixture {
>> igt_display_fini(&gpu.display);
>> - close(gpu.drm_fd);
>> + drm_close_driver(gpu.drm_fd);
>> }
>> }
>> diff --git a/tests/prime_self_import.c b/tests/prime_self_import.c
>> index 30f2bf013..2dbf4e20f 100644
>> --- a/tests/prime_self_import.c
>> +++ b/tests/prime_self_import.c
>> @@ -147,8 +147,8 @@ static void test_with_fd_dup(void)
>> close(dma_buf_fd2);
>> check_bo(fd2, handle_import, fd2, handle_import);
>>
>> - close(fd1);
>> - close(fd2);
>> + drm_close_driver(fd1);
>> + drm_close_driver(fd2);
>> }
>>
>> static void test_with_two_bos(void)
>> @@ -180,8 +180,8 @@ static void test_with_two_bos(void)
>>
>> check_bo(fd2, handle_import, fd2, handle_import);
>>
>> - close(fd1);
>> - close(fd2);
>> + drm_close_driver(fd1);
>> + drm_close_driver(fd2);
>> }
>>
>> static void test_with_one_bo_two_files(void)
>> @@ -205,8 +205,8 @@ static void test_with_one_bo_two_files(void)
>> /* dma-buf self importing an flink bo should give the same handle */
>> igt_assert_eq_u32(handle_import, handle_open);
>>
>> - close(fd1);
>> - close(fd2);
>> + drm_close_driver(fd1);
>> + drm_close_driver(fd2);
>> close(dma_buf_fd1);
>> close(dma_buf_fd2);
>> }
>> @@ -252,7 +252,7 @@ static void test_with_one_bo(void)
>> check_bo(fd1, handle, fd2, handle_import1);
>>
>> /* Completely rip out exporting fd. */
>> - close(fd1);
>> + drm_close_driver(fd1);
>> check_bo(fd2, handle_import1, fd2, handle_import1);
>> }
>>
>> @@ -316,14 +316,14 @@ static void test_reimport_close_race(void)
>> igt_assert(status == 0);
>> }
>>
>> - close(fds[0]);
>> + drm_close_driver(fds[0]);
>> close(fds[1]);
> ------- ^^^^^
> this should also be changed ?
fds[1] is not a drm fd. It is a dma-buf fd to export the gem buffer.
So, we are not going to change it.
- Bhanu
>
> Rest looks ok.
>
> Regards,
> Kamil
>
>>
>> obj_count = igt_get_stable_obj_count(fake) - obj_count;
>>
>> igt_info("leaked %i objects\n", obj_count);
>>
>> - close(fake);
>> + drm_close_driver(fake);
>>
>> igt_assert_eq(obj_count, 0);
>> }
>> @@ -398,13 +398,13 @@ static void test_export_close_race(void)
>> igt_assert(status == 0);
>> }
>>
>> - close(fd);
>> + drm_close_driver(fd);
>>
>> obj_count = igt_get_stable_obj_count(fake) - obj_count;
>>
>> igt_info("leaked %i objects\n", obj_count);
>>
>> - close(fake);
>> + drm_close_driver(fake);
>>
>> igt_assert_eq(obj_count, 0);
>> }
>> @@ -433,7 +433,7 @@ static void test_llseek_size(void)
>> close(dma_buf_fd);
>> }
>>
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>>
>> static void test_llseek_bad(void)
>> @@ -462,7 +462,7 @@ static void test_llseek_bad(void)
>>
>> close(dma_buf_fd);
>>
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>>
>> igt_main
>> diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
>> index 85b9cf880..876e04ed0 100644
>> --- a/tests/prime_vgem.c
>> +++ b/tests/prime_vgem.c
>> @@ -1326,7 +1326,7 @@ igt_main
>>
>>
>> igt_fixture {
>> - close(i915);
>> - close(vgem);
>> + drm_close_driver(i915);
>> + drm_close_driver(vgem);
>> }
>> }
>> diff --git a/tests/syncobj_basic.c b/tests/syncobj_basic.c
>> index 3252dbd69..f079baf09 100644
>> --- a/tests/syncobj_basic.c
>> +++ b/tests/syncobj_basic.c
>> @@ -266,7 +266,7 @@ igt_main
>> test_valid_cycle(fd);
>>
>> igt_fixture {
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>>
>> }
>> diff --git a/tests/syncobj_timeline.c b/tests/syncobj_timeline.c
>> index 134a60995..b4e1d093a 100644
>> --- a/tests/syncobj_timeline.c
>> +++ b/tests/syncobj_timeline.c
>> @@ -1936,6 +1936,6 @@ igt_main
>> test_32bits_limit(fd);
>>
>> igt_fixture {
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/syncobj_wait.c b/tests/syncobj_wait.c
>> index 2583ef72e..e0ff69b79 100644
>> --- a/tests/syncobj_wait.c
>> +++ b/tests/syncobj_wait.c
>> @@ -1062,6 +1062,6 @@ igt_main
>> test_wait_interrupted(fd, WAIT_ALL);
>>
>> igt_fixture {
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/template.c b/tests/template.c
>> index e23814fb7..ae2681c01 100644
>> --- a/tests/template.c
>> +++ b/tests/template.c
>> @@ -76,6 +76,6 @@ igt_main
>> */
>>
>> igt_fixture {
>> - close(drm_fd);
>> + drm_close_driver(drm_fd);
>> }
>> }
>> diff --git a/tests/vgem_basic.c b/tests/vgem_basic.c
>> index f2255a619..63c5c0971 100644
>> --- a/tests/vgem_basic.c
>> +++ b/tests/vgem_basic.c
>> @@ -162,8 +162,8 @@ static void test_setversion(int fd)
>>
>> static void test_client(int fd)
>> {
>> - close(drm_open_driver(DRIVER_VGEM));
>> - close(drm_open_driver_render(DRIVER_VGEM));
>> + drm_close_driver(drm_open_driver(DRIVER_VGEM));
>> + drm_close_driver(drm_open_driver_render(DRIVER_VGEM));
>> }
>>
>> static void test_create(int fd)
>> @@ -635,6 +635,6 @@ igt_main
>> test_debugfs_read(fd);
>>
>> igt_fixture {
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> diff --git a/tests/vgem_slow.c b/tests/vgem_slow.c
>> index 0c91cdb9d..cb9436628 100644
>> --- a/tests/vgem_slow.c
>> +++ b/tests/vgem_slow.c
>> @@ -97,6 +97,6 @@ igt_main
>> test_nohang(fd);
>>
>> igt_fixture {
>> - close(fd);
>> + drm_close_driver(fd);
>> }
>> }
>> --
>> 2.40.0
>>
More information about the igt-dev
mailing list