[igt-dev] [PATCH 00/76] Ensure that file descriptors will be closed on exit
Das, Nirmoy
nirmoy.das at linux.intel.com
Fri Sep 30 12:38:19 UTC 2022
On 9/30/2022 2:34 PM, Das, Nirmoy wrote:
>
> Hi Mauro,
>
> Is there any reason we are avoid using |igt_fd_t for patches 27,26,22 ?|
>
|Ah never mind, just realized about igt_skip()|
|Nirmoy|
> |For i915 patches Reviewed-by:| Nirmoy Das<nirmoy.das at intel.com>
>
>
> Regards,
>
> Nirmoy
> ||
>
> On 9/26/2022 8:17 AM, Mauro Carvalho Chehab wrote:
>> From: Mauro Carvalho Chehab<mchehab at kernel.org>
>>
>> GCC is usually smart enough to close devices on exit, but that doesn't work
>> with the logic inside igt_skip(), as it uses longjmp, causing the code to
>> go out of scope. Such scoped variables must be tracked in an outer scope to
>> the skipping subtest.
>>
>> Change the logic on IGT tests in order to avoid keeping device opened at
>> the end of the test.
>>
>> Chris Wilson (76):
>> lib: Introduce typed cleanups
>> i915/gem_basic: Close device before exit
>> i915/gem_flink_basic: Close device before exit
>> i915/gem_linear_blits: Close device before exit
>> i915/gem_blits: Close device before exit
>> i915/gem_close: Close device before exit
>> i915/gem_create: Close device before exit
>> i915/gem_ctx_engines: Close device before exit
>> i915/gem_ctx_shared: Close device before exit
>> i915/gem_exec_alignment: Close device before exit
>> i915/gem_render_copy: Close device before exit
>> i915/gem_render_copy_redux: Close device before exit
>> i915/gem_media_fill: Close device before exit
>> i915/gem_userptr_blits: Close device before exit
>> i915/gem_workarounds: Close device before exit
>> i915/gem_unref_active_buffers: Close device before exit
>> i915/gem_exec_endless: Close device before exit
>> i915/gem_request_retire: Close device before exit
>> i915/gem_unfence_active_buffers: Close device before exit
>> i915/i915_pciid: Close device before exit
>> kms_cursor_legacy: Close device before exit
>> kms_flip: Close device before exit
>> kms_pipe_crc_basic: Close device before exit
>> kms_psr: Close device before exit
>> kms_flip: Close device before exit
>> kms_force_connector_basic: Close device before exit
>> dumb_buffer: Close device before exit
>> kms_atomic: Close device before exit
>> kms_atomic_interruptible: Close device before exit
>> kms_atomic_transition: Close device before exit
>> i915/kms_big_fb: Close device before exit
>> i915/kms_ccs: Close device before exit
>> kms_color: Close device before exit
>> kms_cursor_crc: Close device before exit
>> i915/kms_big_joiner: Close device before exit
>> i915/kms_cdclk: Close device before exit
>> i915/kms_fence_pin_leak: Close device before exit
>> i915/kms_flip_scaled_crc: Close device before exit
>> i915/kms_flip_tiling: Close device before exit
>> i915/kms_mmap_write_crc: Close device before exit
>> i915/kms_pipe_b_c_ivb: Close device before exit
>> i915/kms_psr2_sf: Close device before exit
>> i915/kms_psr2_su: Close device before exit
>> i915/kms_pwrite_crc: Close device before exit
>> kms_flip_event_leak: Close device before exit
>> kms_hdr: Close device before exit
>> kms_invalid_mode: Close device before exit
>> kms_panel_fitting: Close device before exit
>> kms_plane: Close device before exit
>> kms_plane_alpha_blend: Close device before exit
>> kms_plane_cursor: Close device before exit
>> kms_plane_multiple: Close device before exit
>> kms_plane_scaling: Close device before exit
>> kms_properties: Close device before exit
>> kms_rotation_crc: Close device before exit
>> kms_sequence: Close device before exit
>> kms_universal_plane: Close device before exit
>> kms_vblank: Close device before exit
>> syncobj_wait: Close device before exit
>> syncobj_basic: Close device before exit
>> syncobj_timeline: Close device before exit
>> drm_import_export: Close device before exit
>> kms_dp_aux_dev: Close device before exit
>> kms_hdmi_inject: Close device before exit
>> kms_3d: Close device before exit
>> kms_scaling_modes: Close device before exit
>> kms_dither: Close device before exit
>> drm_read: Close device before exit
>> kms_cursor_edge_walk: Close device before exit
>> kms_plane_lowres: Close device before exit
>> kms_content_protection: Close device before exit
>> feature_discovery: Close device before exit
>> i915/i915_pm_dc: Close device before exit
>> core_auth: Close(master) before exit
>> i915/gem_exec_balancer: Close device before exit
>> i915/gem_ctx_isolation: Close device before exit
>>
>> lib/igt_core.c | 6 ++
>> lib/igt_core.h | 2 +
>> lib/igt_types.c | 17 +++
>> lib/igt_types.h | 47 ++++++++
>> lib/meson.build | 1 +
>> lib/tests/bad_subtest_type.c | 19 ++++
>> lib/tests/igt_types.c | 136 ++++++++++++++++++++++++
>> lib/tests/meson.build | 2 +
>> tests/core_auth.c | 8 +-
>> tests/drm_import_export.c | 5 +
>> tests/drm_read.c | 4 +-
>> tests/dumb_buffer.c | 4 +
>> tests/feature_discovery.c | 5 +-
>> tests/i915/gem_basic.c | 8 +-
>> tests/i915/gem_blits.c | 1 +
>> tests/i915/gem_close.c | 3 +-
>> tests/i915/gem_create.c | 3 +-
>> tests/i915/gem_ctx_engines.c | 3 +-
>> tests/i915/gem_ctx_isolation.c | 3 +-
>> tests/i915/gem_ctx_shared.c | 3 +-
>> tests/i915/gem_exec_alignment.c | 3 +-
>> tests/i915/gem_exec_balancer.c | 3 +-
>> tests/i915/gem_exec_endless.c | 3 +-
>> tests/i915/gem_flink_basic.c | 11 +-
>> tests/i915/gem_linear_blits.c | 3 +-
>> tests/i915/gem_media_fill.c | 1 +
>> tests/i915/gem_render_copy.c | 1 +
>> tests/i915/gem_render_copy_redux.c | 4 +
>> tests/i915/gem_request_retire.c | 5 +-
>> tests/i915/gem_unfence_active_buffers.c | 1 +
>> tests/i915/gem_unref_active_buffers.c | 1 +
>> tests/i915/gem_userptr_blits.c | 4 +-
>> tests/i915/gem_workarounds.c | 3 +-
>> tests/i915/i915_pciid.c | 2 +
>> tests/i915/i915_pm_dc.c | 1 +
>> tests/i915/kms_big_fb.c | 1 +
>> tests/i915/kms_big_joiner.c | 1 +
>> tests/i915/kms_busy.c | 1 +
>> tests/i915/kms_ccs.c | 4 +-
>> tests/i915/kms_cdclk.c | 1 +
>> tests/i915/kms_fence_pin_leak.c | 1 +
>> tests/i915/kms_flip_scaled_crc.c | 1 +
>> tests/i915/kms_flip_tiling.c | 1 +
>> tests/i915/kms_mmap_write_crc.c | 1 +
>> tests/i915/kms_pipe_b_c_ivb.c | 1 +
>> tests/i915/kms_psr.c | 1 +
>> tests/i915/kms_psr2_sf.c | 1 +
>> tests/i915/kms_psr2_su.c | 1 +
>> tests/i915/kms_pwrite_crc.c | 1 +
>> tests/kms_3d.c | 1 +
>> tests/kms_atomic.c | 1 +
>> tests/kms_atomic_interruptible.c | 1 +
>> tests/kms_atomic_transition.c | 1 +
>> tests/kms_color.c | 1 +
>> tests/kms_content_protection.c | 1 +
>> tests/kms_cursor_crc.c | 1 +
>> tests/kms_cursor_edge_walk.c | 4 +-
>> tests/kms_cursor_legacy.c | 1 +
>> tests/kms_dither.c | 1 +
>> tests/kms_dp_aux_dev.c | 1 +
>> tests/kms_flip.c | 3 +
>> tests/kms_flip_event_leak.c | 1 +
>> tests/kms_force_connector_basic.c | 7 +-
>> tests/kms_hdmi_inject.c | 1 +
>> tests/kms_hdr.c | 1 +
>> tests/kms_invalid_mode.c | 1 +
>> tests/kms_panel_fitting.c | 4 +-
>> tests/kms_pipe_crc_basic.c | 1 +
>> tests/kms_plane.c | 1 +
>> tests/kms_plane_alpha_blend.c | 1 +
>> tests/kms_plane_cursor.c | 1 +
>> tests/kms_plane_lowres.c | 4 +-
>> tests/kms_plane_multiple.c | 4 +-
>> tests/kms_plane_scaling.c | 4 +-
>> tests/kms_properties.c | 1 +
>> tests/kms_rotation_crc.c | 1 +
>> tests/kms_scaling_modes.c | 4 +-
>> tests/kms_sequence.c | 4 +
>> tests/kms_universal_plane.c | 1 +
>> tests/kms_vblank.c | 4 +
>> tests/syncobj_basic.c | 4 +
>> tests/syncobj_timeline.c | 4 +
>> tests/syncobj_wait.c | 4 +
>> 83 files changed, 385 insertions(+), 33 deletions(-)
>> create mode 100644 lib/igt_types.c
>> create mode 100644 lib/igt_types.h
>> create mode 100644 lib/tests/bad_subtest_type.c
>> create mode 100644 lib/tests/igt_types.c
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/igt-dev/attachments/20220930/2d3db376/attachment-0001.htm>
More information about the igt-dev
mailing list