From 301ad44cdf1b868b1ab89096721da91fa8541fdc Mon Sep 17 00:00:00 2001 From: Tomeu Vizoso Date: Thu, 2 Mar 2017 10:37:11 +0100 Subject: lib: Open debugfs files for the given DRM device When opening a DRM debugfs file, locate the right path based on the given DRM device FD. This is needed so, in setups with more than one DRM device, any operations on debugfs files affect the expected DRM device. v2: - rebased and fixed new API additions v3: - updated chamelium test, which was missed previously - use the minor of the device for the debugfs path, not the major - have a proper exit handler for calling igt_hpd_storm_reset with the right device fd. Signed-off-by: Tomeu Vizoso Reviewed-by: Robert Foss Acked-by: Chris Wilson --- lib/igt_aux.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'lib/igt_aux.c') diff --git a/lib/igt_aux.c b/lib/igt_aux.c index 7ee279a3..1222806c 100644 --- a/lib/igt_aux.c +++ b/lib/igt_aux.c @@ -350,10 +350,10 @@ void igt_stop_signal_helper(void) } static struct igt_helper_process shrink_helper; -static void __attribute__((noreturn)) shrink_helper_process(pid_t pid) +static void __attribute__((noreturn)) shrink_helper_process(int fd, pid_t pid) { while (1) { - igt_drop_caches_set(DROP_SHRINK_ALL); + igt_drop_caches_set(fd, DROP_SHRINK_ALL); usleep(1000 * 1000 / 50); if (kill(pid, 0)) /* Parent has died, so must we. */ exit(0); @@ -370,12 +370,12 @@ static void __attribute__((noreturn)) shrink_helper_process(pid_t pid) * * This should only be used from an igt_fixture. */ -void igt_fork_shrink_helper(void) +void igt_fork_shrink_helper(int drm_fd) { assert(!igt_only_list_subtests()); - igt_require(igt_drop_caches_has(DROP_SHRINK_ALL)); + igt_require(igt_drop_caches_has(drm_fd, DROP_SHRINK_ALL)); igt_fork_helper(&shrink_helper) - shrink_helper_process(getppid()); + shrink_helper_process(drm_fd, getppid()); } /** -- cgit v1.2.3