[igt-dev] [PATCH i-g-t] tests/kms_lease: close mcl.fd when drmModeSetCrtc fails

Mohammed Thasleem
2023-01-18T07:34:49Z

Close mcl.fd when drmModeSetCrtc retuns fail and it will
unblock the resources so that test continue execution on
another panels.

Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
tests/kms_lease.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 67e8d3be..c870bfd1 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -317,6 +317,7 @@ static void setcrtc_implicit_plane(data_t *data)
struct drm_mode_create_lease mcl;
drmModePlaneRes *plane_resources;
uint32_t wrong_plane_id = 0;
+ int ret = 0;
igt_output_t *output =
connector_id_to_output(&data->master.display,
data->connector_id);
@@ -351,9 +352,10 @@ static void setcrtc_implicit_plane(data_t *data)
/* sanity check */
do_or_die(drmModeSetCrtc(data->master.fd, data->crtc_id, -1,
0, 0, object_ids, 1, mode));
- do_or_die(drmModeSetCrtc(mcl.fd, data->crtc_id, -1,
- 0, 0, object_ids, 1, mode));
+ ret = drmModeSetCrtc(mcl.fd, data->crtc_id, -1, 0, 0, object_ids,
+ 1, mode);
close(mcl.fd);
+ igt_assert_eq(ret, 0);

object_ids[mcl.object_count++] = wrong_plane_id;
do_or_die(create_lease(data->master.fd, &mcl));
--
2.25.1