* [Intel-gfx] [PATCH i-g-t 1/2] Always pass device to igt_params_set @ 2020-05-18 23:32 ` Chris Wilson 0 siblings, 0 replies; 6+ messages in thread From: Chris Wilson @ 2020-05-18 23:32 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx, Chris Wilson Don't second guess, require the user to provide the device that wish to set the module parameter for. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- lib/igt_params.c | 8 ++++---- lib/igt_params.h | 4 ++-- lib/igt_psr.c | 18 ++++++++--------- lib/igt_psr.h | 6 +++--- tests/i915/i915_pm_dc.c | 12 ++++++------ tests/kms_busy.c | 8 ++++---- tests/kms_fbcon_fbt.c | 32 +++++++++++++++---------------- tests/kms_force_connector_basic.c | 6 +++--- tests/kms_frontbuffer_tracking.c | 10 +++++----- tests/kms_panel_fitting.c | 2 +- tests/kms_psr.c | 6 +++--- tests/kms_psr2_su.c | 6 ++++-- 12 files changed, 60 insertions(+), 58 deletions(-) diff --git a/lib/igt_params.c b/lib/igt_params.c index d8649dfd9..3decc5b2a 100644 --- a/lib/igt_params.c +++ b/lib/igt_params.c @@ -343,9 +343,9 @@ bool igt_params_save_and_set(int device, const char *parameter, const char *fmt, * Please consider using igt_set_module_param_int() for the integer and bool * parameters. */ -void igt_set_module_param(const char *name, const char *val) +void igt_set_module_param(int device, const char *name, const char *val) { - igt_assert(igt_params_save_and_set(-1, name, "%s", val)); + igt_assert(igt_params_save_and_set(device, name, "%s", val)); } /** @@ -356,7 +356,7 @@ void igt_set_module_param(const char *name, const char *val) * This is a wrapper for igt_set_module_param() that takes an integer instead of * a string. Please see igt_set_module_param(). */ -void igt_set_module_param_int(const char *name, int val) +void igt_set_module_param_int(int device, const char *name, int val) { - igt_assert(igt_params_save_and_set(-1, name, "%d", val)); + igt_assert(igt_params_save_and_set(device, name, "%d", val)); } diff --git a/lib/igt_params.h b/lib/igt_params.h index ed17f34a5..bbd6f3ee6 100644 --- a/lib/igt_params.h +++ b/lib/igt_params.h @@ -34,7 +34,7 @@ bool igt_params_set(int device, const char *parameter, const char *fmt, ...); __attribute__((format(printf, 3, 4))) bool igt_params_save_and_set(int device, const char *parameter, const char *fmt, ...); -void igt_set_module_param(const char *name, const char *val); -void igt_set_module_param_int(const char *name, int val); +void igt_set_module_param(int device, const char *name, const char *val); +void igt_set_module_param_int(int device, const char *name, int val); #endif /* __IGT_PARAMS_H__ */ diff --git a/lib/igt_psr.c b/lib/igt_psr.c index c2a8d0e11..4109b5295 100644 --- a/lib/igt_psr.c +++ b/lib/igt_psr.c @@ -94,11 +94,11 @@ static int has_psr_debugfs(int debugfs_fd) return -EINVAL; } -static bool psr_modparam_set(int val) +static bool psr_modparam_set(int device, int val) { static int oldval = -1; - igt_set_module_param_int("enable_psr", val); + igt_set_module_param_int(device, "enable_psr", val); if (val == oldval) return false; @@ -114,7 +114,7 @@ static void restore_psr_debugfs(int sig) psr_write(psr_restore_debugfs_fd, "0"); } -static bool psr_set(int debugfs_fd, int mode) +static bool psr_set(int device, int debugfs_fd, int mode) { int ret; @@ -131,7 +131,7 @@ static bool psr_set(int debugfs_fd, int mode) * version enabled and the PSR version of the test, it will * fail in the first psr_wait_entry() of the test. */ - ret = psr_modparam_set(mode >= PSR_MODE_1); + ret = psr_modparam_set(device, mode >= PSR_MODE_1); } else { const char *debug_val; @@ -161,18 +161,18 @@ static bool psr_set(int debugfs_fd, int mode) return ret; } -bool psr_enable(int debugfs_fd, enum psr_mode mode) +bool psr_enable(int device, int debugfs_fd, enum psr_mode mode) { - return psr_set(debugfs_fd, mode); + return psr_set(device, debugfs_fd, mode); } -bool psr_disable(int debugfs_fd) +bool psr_disable(int device, int debugfs_fd) { /* Any mode different than PSR_MODE_1/2 will disable PSR */ - return psr_set(debugfs_fd, -1); + return psr_set(device, debugfs_fd, -1); } -bool psr_sink_support(int debugfs_fd, enum psr_mode mode) +bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode) { char buf[PSR_STATUS_MAX_LEN]; int ret; diff --git a/lib/igt_psr.h b/lib/igt_psr.h index 02ce760b2..b2afb6119 100644 --- a/lib/igt_psr.h +++ b/lib/igt_psr.h @@ -39,9 +39,9 @@ bool psr_disabled_check(int debugfs_fd); bool psr_wait_entry(int debugfs_fd, enum psr_mode mode); bool psr_wait_update(int debugfs_fd, enum psr_mode mode); bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode); -bool psr_enable(int debugfs_fd, enum psr_mode); -bool psr_disable(int debugfs_fd); -bool psr_sink_support(int debugfs_fd, enum psr_mode); +bool psr_enable(int device, int debugfs_fd, enum psr_mode); +bool psr_disable(int device, int debugfs_fd); +bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode); bool psr2_wait_su(int debugfs_fd, uint16_t *num_su_blocks); #endif diff --git a/tests/i915/i915_pm_dc.c b/tests/i915/i915_pm_dc.c index 2dd6191d6..3a3027291 100644 --- a/tests/i915/i915_pm_dc.c +++ b/tests/i915/i915_pm_dc.c @@ -291,7 +291,7 @@ static void require_dc_counter(int debugfs_fd, int dc_flag) static void setup_dc3co(data_t *data) { data->op_psr_mode = PSR_MODE_2; - psr_enable(data->debugfs_fd, data->op_psr_mode); + psr_enable(data->drm_fd, data->debugfs_fd, data->op_psr_mode); igt_require_f(psr_wait_entry(data->debugfs_fd, data->op_psr_mode), "PSR2 is not enabled\n"); } @@ -408,25 +408,25 @@ int main(int argc, char *argv[]) igt_describe("In this test we make sure that system enters DC3CO " "when PSR2 is active and system is in SLEEP state"); igt_subtest("dc3co-vpb-simulation") { - igt_require(psr_sink_support(data.debugfs_fd, PSR_MODE_2)); + igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_2)); test_dc3co_vpb_simulation(&data); } igt_describe("This test validates display engine entry to DC5 state " "while PSR is active"); igt_subtest("dc5-psr") { - igt_require(psr_sink_support(data.debugfs_fd, PSR_MODE_1)); + igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_1)); data.op_psr_mode = PSR_MODE_1; - psr_enable(data.debugfs_fd, data.op_psr_mode); + psr_enable(data.drm_fd, data.debugfs_fd, data.op_psr_mode); test_dc_state_psr(&data, CHECK_DC5); } igt_describe("This test validates display engine entry to DC6 state " "while PSR is active"); igt_subtest("dc6-psr") { - igt_require(psr_sink_support(data.debugfs_fd, PSR_MODE_1)); + igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_1)); data.op_psr_mode = PSR_MODE_1; - psr_enable(data.debugfs_fd, data.op_psr_mode); + psr_enable(data.drm_fd, data.debugfs_fd, data.op_psr_mode); igt_require_f(igt_pm_pc8_plus_residencies_enabled(data.msr_fd), "PC8+ residencies not supported\n"); test_dc_state_psr(&data, CHECK_DC6); diff --git a/tests/kms_busy.c b/tests/kms_busy.c index be4273bc4..222612e79 100644 --- a/tests/kms_busy.c +++ b/tests/kms_busy.c @@ -374,20 +374,20 @@ igt_main igt_subtest_f("extended-modeset-hang-oldfb-with-reset-%s-pipe-%s", e->name, kmstest_pipe_name(n)) { - igt_set_module_param_int("force_reset_modeset_test", 1); + igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 1); test_hang(&display, eb_ring(e), n, true, false); - igt_set_module_param_int("force_reset_modeset_test", 0); + igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 0); } igt_subtest_f("extended-modeset-hang-newfb-with-reset-%s-pipe-%s", e->name, kmstest_pipe_name(n)) { - igt_set_module_param_int("force_reset_modeset_test", 1); + igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 1); test_hang(&display, eb_ring(e), n, true, true); - igt_set_module_param_int("force_reset_modeset_test", 0); + igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 0); } igt_fixture { diff --git a/tests/kms_fbcon_fbt.c b/tests/kms_fbcon_fbt.c index 143be3e37..7eba4ac5d 100644 --- a/tests/kms_fbcon_fbt.c +++ b/tests/kms_fbcon_fbt.c @@ -89,7 +89,7 @@ static void teardown_drm(struct drm_info *drm) drm->fd = -1; } -static bool fbc_supported_on_chipset(int debugfs_fd) +static bool fbc_supported_on_chipset(int device, int debugfs_fd) { char buf[128]; int ret; @@ -266,9 +266,9 @@ static bool psr_is_disabled(int debugfs_fd) return r; } -static bool psr_supported_on_chipset(int debugfs_fd) +static bool psr_supported_on_chipset(int device, int debugfs_fd) { - return psr_sink_support(debugfs_fd, PSR_MODE_1); + return psr_sink_support(device, debugfs_fd, PSR_MODE_1); } static bool psr_wait_until_update(struct drm_info *drm) @@ -276,30 +276,30 @@ static bool psr_wait_until_update(struct drm_info *drm) return psr_long_wait_update(drm->debugfs_fd, PSR_MODE_1); } -static void disable_features(int debugfs_fd) +static void disable_features(int device, int debugfs_fd) { - igt_set_module_param_int("enable_fbc", 0); - if (psr_sink_support(debugfs_fd, PSR_MODE_1)) - psr_disable(debugfs_fd); + igt_set_module_param_int(device, "enable_fbc", 0); + if (psr_sink_support(device, debugfs_fd, PSR_MODE_1)) + psr_disable(device, debugfs_fd); } -static inline void fbc_modparam_enable(int debugfs_fd) +static inline void fbc_modparam_enable(int device, int debugfs_fd) { - igt_set_module_param_int("enable_fbc", 1); + igt_set_module_param_int(device, "enable_fbc", 1); } -static inline void psr_debugfs_enable(int debugfs_fd) +static inline void psr_debugfs_enable(int device, int debugfs_fd) { - psr_enable(debugfs_fd, PSR_MODE_1); + psr_enable(device, debugfs_fd, PSR_MODE_1); } struct feature { - bool (*supported_on_chipset)(int debugfs_fd); + bool (*supported_on_chipset)(int device, int debugfs_fd); bool (*wait_until_enabled)(int debugfs_fd); bool (*is_disabled)(int debugfs_fd); bool (*wait_until_update)(struct drm_info *drm); bool (*connector_possible_fn)(drmModeConnectorPtr connector); - void (*enable)(int debugfs_fd); + void (*enable)(int device, int debugfs_fd); } fbc = { .supported_on_chipset = fbc_supported_on_chipset, .wait_until_enabled = fbc_wait_until_enabled, @@ -322,10 +322,10 @@ static void subtest(struct drm_info *drm, struct feature *feature, bool suspend) setup_drm(drm); - igt_require(feature->supported_on_chipset(drm->debugfs_fd)); + igt_require(feature->supported_on_chipset(drm->fd, drm->debugfs_fd)); - disable_features(drm->debugfs_fd); - feature->enable(drm->debugfs_fd); + disable_features(drm->fd, drm->debugfs_fd); + feature->enable(drm->fd, drm->debugfs_fd); kmstest_unset_all_crtcs(drm->fd, drm->res); wait_user("Modes unset."); diff --git a/tests/kms_force_connector_basic.c b/tests/kms_force_connector_basic.c index ddbd97efd..b1a5bac19 100644 --- a/tests/kms_force_connector_basic.c +++ b/tests/kms_force_connector_basic.c @@ -53,7 +53,7 @@ static void reset_connectors(void) drmModeFreeConnector(connector); } - igt_set_module_param_int("load_detect_test", 0); + igt_set_module_param_int(drm_fd, "load_detect_test", 0); } static int opt_handler(int opt, int opt_index, void *data) @@ -158,7 +158,7 @@ igt_main_args("", long_opts, help_str, opt_handler, NULL) kmstest_set_vt_graphics_mode(); kmstest_unset_all_crtcs(drm_fd, res); - igt_set_module_param_int("load_detect_test", 1); + igt_set_module_param_int(drm_fd, "load_detect_test", 1); plane_resources = drmModeGetPlaneResources(drm_fd); igt_assert(plane_resources); @@ -201,7 +201,7 @@ igt_main_args("", long_opts, help_str, opt_handler, NULL) */ temp = drmModeGetConnector(drm_fd, connector->connector_id); - igt_set_module_param_int("load_detect_test", 0); + igt_set_module_param_int(drm_fd, "load_detect_test", 0); igt_assert(temp->connection != DRM_MODE_UNKNOWNCONNECTION); diff --git a/tests/kms_frontbuffer_tracking.c b/tests/kms_frontbuffer_tracking.c index 5d55560d5..780fecfe8 100644 --- a/tests/kms_frontbuffer_tracking.c +++ b/tests/kms_frontbuffer_tracking.c @@ -938,8 +938,8 @@ static bool drrs_wait_until_rr_switch_to_low(void) return igt_wait(is_drrs_low(), 5000, 1); } -#define fbc_enable() igt_set_module_param_int("enable_fbc", 1) -#define fbc_disable() igt_set_module_param_int("enable_fbc", 0) +#define fbc_enable() igt_set_module_param_int(drm.fd, "enable_fbc", 1) +#define fbc_disable() igt_set_module_param_int(drm.fd, "enable_fbc", 0) #define drrs_enable() drrs_set(1) #define drrs_disable() drrs_set(0) @@ -1135,7 +1135,7 @@ static bool disable_features(const struct test_mode *t) fbc_disable(); drrs_disable(); - return psr.can_test ? psr_disable(drm.debugfs) : false; + return psr.can_test ? psr_disable(drm.fd, drm.debugfs) : false; } static void *busy_thread_func(void *data) @@ -1427,7 +1427,7 @@ static void setup_psr(void) return; } - if (!psr_sink_support(drm.debugfs, PSR_MODE_1)) { + if (!psr_sink_support(drm.fd, drm.debugfs, PSR_MODE_1)) { igt_info("Can't test PSR: not supported by sink.\n"); return; } @@ -1725,7 +1725,7 @@ static bool enable_features_for_test(const struct test_mode *t) if (t->feature & FEATURE_FBC) fbc_enable(); if (t->feature & FEATURE_PSR) - ret = psr_enable(drm.debugfs, PSR_MODE_1); + ret = psr_enable(drm.fd, drm.debugfs, PSR_MODE_1); if (t->feature & FEATURE_DRRS) drrs_enable(); diff --git a/tests/kms_panel_fitting.c b/tests/kms_panel_fitting.c index 065fc2df8..4f4c56087 100644 --- a/tests/kms_panel_fitting.c +++ b/tests/kms_panel_fitting.c @@ -231,7 +231,7 @@ static void test_atomic_fastset(data_t *data) /* Until this is force enabled, force modeset evasion. */ if (stat("/sys/module/i915/parameters/fastboot", &sb) == 0) - igt_set_module_param_int("fastboot", 1); + igt_set_module_param_int(data->drm_fd, "fastboot", 1); igt_require(display->is_atomic); igt_require(intel_gen(intel_get_drm_devid(display->drm_fd)) >= 5); diff --git a/tests/kms_psr.c b/tests/kms_psr.c index 13ed02f46..f40902fbb 100644 --- a/tests/kms_psr.c +++ b/tests/kms_psr.c @@ -195,7 +195,7 @@ static void fill_render(data_t *data, uint32_t handle, unsigned char color) static bool sink_support(data_t *data, enum psr_mode mode) { return data->with_psr_disabled || - psr_sink_support(data->debugfs_fd, mode); + psr_sink_support(data->drm_fd, data->debugfs_fd, mode); } static bool psr_wait_entry_if_enabled(data_t *data) @@ -219,7 +219,7 @@ static bool psr_enable_if_enabled(data_t *data) if (data->with_psr_disabled) return true; - return psr_enable(data->debugfs_fd, data->op_psr_mode); + return psr_enable(data->drm_fd, data->debugfs_fd, data->op_psr_mode); } static inline void manual(const char *expected) @@ -525,7 +525,7 @@ igt_main_args("", long_options, help_str, opt_handler, &data) igt_fixture { if (!data.with_psr_disabled) - psr_disable(data.debugfs_fd); + psr_disable(data.drm_fd, data.debugfs_fd); close(data.debugfs_fd); drm_intel_bufmgr_destroy(data.bufmgr); diff --git a/tests/kms_psr2_su.c b/tests/kms_psr2_su.c index 9f40c7355..a834a96e3 100644 --- a/tests/kms_psr2_su.c +++ b/tests/kms_psr2_su.c @@ -243,7 +243,8 @@ igt_main data.debugfs_fd = igt_debugfs_dir(data.drm_fd); kmstest_set_vt_graphics_mode(); - igt_require_f(psr_sink_support(data.debugfs_fd, PSR_MODE_2), + igt_require_f(psr_sink_support(data.drm_fd, + data.debugfs_fd, PSR_MODE_2), "Sink does not support PSR2\n"); data.bufmgr = drm_intel_bufmgr_gem_init(data.drm_fd, 4096); @@ -253,7 +254,8 @@ igt_main display_init(&data); /* Test if PSR2 can be enabled */ - igt_require_f(psr_enable(data.debugfs_fd, PSR_MODE_2), + igt_require_f(psr_enable(data.drm_fd, + data.debugfs_fd, PSR_MODE_2), "Error enabling PSR2\n"); data.op = FRONTBUFFER; prepare(&data); -- 2.26.2 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [igt-dev] [PATCH i-g-t 1/2] Always pass device to igt_params_set @ 2020-05-18 23:32 ` Chris Wilson 0 siblings, 0 replies; 6+ messages in thread From: Chris Wilson @ 2020-05-18 23:32 UTC (permalink / raw) To: igt-dev; +Cc: intel-gfx, Chris Wilson Don't second guess, require the user to provide the device that wish to set the module parameter for. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> --- lib/igt_params.c | 8 ++++---- lib/igt_params.h | 4 ++-- lib/igt_psr.c | 18 ++++++++--------- lib/igt_psr.h | 6 +++--- tests/i915/i915_pm_dc.c | 12 ++++++------ tests/kms_busy.c | 8 ++++---- tests/kms_fbcon_fbt.c | 32 +++++++++++++++---------------- tests/kms_force_connector_basic.c | 6 +++--- tests/kms_frontbuffer_tracking.c | 10 +++++----- tests/kms_panel_fitting.c | 2 +- tests/kms_psr.c | 6 +++--- tests/kms_psr2_su.c | 6 ++++-- 12 files changed, 60 insertions(+), 58 deletions(-) diff --git a/lib/igt_params.c b/lib/igt_params.c index d8649dfd9..3decc5b2a 100644 --- a/lib/igt_params.c +++ b/lib/igt_params.c @@ -343,9 +343,9 @@ bool igt_params_save_and_set(int device, const char *parameter, const char *fmt, * Please consider using igt_set_module_param_int() for the integer and bool * parameters. */ -void igt_set_module_param(const char *name, const char *val) +void igt_set_module_param(int device, const char *name, const char *val) { - igt_assert(igt_params_save_and_set(-1, name, "%s", val)); + igt_assert(igt_params_save_and_set(device, name, "%s", val)); } /** @@ -356,7 +356,7 @@ void igt_set_module_param(const char *name, const char *val) * This is a wrapper for igt_set_module_param() that takes an integer instead of * a string. Please see igt_set_module_param(). */ -void igt_set_module_param_int(const char *name, int val) +void igt_set_module_param_int(int device, const char *name, int val) { - igt_assert(igt_params_save_and_set(-1, name, "%d", val)); + igt_assert(igt_params_save_and_set(device, name, "%d", val)); } diff --git a/lib/igt_params.h b/lib/igt_params.h index ed17f34a5..bbd6f3ee6 100644 --- a/lib/igt_params.h +++ b/lib/igt_params.h @@ -34,7 +34,7 @@ bool igt_params_set(int device, const char *parameter, const char *fmt, ...); __attribute__((format(printf, 3, 4))) bool igt_params_save_and_set(int device, const char *parameter, const char *fmt, ...); -void igt_set_module_param(const char *name, const char *val); -void igt_set_module_param_int(const char *name, int val); +void igt_set_module_param(int device, const char *name, const char *val); +void igt_set_module_param_int(int device, const char *name, int val); #endif /* __IGT_PARAMS_H__ */ diff --git a/lib/igt_psr.c b/lib/igt_psr.c index c2a8d0e11..4109b5295 100644 --- a/lib/igt_psr.c +++ b/lib/igt_psr.c @@ -94,11 +94,11 @@ static int has_psr_debugfs(int debugfs_fd) return -EINVAL; } -static bool psr_modparam_set(int val) +static bool psr_modparam_set(int device, int val) { static int oldval = -1; - igt_set_module_param_int("enable_psr", val); + igt_set_module_param_int(device, "enable_psr", val); if (val == oldval) return false; @@ -114,7 +114,7 @@ static void restore_psr_debugfs(int sig) psr_write(psr_restore_debugfs_fd, "0"); } -static bool psr_set(int debugfs_fd, int mode) +static bool psr_set(int device, int debugfs_fd, int mode) { int ret; @@ -131,7 +131,7 @@ static bool psr_set(int debugfs_fd, int mode) * version enabled and the PSR version of the test, it will * fail in the first psr_wait_entry() of the test. */ - ret = psr_modparam_set(mode >= PSR_MODE_1); + ret = psr_modparam_set(device, mode >= PSR_MODE_1); } else { const char *debug_val; @@ -161,18 +161,18 @@ static bool psr_set(int debugfs_fd, int mode) return ret; } -bool psr_enable(int debugfs_fd, enum psr_mode mode) +bool psr_enable(int device, int debugfs_fd, enum psr_mode mode) { - return psr_set(debugfs_fd, mode); + return psr_set(device, debugfs_fd, mode); } -bool psr_disable(int debugfs_fd) +bool psr_disable(int device, int debugfs_fd) { /* Any mode different than PSR_MODE_1/2 will disable PSR */ - return psr_set(debugfs_fd, -1); + return psr_set(device, debugfs_fd, -1); } -bool psr_sink_support(int debugfs_fd, enum psr_mode mode) +bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode) { char buf[PSR_STATUS_MAX_LEN]; int ret; diff --git a/lib/igt_psr.h b/lib/igt_psr.h index 02ce760b2..b2afb6119 100644 --- a/lib/igt_psr.h +++ b/lib/igt_psr.h @@ -39,9 +39,9 @@ bool psr_disabled_check(int debugfs_fd); bool psr_wait_entry(int debugfs_fd, enum psr_mode mode); bool psr_wait_update(int debugfs_fd, enum psr_mode mode); bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode); -bool psr_enable(int debugfs_fd, enum psr_mode); -bool psr_disable(int debugfs_fd); -bool psr_sink_support(int debugfs_fd, enum psr_mode); +bool psr_enable(int device, int debugfs_fd, enum psr_mode); +bool psr_disable(int device, int debugfs_fd); +bool psr_sink_support(int device, int debugfs_fd, enum psr_mode mode); bool psr2_wait_su(int debugfs_fd, uint16_t *num_su_blocks); #endif diff --git a/tests/i915/i915_pm_dc.c b/tests/i915/i915_pm_dc.c index 2dd6191d6..3a3027291 100644 --- a/tests/i915/i915_pm_dc.c +++ b/tests/i915/i915_pm_dc.c @@ -291,7 +291,7 @@ static void require_dc_counter(int debugfs_fd, int dc_flag) static void setup_dc3co(data_t *data) { data->op_psr_mode = PSR_MODE_2; - psr_enable(data->debugfs_fd, data->op_psr_mode); + psr_enable(data->drm_fd, data->debugfs_fd, data->op_psr_mode); igt_require_f(psr_wait_entry(data->debugfs_fd, data->op_psr_mode), "PSR2 is not enabled\n"); } @@ -408,25 +408,25 @@ int main(int argc, char *argv[]) igt_describe("In this test we make sure that system enters DC3CO " "when PSR2 is active and system is in SLEEP state"); igt_subtest("dc3co-vpb-simulation") { - igt_require(psr_sink_support(data.debugfs_fd, PSR_MODE_2)); + igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_2)); test_dc3co_vpb_simulation(&data); } igt_describe("This test validates display engine entry to DC5 state " "while PSR is active"); igt_subtest("dc5-psr") { - igt_require(psr_sink_support(data.debugfs_fd, PSR_MODE_1)); + igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_1)); data.op_psr_mode = PSR_MODE_1; - psr_enable(data.debugfs_fd, data.op_psr_mode); + psr_enable(data.drm_fd, data.debugfs_fd, data.op_psr_mode); test_dc_state_psr(&data, CHECK_DC5); } igt_describe("This test validates display engine entry to DC6 state " "while PSR is active"); igt_subtest("dc6-psr") { - igt_require(psr_sink_support(data.debugfs_fd, PSR_MODE_1)); + igt_require(psr_sink_support(data.drm_fd, data.debugfs_fd, PSR_MODE_1)); data.op_psr_mode = PSR_MODE_1; - psr_enable(data.debugfs_fd, data.op_psr_mode); + psr_enable(data.drm_fd, data.debugfs_fd, data.op_psr_mode); igt_require_f(igt_pm_pc8_plus_residencies_enabled(data.msr_fd), "PC8+ residencies not supported\n"); test_dc_state_psr(&data, CHECK_DC6); diff --git a/tests/kms_busy.c b/tests/kms_busy.c index be4273bc4..222612e79 100644 --- a/tests/kms_busy.c +++ b/tests/kms_busy.c @@ -374,20 +374,20 @@ igt_main igt_subtest_f("extended-modeset-hang-oldfb-with-reset-%s-pipe-%s", e->name, kmstest_pipe_name(n)) { - igt_set_module_param_int("force_reset_modeset_test", 1); + igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 1); test_hang(&display, eb_ring(e), n, true, false); - igt_set_module_param_int("force_reset_modeset_test", 0); + igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 0); } igt_subtest_f("extended-modeset-hang-newfb-with-reset-%s-pipe-%s", e->name, kmstest_pipe_name(n)) { - igt_set_module_param_int("force_reset_modeset_test", 1); + igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 1); test_hang(&display, eb_ring(e), n, true, true); - igt_set_module_param_int("force_reset_modeset_test", 0); + igt_set_module_param_int(display.drm_fd, "force_reset_modeset_test", 0); } igt_fixture { diff --git a/tests/kms_fbcon_fbt.c b/tests/kms_fbcon_fbt.c index 143be3e37..7eba4ac5d 100644 --- a/tests/kms_fbcon_fbt.c +++ b/tests/kms_fbcon_fbt.c @@ -89,7 +89,7 @@ static void teardown_drm(struct drm_info *drm) drm->fd = -1; } -static bool fbc_supported_on_chipset(int debugfs_fd) +static bool fbc_supported_on_chipset(int device, int debugfs_fd) { char buf[128]; int ret; @@ -266,9 +266,9 @@ static bool psr_is_disabled(int debugfs_fd) return r; } -static bool psr_supported_on_chipset(int debugfs_fd) +static bool psr_supported_on_chipset(int device, int debugfs_fd) { - return psr_sink_support(debugfs_fd, PSR_MODE_1); + return psr_sink_support(device, debugfs_fd, PSR_MODE_1); } static bool psr_wait_until_update(struct drm_info *drm) @@ -276,30 +276,30 @@ static bool psr_wait_until_update(struct drm_info *drm) return psr_long_wait_update(drm->debugfs_fd, PSR_MODE_1); } -static void disable_features(int debugfs_fd) +static void disable_features(int device, int debugfs_fd) { - igt_set_module_param_int("enable_fbc", 0); - if (psr_sink_support(debugfs_fd, PSR_MODE_1)) - psr_disable(debugfs_fd); + igt_set_module_param_int(device, "enable_fbc", 0); + if (psr_sink_support(device, debugfs_fd, PSR_MODE_1)) + psr_disable(device, debugfs_fd); } -static inline void fbc_modparam_enable(int debugfs_fd) +static inline void fbc_modparam_enable(int device, int debugfs_fd) { - igt_set_module_param_int("enable_fbc", 1); + igt_set_module_param_int(device, "enable_fbc", 1); } -static inline void psr_debugfs_enable(int debugfs_fd) +static inline void psr_debugfs_enable(int device, int debugfs_fd) { - psr_enable(debugfs_fd, PSR_MODE_1); + psr_enable(device, debugfs_fd, PSR_MODE_1); } struct feature { - bool (*supported_on_chipset)(int debugfs_fd); + bool (*supported_on_chipset)(int device, int debugfs_fd); bool (*wait_until_enabled)(int debugfs_fd); bool (*is_disabled)(int debugfs_fd); bool (*wait_until_update)(struct drm_info *drm); bool (*connector_possible_fn)(drmModeConnectorPtr connector); - void (*enable)(int debugfs_fd); + void (*enable)(int device, int debugfs_fd); } fbc = { .supported_on_chipset = fbc_supported_on_chipset, .wait_until_enabled = fbc_wait_until_enabled, @@ -322,10 +322,10 @@ static void subtest(struct drm_info *drm, struct feature *feature, bool suspend) setup_drm(drm); - igt_require(feature->supported_on_chipset(drm->debugfs_fd)); + igt_require(feature->supported_on_chipset(drm->fd, drm->debugfs_fd)); - disable_features(drm->debugfs_fd); - feature->enable(drm->debugfs_fd); + disable_features(drm->fd, drm->debugfs_fd); + feature->enable(drm->fd, drm->debugfs_fd); kmstest_unset_all_crtcs(drm->fd, drm->res); wait_user("Modes unset."); diff --git a/tests/kms_force_connector_basic.c b/tests/kms_force_connector_basic.c index ddbd97efd..b1a5bac19 100644 --- a/tests/kms_force_connector_basic.c +++ b/tests/kms_force_connector_basic.c @@ -53,7 +53,7 @@ static void reset_connectors(void) drmModeFreeConnector(connector); } - igt_set_module_param_int("load_detect_test", 0); + igt_set_module_param_int(drm_fd, "load_detect_test", 0); } static int opt_handler(int opt, int opt_index, void *data) @@ -158,7 +158,7 @@ igt_main_args("", long_opts, help_str, opt_handler, NULL) kmstest_set_vt_graphics_mode(); kmstest_unset_all_crtcs(drm_fd, res); - igt_set_module_param_int("load_detect_test", 1); + igt_set_module_param_int(drm_fd, "load_detect_test", 1); plane_resources = drmModeGetPlaneResources(drm_fd); igt_assert(plane_resources); @@ -201,7 +201,7 @@ igt_main_args("", long_opts, help_str, opt_handler, NULL) */ temp = drmModeGetConnector(drm_fd, connector->connector_id); - igt_set_module_param_int("load_detect_test", 0); + igt_set_module_param_int(drm_fd, "load_detect_test", 0); igt_assert(temp->connection != DRM_MODE_UNKNOWNCONNECTION); diff --git a/tests/kms_frontbuffer_tracking.c b/tests/kms_frontbuffer_tracking.c index 5d55560d5..780fecfe8 100644 --- a/tests/kms_frontbuffer_tracking.c +++ b/tests/kms_frontbuffer_tracking.c @@ -938,8 +938,8 @@ static bool drrs_wait_until_rr_switch_to_low(void) return igt_wait(is_drrs_low(), 5000, 1); } -#define fbc_enable() igt_set_module_param_int("enable_fbc", 1) -#define fbc_disable() igt_set_module_param_int("enable_fbc", 0) +#define fbc_enable() igt_set_module_param_int(drm.fd, "enable_fbc", 1) +#define fbc_disable() igt_set_module_param_int(drm.fd, "enable_fbc", 0) #define drrs_enable() drrs_set(1) #define drrs_disable() drrs_set(0) @@ -1135,7 +1135,7 @@ static bool disable_features(const struct test_mode *t) fbc_disable(); drrs_disable(); - return psr.can_test ? psr_disable(drm.debugfs) : false; + return psr.can_test ? psr_disable(drm.fd, drm.debugfs) : false; } static void *busy_thread_func(void *data) @@ -1427,7 +1427,7 @@ static void setup_psr(void) return; } - if (!psr_sink_support(drm.debugfs, PSR_MODE_1)) { + if (!psr_sink_support(drm.fd, drm.debugfs, PSR_MODE_1)) { igt_info("Can't test PSR: not supported by sink.\n"); return; } @@ -1725,7 +1725,7 @@ static bool enable_features_for_test(const struct test_mode *t) if (t->feature & FEATURE_FBC) fbc_enable(); if (t->feature & FEATURE_PSR) - ret = psr_enable(drm.debugfs, PSR_MODE_1); + ret = psr_enable(drm.fd, drm.debugfs, PSR_MODE_1); if (t->feature & FEATURE_DRRS) drrs_enable(); diff --git a/tests/kms_panel_fitting.c b/tests/kms_panel_fitting.c index 065fc2df8..4f4c56087 100644 --- a/tests/kms_panel_fitting.c +++ b/tests/kms_panel_fitting.c @@ -231,7 +231,7 @@ static void test_atomic_fastset(data_t *data) /* Until this is force enabled, force modeset evasion. */ if (stat("/sys/module/i915/parameters/fastboot", &sb) == 0) - igt_set_module_param_int("fastboot", 1); + igt_set_module_param_int(data->drm_fd, "fastboot", 1); igt_require(display->is_atomic); igt_require(intel_gen(intel_get_drm_devid(display->drm_fd)) >= 5); diff --git a/tests/kms_psr.c b/tests/kms_psr.c index 13ed02f46..f40902fbb 100644 --- a/tests/kms_psr.c +++ b/tests/kms_psr.c @@ -195,7 +195,7 @@ static void fill_render(data_t *data, uint32_t handle, unsigned char color) static bool sink_support(data_t *data, enum psr_mode mode) { return data->with_psr_disabled || - psr_sink_support(data->debugfs_fd, mode); + psr_sink_support(data->drm_fd, data->debugfs_fd, mode); } static bool psr_wait_entry_if_enabled(data_t *data) @@ -219,7 +219,7 @@ static bool psr_enable_if_enabled(data_t *data) if (data->with_psr_disabled) return true; - return psr_enable(data->debugfs_fd, data->op_psr_mode); + return psr_enable(data->drm_fd, data->debugfs_fd, data->op_psr_mode); } static inline void manual(const char *expected) @@ -525,7 +525,7 @@ igt_main_args("", long_options, help_str, opt_handler, &data) igt_fixture { if (!data.with_psr_disabled) - psr_disable(data.debugfs_fd); + psr_disable(data.drm_fd, data.debugfs_fd); close(data.debugfs_fd); drm_intel_bufmgr_destroy(data.bufmgr); diff --git a/tests/kms_psr2_su.c b/tests/kms_psr2_su.c index 9f40c7355..a834a96e3 100644 --- a/tests/kms_psr2_su.c +++ b/tests/kms_psr2_su.c @@ -243,7 +243,8 @@ igt_main data.debugfs_fd = igt_debugfs_dir(data.drm_fd); kmstest_set_vt_graphics_mode(); - igt_require_f(psr_sink_support(data.debugfs_fd, PSR_MODE_2), + igt_require_f(psr_sink_support(data.drm_fd, + data.debugfs_fd, PSR_MODE_2), "Sink does not support PSR2\n"); data.bufmgr = drm_intel_bufmgr_gem_init(data.drm_fd, 4096); @@ -253,7 +254,8 @@ igt_main display_init(&data); /* Test if PSR2 can be enabled */ - igt_require_f(psr_enable(data.debugfs_fd, PSR_MODE_2), + igt_require_f(psr_enable(data.drm_fd, + data.debugfs_fd, PSR_MODE_2), "Error enabling PSR2\n"); data.op = FRONTBUFFER; prepare(&data); -- 2.26.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Intel-gfx] [PATCH i-g-t 2/2] lib: Cleanup __igt_params_open() 2020-05-18 23:32 ` [igt-dev] " Chris Wilson @ 2020-05-18 23:32 ` Chris Wilson -1 siblings, 0 replies; 6+ messages in thread From: Chris Wilson @ 2020-05-18 23:32 UTC (permalink / raw) To: igt-dev; +Cc: Jani Nikula, intel-gfx, Chris Wilson The device always exist, so use it to derive the module name required to lookup either the debugfs params directory or the sysfs module parameters. Fixes: 2f5cee33ce55 ("igt/params: use igt_params_set_save for igt_set_module_param*") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> --- lib/igt_params.c | 165 +++++++++-------------------------------------- 1 file changed, 29 insertions(+), 136 deletions(-) diff --git a/lib/igt_params.c b/lib/igt_params.c index 3decc5b2a..c06416988 100644 --- a/lib/igt_params.c +++ b/lib/igt_params.c @@ -80,9 +80,18 @@ static void igt_params_exit_handler(int sig) * Notice that this function is called by igt_set_module_param(), so that one - * or one of its wrappers - is the only function the test programs need to call. */ -static void igt_params_save(int dir, const char *path, const char *name) +static void igt_params_save(int dir, const char *name) { struct module_param_data *data; + char path[PATH_MAX]; + char buf[80]; + int len; + + snprintf(buf, sizeof(buf), "/proc/self/fd/%d", dir); + len = readlink(buf, path, sizeof(path) - 1); + if (len < 0) + return; + path[len] = '\0'; /* Check if this parameter is already saved. */ for (data = module_params; data != NULL; data = data->next) @@ -110,175 +119,59 @@ static void igt_params_save(int dir, const char *path, const char *name) } /** - * __igt_params_open: - * @device: fd of the device or -1 for default - * @outpath: full path to the sysfs directory if not NULL - * @param: name of parameter of interest - * - * Find parameter of interest and return parameter directory fd, parameter - * is first searched at debugfs/dri/N/<device>_params and if not found will - * look for parameter at /sys/module/<device>/parameters. - * - * Giving -1 here for default device will search for matching device from - * debugfs/dri/N where N go from 0 to 63. First device found from debugfs - * which exist also at /sys/module/<device> will be 'default'. - * Default device will only be used for sysfs, not for debugfs. + * igt_params_open: + * @device: fd of the device * - * If outpath is not NULL caller is responsible to free given pointer. + * This opens the module parameters directory (under sysfs) corresponding + * to the device for use with igt_sysfs_set() and igt_sysfs_get(). * * Returns: - * Directory fd, or -1 on failure. + * The directory fd, or -1 on failure. */ -static int __igt_params_open(int device, char **outpath, const char *param) +int igt_params_open(int device) { + drm_version_t version; int dir, params = -1; - struct stat buffer; - char searchname[64]; - char searchpath[PATH_MAX]; - char *foundname, *ctx; + char path[PATH_MAX]; + char name[32] = ""; + + memset(&version, 0, sizeof(version)); + version.name_len = sizeof(name); + version.name = name; + if (ioctl(device, DRM_IOCTL_VERSION, &version)) + return -1; dir = igt_debugfs_dir(device); if (dir >= 0) { - int devname; - - devname = openat(dir, "name", O_RDONLY); - igt_require_f(devname >= 0, - "Driver need to name itself in debugfs!"); - - read(devname, searchname, sizeof(searchname)); - close(devname); - - foundname = strtok_r(searchname, " ", &ctx); - igt_require_f(foundname, - "Driver need to name itself in debugfs!"); - - snprintf(searchpath, PATH_MAX, "%s_params", foundname); - params = openat(dir, searchpath, O_RDONLY); - - if (params >= 0) { - char *debugfspath = malloc(PATH_MAX); - - igt_debugfs_path(device, debugfspath, PATH_MAX); - if (param != NULL) { - char filepath[PATH_MAX]; - - snprintf(filepath, PATH_MAX, "%s/%s", - debugfspath, param); - - if (stat(filepath, &buffer) == 0) { - if (outpath != NULL) - *outpath = debugfspath; - else - free(debugfspath); - } else { - free(debugfspath); - close(params); - params = -1; - } - } else if (outpath != NULL) { - /* - * Caller is responsible to free this. - */ - *outpath = debugfspath; - } else { - free(debugfspath); - } - } + snprintf(path, PATH_MAX, "%s_params", name); + params = openat(dir, path, O_RDONLY); close(dir); } if (params < 0) { /* builtin? */ - drm_version_t version; - char name[32] = ""; - char path[PATH_MAX]; - - if (device == -1) { - /* - * find default device - */ - int file, i; - const char *debugfs_root = igt_debugfs_mount(); - - igt_assert(debugfs_root); - - for (i = 0; i < 63; i++) { - char testpath[PATH_MAX]; - - snprintf(searchpath, PATH_MAX, - "%s/dri/%d/name", debugfs_root, i); - - file = open(searchpath, O_RDONLY); - - if (file < 0) - continue; - - read(file, searchname, sizeof(searchname)); - close(file); - - foundname = strtok_r(searchname, " ", &ctx); - if (!foundname) - continue; - - snprintf(testpath, PATH_MAX, - "/sys/module/%s/parameters", - foundname); - - if (stat(testpath, &buffer) == 0 && - S_ISDIR(buffer.st_mode)) { - snprintf(name, sizeof(name), "%s", - foundname); - break; - } - } - } else { - memset(&version, 0, sizeof(version)); - version.name_len = sizeof(name); - version.name = name; - ioctl(device, DRM_IOCTL_VERSION, &version); - } snprintf(path, sizeof(path), "/sys/module/%s/parameters", name); params = open(path, O_RDONLY); - if (params >= 0 && outpath) - *outpath = strdup(path); } return params; } -/** - * igt_params_open: - * @device: fd of the device - * - * This opens the module parameters directory (under sysfs) corresponding - * to the device for use with igt_sysfs_set() and igt_sysfs_get(). - * - * Returns: - * The directory fd, or -1 on failure. - */ -int igt_params_open(int device) -{ - return __igt_params_open(device, NULL, NULL); -} - __attribute__((format(printf, 3, 0))) static bool __igt_params_set(int device, const char *parameter, const char *fmt, va_list ap, bool save) { - char *path = NULL; int dir; int ret; - dir = __igt_params_open(device, save ? &path : NULL, parameter); + dir = igt_params_open(device); if (dir < 0) return false; if (save) - igt_params_save(dir, path, parameter); + igt_params_save(dir, parameter); ret = igt_sysfs_vprintf(dir, parameter, fmt, ap); - close(dir); - free(path); return ret > 0; } -- 2.26.2 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [igt-dev] [PATCH i-g-t 2/2] lib: Cleanup __igt_params_open() @ 2020-05-18 23:32 ` Chris Wilson 0 siblings, 0 replies; 6+ messages in thread From: Chris Wilson @ 2020-05-18 23:32 UTC (permalink / raw) To: igt-dev; +Cc: Jani Nikula, intel-gfx, Chris Wilson The device always exist, so use it to derive the module name required to lookup either the debugfs params directory or the sysfs module parameters. Fixes: 2f5cee33ce55 ("igt/params: use igt_params_set_save for igt_set_module_param*") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> --- lib/igt_params.c | 165 +++++++++-------------------------------------- 1 file changed, 29 insertions(+), 136 deletions(-) diff --git a/lib/igt_params.c b/lib/igt_params.c index 3decc5b2a..c06416988 100644 --- a/lib/igt_params.c +++ b/lib/igt_params.c @@ -80,9 +80,18 @@ static void igt_params_exit_handler(int sig) * Notice that this function is called by igt_set_module_param(), so that one - * or one of its wrappers - is the only function the test programs need to call. */ -static void igt_params_save(int dir, const char *path, const char *name) +static void igt_params_save(int dir, const char *name) { struct module_param_data *data; + char path[PATH_MAX]; + char buf[80]; + int len; + + snprintf(buf, sizeof(buf), "/proc/self/fd/%d", dir); + len = readlink(buf, path, sizeof(path) - 1); + if (len < 0) + return; + path[len] = '\0'; /* Check if this parameter is already saved. */ for (data = module_params; data != NULL; data = data->next) @@ -110,175 +119,59 @@ static void igt_params_save(int dir, const char *path, const char *name) } /** - * __igt_params_open: - * @device: fd of the device or -1 for default - * @outpath: full path to the sysfs directory if not NULL - * @param: name of parameter of interest - * - * Find parameter of interest and return parameter directory fd, parameter - * is first searched at debugfs/dri/N/<device>_params and if not found will - * look for parameter at /sys/module/<device>/parameters. - * - * Giving -1 here for default device will search for matching device from - * debugfs/dri/N where N go from 0 to 63. First device found from debugfs - * which exist also at /sys/module/<device> will be 'default'. - * Default device will only be used for sysfs, not for debugfs. + * igt_params_open: + * @device: fd of the device * - * If outpath is not NULL caller is responsible to free given pointer. + * This opens the module parameters directory (under sysfs) corresponding + * to the device for use with igt_sysfs_set() and igt_sysfs_get(). * * Returns: - * Directory fd, or -1 on failure. + * The directory fd, or -1 on failure. */ -static int __igt_params_open(int device, char **outpath, const char *param) +int igt_params_open(int device) { + drm_version_t version; int dir, params = -1; - struct stat buffer; - char searchname[64]; - char searchpath[PATH_MAX]; - char *foundname, *ctx; + char path[PATH_MAX]; + char name[32] = ""; + + memset(&version, 0, sizeof(version)); + version.name_len = sizeof(name); + version.name = name; + if (ioctl(device, DRM_IOCTL_VERSION, &version)) + return -1; dir = igt_debugfs_dir(device); if (dir >= 0) { - int devname; - - devname = openat(dir, "name", O_RDONLY); - igt_require_f(devname >= 0, - "Driver need to name itself in debugfs!"); - - read(devname, searchname, sizeof(searchname)); - close(devname); - - foundname = strtok_r(searchname, " ", &ctx); - igt_require_f(foundname, - "Driver need to name itself in debugfs!"); - - snprintf(searchpath, PATH_MAX, "%s_params", foundname); - params = openat(dir, searchpath, O_RDONLY); - - if (params >= 0) { - char *debugfspath = malloc(PATH_MAX); - - igt_debugfs_path(device, debugfspath, PATH_MAX); - if (param != NULL) { - char filepath[PATH_MAX]; - - snprintf(filepath, PATH_MAX, "%s/%s", - debugfspath, param); - - if (stat(filepath, &buffer) == 0) { - if (outpath != NULL) - *outpath = debugfspath; - else - free(debugfspath); - } else { - free(debugfspath); - close(params); - params = -1; - } - } else if (outpath != NULL) { - /* - * Caller is responsible to free this. - */ - *outpath = debugfspath; - } else { - free(debugfspath); - } - } + snprintf(path, PATH_MAX, "%s_params", name); + params = openat(dir, path, O_RDONLY); close(dir); } if (params < 0) { /* builtin? */ - drm_version_t version; - char name[32] = ""; - char path[PATH_MAX]; - - if (device == -1) { - /* - * find default device - */ - int file, i; - const char *debugfs_root = igt_debugfs_mount(); - - igt_assert(debugfs_root); - - for (i = 0; i < 63; i++) { - char testpath[PATH_MAX]; - - snprintf(searchpath, PATH_MAX, - "%s/dri/%d/name", debugfs_root, i); - - file = open(searchpath, O_RDONLY); - - if (file < 0) - continue; - - read(file, searchname, sizeof(searchname)); - close(file); - - foundname = strtok_r(searchname, " ", &ctx); - if (!foundname) - continue; - - snprintf(testpath, PATH_MAX, - "/sys/module/%s/parameters", - foundname); - - if (stat(testpath, &buffer) == 0 && - S_ISDIR(buffer.st_mode)) { - snprintf(name, sizeof(name), "%s", - foundname); - break; - } - } - } else { - memset(&version, 0, sizeof(version)); - version.name_len = sizeof(name); - version.name = name; - ioctl(device, DRM_IOCTL_VERSION, &version); - } snprintf(path, sizeof(path), "/sys/module/%s/parameters", name); params = open(path, O_RDONLY); - if (params >= 0 && outpath) - *outpath = strdup(path); } return params; } -/** - * igt_params_open: - * @device: fd of the device - * - * This opens the module parameters directory (under sysfs) corresponding - * to the device for use with igt_sysfs_set() and igt_sysfs_get(). - * - * Returns: - * The directory fd, or -1 on failure. - */ -int igt_params_open(int device) -{ - return __igt_params_open(device, NULL, NULL); -} - __attribute__((format(printf, 3, 0))) static bool __igt_params_set(int device, const char *parameter, const char *fmt, va_list ap, bool save) { - char *path = NULL; int dir; int ret; - dir = __igt_params_open(device, save ? &path : NULL, parameter); + dir = igt_params_open(device); if (dir < 0) return false; if (save) - igt_params_save(dir, path, parameter); + igt_params_save(dir, parameter); ret = igt_sysfs_vprintf(dir, parameter, fmt, ap); - close(dir); - free(path); return ret > 0; } -- 2.26.2 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] Always pass device to igt_params_set 2020-05-18 23:32 ` [igt-dev] " Chris Wilson (?) (?) @ 2020-05-19 0:21 ` Patchwork -1 siblings, 0 replies; 6+ messages in thread From: Patchwork @ 2020-05-19 0:21 UTC (permalink / raw) To: Chris Wilson; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/2] Always pass device to igt_params_set URL : https://patchwork.freedesktop.org/series/77379/ State : success == Summary == CI Bug Log - changes from CI_DRM_8498 -> IGTPW_4579 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/index.html Known issues ------------ Here are the changes found in IGTPW_4579 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@i915_selftest@live@execlists: - fi-kbl-8809g: [PASS][1] -> [INCOMPLETE][2] ([i915#1874]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/fi-kbl-8809g/igt@i915_selftest@live@execlists.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/fi-kbl-8809g/igt@i915_selftest@live@execlists.html [i915#1874]: https://gitlab.freedesktop.org/drm/intel/issues/1874 Participating hosts (52 -> 42) ------------------------------ Missing (10): fi-cml-u2 fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600 fi-hsw-4770 fi-kbl-7560u fi-byt-clapper fi-bdw-samus Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_5659 -> IGTPW_4579 CI-20190529: 20190529 CI_DRM_8498: 1493c649ae92207a758afa50a639275bd6c80e2e @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_4579: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/index.html IGT_5659: 66ab5e42811fee3dea8c21ab29e70e323a0650de @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/index.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 6+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for series starting with [i-g-t,1/2] Always pass device to igt_params_set 2020-05-18 23:32 ` [igt-dev] " Chris Wilson ` (2 preceding siblings ...) (?) @ 2020-05-19 2:27 ` Patchwork -1 siblings, 0 replies; 6+ messages in thread From: Patchwork @ 2020-05-19 2:27 UTC (permalink / raw) To: Chris Wilson; +Cc: igt-dev == Series Details == Series: series starting with [i-g-t,1/2] Always pass device to igt_params_set URL : https://patchwork.freedesktop.org/series/77379/ State : failure == Summary == CI Bug Log - changes from CI_DRM_8498_full -> IGTPW_4579_full ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_4579_full absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_4579_full, please notify your bug team to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_4579_full: ### IGT changes ### #### Possible regressions #### * igt@gem_ctx_persistence@clone: - shard-kbl: [PASS][1] -> [FAIL][2] +6 similar issues [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl1/igt@gem_ctx_persistence@clone.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl6/igt@gem_ctx_persistence@clone.html * igt@gem_ctx_persistence@engines-hostile: - shard-kbl: NOTRUN -> [FAIL][3] +18 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl6/igt@gem_ctx_persistence@engines-hostile.html * igt@gem_ctx_persistence@engines-mixed-process: - shard-iclb: NOTRUN -> [FAIL][4] +18 similar issues [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-iclb2/igt@gem_ctx_persistence@engines-mixed-process.html * igt@gem_ctx_persistence@file: - shard-tglb: [PASS][5] -> [FAIL][6] +9 similar issues [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb3/igt@gem_ctx_persistence@file.html [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-tglb3/igt@gem_ctx_persistence@file.html * igt@gem_ctx_persistence@hostile: - shard-apl: [PASS][7] -> [FAIL][8] +7 similar issues [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl2/igt@gem_ctx_persistence@hostile.html [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl4/igt@gem_ctx_persistence@hostile.html * igt@gem_ctx_persistence@legacy-engines-hostile: - shard-glk: NOTRUN -> [FAIL][9] +16 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-glk4/igt@gem_ctx_persistence@legacy-engines-hostile.html * igt@gem_ctx_persistence@legacy-engines-queued: - shard-tglb: NOTRUN -> [FAIL][10] +18 similar issues [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-tglb6/igt@gem_ctx_persistence@legacy-engines-queued.html * igt@gem_ctx_persistence@process: - shard-iclb: [PASS][11] -> [FAIL][12] +8 similar issues [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb4/igt@gem_ctx_persistence@process.html [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-iclb6/igt@gem_ctx_persistence@process.html * igt@gem_ctx_persistence@processes: - shard-glk: [PASS][13] -> [FAIL][14] +7 similar issues [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-glk9/igt@gem_ctx_persistence@processes.html [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-glk4/igt@gem_ctx_persistence@processes.html * igt@gem_ctx_persistence@replace: - shard-apl: NOTRUN -> [FAIL][15] +18 similar issues [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl4/igt@gem_ctx_persistence@replace.html #### Warnings #### * igt@gem_ctx_persistence@hang: - shard-apl: [SKIP][16] ([fdo#109271]) -> [FAIL][17] [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl3/igt@gem_ctx_persistence@hang.html [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl8/igt@gem_ctx_persistence@hang.html - shard-glk: [SKIP][18] ([fdo#109271]) -> [FAIL][19] [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-glk6/igt@gem_ctx_persistence@hang.html [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-glk1/igt@gem_ctx_persistence@hang.html - shard-kbl: [SKIP][20] ([fdo#109271]) -> [FAIL][21] [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl7/igt@gem_ctx_persistence@hang.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl1/igt@gem_ctx_persistence@hang.html * igt@gem_ctx_persistence@legacy-engines-mixed: - shard-snb: [SKIP][22] ([fdo#109271] / [i915#1099]) -> [FAIL][23] +23 similar issues [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-snb5/igt@gem_ctx_persistence@legacy-engines-mixed.html [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-snb1/igt@gem_ctx_persistence@legacy-engines-mixed.html * igt@gem_ctx_persistence@saturated-hostile: - shard-snb: [SKIP][24] ([fdo#109271]) -> [FAIL][25] +3 similar issues [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-snb6/igt@gem_ctx_persistence@saturated-hostile.html [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-snb6/igt@gem_ctx_persistence@saturated-hostile.html * igt@i915_pm_dc@dc3co-vpb-simulation: - shard-iclb: [SKIP][26] ([i915#658]) -> [SKIP][27] [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb6/igt@i915_pm_dc@dc3co-vpb-simulation.html [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-iclb5/igt@i915_pm_dc@dc3co-vpb-simulation.html Known issues ------------ Here are the changes found in IGTPW_4579_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_ctx_persistence@process: - shard-kbl: [PASS][28] -> [FAIL][29] ([i915#93] / [i915#95]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl6/igt@gem_ctx_persistence@process.html [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl1/igt@gem_ctx_persistence@process.html * igt@gem_eio@in-flight-suspend: - shard-apl: [PASS][30] -> [DMESG-WARN][31] ([i915#180]) +1 similar issue [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl2/igt@gem_eio@in-flight-suspend.html [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl6/igt@gem_eio@in-flight-suspend.html * igt@gen9_exec_parse@allowed-all: - shard-glk: [PASS][32] -> [DMESG-WARN][33] ([i915#1436] / [i915#716]) [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-glk7/igt@gen9_exec_parse@allowed-all.html [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-glk5/igt@gen9_exec_parse@allowed-all.html * igt@kms_cursor_crc@pipe-a-cursor-64x21-onscreen: - shard-kbl: [PASS][34] -> [FAIL][35] ([i915#54] / [i915#93] / [i915#95]) +1 similar issue [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-64x21-onscreen.html [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl3/igt@kms_cursor_crc@pipe-a-cursor-64x21-onscreen.html * igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding: - shard-apl: [PASS][36] -> [FAIL][37] ([i915#54]) [36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl1/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl3/igt@kms_cursor_crc@pipe-b-cursor-64x21-sliding.html * igt@kms_cursor_legacy@pipe-d-torture-bo: - shard-tglb: [PASS][38] -> [DMESG-WARN][39] ([i915#128]) [38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb1/igt@kms_cursor_legacy@pipe-d-torture-bo.html [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-tglb6/igt@kms_cursor_legacy@pipe-d-torture-bo.html * igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled: - shard-apl: [PASS][40] -> [FAIL][41] ([i915#52] / [i915#54] / [i915#95]) +1 similar issue [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl1/igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled.html [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl1/igt@kms_draw_crc@draw-method-xrgb8888-mmap-cpu-untiled.html * igt@kms_draw_crc@draw-method-xrgb8888-render-untiled: - shard-kbl: [PASS][42] -> [FAIL][43] ([i915#177] / [i915#52] / [i915#54] / [i915#93] / [i915#95]) [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl7/igt@kms_draw_crc@draw-method-xrgb8888-render-untiled.html [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl6/igt@kms_draw_crc@draw-method-xrgb8888-render-untiled.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-blt: - shard-glk: [PASS][44] -> [FAIL][45] ([i915#49]) [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-glk9/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-blt.html [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-glk9/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-blt.html * igt@kms_panel_fitting@atomic-fastset: - shard-iclb: [PASS][46] -> [FAIL][47] ([i915#1757]) [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb4/igt@kms_panel_fitting@atomic-fastset.html [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-iclb4/igt@kms_panel_fitting@atomic-fastset.html * igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence: - shard-apl: [PASS][48] -> [FAIL][49] ([i915#53] / [i915#95]) [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl3/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl6/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html - shard-kbl: [PASS][50] -> [FAIL][51] ([i915#53] / [i915#93] / [i915#95]) [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl7/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl1/igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence.html * igt@kms_plane_cursor@pipe-a-viewport-size-128: - shard-apl: [PASS][52] -> [FAIL][53] ([i915#1559] / [i915#95]) [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl1/igt@kms_plane_cursor@pipe-a-viewport-size-128.html [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl2/igt@kms_plane_cursor@pipe-a-viewport-size-128.html - shard-kbl: [PASS][54] -> [FAIL][55] ([i915#1559] / [i915#93] / [i915#95]) [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl4/igt@kms_plane_cursor@pipe-a-viewport-size-128.html [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl3/igt@kms_plane_cursor@pipe-a-viewport-size-128.html * igt@kms_psr@psr2_primary_blt: - shard-iclb: [PASS][56] -> [SKIP][57] ([fdo#109441]) +1 similar issue [56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb2/igt@kms_psr@psr2_primary_blt.html [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-iclb5/igt@kms_psr@psr2_primary_blt.html * igt@kms_vblank@pipe-c-ts-continuation-suspend: - shard-kbl: [PASS][58] -> [DMESG-WARN][59] ([i915#180]) [58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl3/igt@kms_vblank@pipe-c-ts-continuation-suspend.html [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl2/igt@kms_vblank@pipe-c-ts-continuation-suspend.html #### Possible fixes #### * igt@gen9_exec_parse@allowed-all: - shard-apl: [DMESG-WARN][60] ([i915#1436] / [i915#716]) -> [PASS][61] [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl1/igt@gen9_exec_parse@allowed-all.html [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl7/igt@gen9_exec_parse@allowed-all.html * igt@i915_pm_dc@dc3co-vpb-simulation: - shard-tglb: [SKIP][62] -> [PASS][63] [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb8/igt@i915_pm_dc@dc3co-vpb-simulation.html [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-tglb8/igt@i915_pm_dc@dc3co-vpb-simulation.html * igt@kms_color@pipe-c-degamma: - shard-apl: [FAIL][64] ([i915#71]) -> [PASS][65] [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl2/igt@kms_color@pipe-c-degamma.html [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl8/igt@kms_color@pipe-c-degamma.html - shard-glk: [FAIL][66] ([i915#71]) -> [PASS][67] [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-glk1/igt@kms_color@pipe-c-degamma.html [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-glk4/igt@kms_color@pipe-c-degamma.html - shard-kbl: [FAIL][68] ([i915#71]) -> [PASS][69] [68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl3/igt@kms_color@pipe-c-degamma.html [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl3/igt@kms_color@pipe-c-degamma.html * igt@kms_cursor_crc@pipe-a-cursor-64x64-onscreen: - shard-kbl: [FAIL][70] ([i915#54] / [i915#93] / [i915#95]) -> [PASS][71] [70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-64x64-onscreen.html [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-64x64-onscreen.html * igt@kms_cursor_crc@pipe-a-cursor-suspend: - shard-kbl: [DMESG-WARN][72] ([i915#180]) -> [PASS][73] +4 similar issues [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl2/igt@kms_cursor_crc@pipe-a-cursor-suspend.html [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-suspend.html * igt@kms_fbcon_fbt@psr-suspend: - shard-tglb: [FAIL][74] ([i915#1121]) -> [PASS][75] [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb2/igt@kms_fbcon_fbt@psr-suspend.html [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-tglb7/igt@kms_fbcon_fbt@psr-suspend.html * {igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a1}: - shard-glk: [FAIL][76] ([i915#79]) -> [PASS][77] [76]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-glk9/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a1.html [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-glk7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a1.html * {igt@kms_flip@flip-vs-suspend-interruptible@c-dp1}: - shard-apl: [DMESG-WARN][78] ([i915#180]) -> [PASS][79] +2 similar issues [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl8/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl3/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html * igt@kms_plane_cursor@pipe-a-overlay-size-64: - shard-apl: [FAIL][80] ([i915#1559] / [i915#95]) -> [PASS][81] +1 similar issue [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl3/igt@kms_plane_cursor@pipe-a-overlay-size-64.html [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl8/igt@kms_plane_cursor@pipe-a-overlay-size-64.html - shard-kbl: [FAIL][82] ([i915#1559] / [i915#93] / [i915#95]) -> [PASS][83] +1 similar issue [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl7/igt@kms_plane_cursor@pipe-a-overlay-size-64.html [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl3/igt@kms_plane_cursor@pipe-a-overlay-size-64.html * igt@kms_psr@no_drrs: - shard-iclb: [FAIL][84] ([i915#173]) -> [PASS][85] [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb1/igt@kms_psr@no_drrs.html [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-iclb4/igt@kms_psr@no_drrs.html * igt@kms_psr@psr2_cursor_plane_move: - shard-iclb: [SKIP][86] ([fdo#109441]) -> [PASS][87] [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-iclb3/igt@kms_psr@psr2_cursor_plane_move.html [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-iclb2/igt@kms_psr@psr2_cursor_plane_move.html * igt@kms_setmode@basic: - shard-apl: [FAIL][88] ([i915#31]) -> [PASS][89] [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl3/igt@kms_setmode@basic.html [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl3/igt@kms_setmode@basic.html * {igt@perf@polling-parameterized}: - shard-tglb: [FAIL][90] ([i915#1542]) -> [PASS][91] [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb1/igt@perf@polling-parameterized.html [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-tglb3/igt@perf@polling-parameterized.html #### Warnings #### * igt@i915_pm_dc@dc6-dpms: - shard-tglb: [FAIL][92] ([i915#454]) -> [SKIP][93] ([i915#468]) [92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb3/igt@i915_pm_dc@dc6-dpms.html [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-tglb2/igt@i915_pm_dc@dc6-dpms.html * igt@i915_pm_dc@dc6-psr: - shard-tglb: [SKIP][94] ([i915#468]) -> [FAIL][95] ([i915#454]) [94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-tglb2/igt@i915_pm_dc@dc6-psr.html [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-tglb3/igt@i915_pm_dc@dc6-psr.html * igt@kms_content_protection@atomic: - shard-apl: [DMESG-FAIL][96] ([fdo#110321]) -> [TIMEOUT][97] ([i915#1319]) [96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl7/igt@kms_content_protection@atomic.html [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl1/igt@kms_content_protection@atomic.html * igt@kms_content_protection@atomic-dpms: - shard-apl: [TIMEOUT][98] ([i915#1319]) -> [FAIL][99] ([fdo#110321] / [fdo#110336]) [98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl1/igt@kms_content_protection@atomic-dpms.html [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl3/igt@kms_content_protection@atomic-dpms.html * igt@kms_content_protection@lic: - shard-kbl: [FAIL][100] ([fdo#110321]) -> [TIMEOUT][101] ([i915#1319]) [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-kbl3/igt@kms_content_protection@lic.html [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-kbl1/igt@kms_content_protection@lic.html * igt@kms_content_protection@srm: - shard-apl: [TIMEOUT][102] ([i915#1319]) -> [FAIL][103] ([fdo#110321]) [102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8498/shard-apl8/igt@kms_content_protection@srm.html [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/shard-apl8/igt@kms_content_protection@srm.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#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#110321]: https://bugs.freedesktop.org/show_bug.cgi?id=110321 [fdo#110336]: https://bugs.freedesktop.org/show_bug.cgi?id=110336 [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099 [i915#1121]: https://gitlab.freedesktop.org/drm/intel/issues/1121 [i915#128]: https://gitlab.freedesktop.org/drm/intel/issues/128 [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319 [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436 [i915#1542]: https://gitlab.freedesktop.org/drm/intel/issues/1542 [i915#1559]: https://gitlab.freedesktop.org/drm/intel/issues/1559 [i915#173]: https://gitlab.freedesktop.org/drm/intel/issues/173 [i915#1757]: https://gitlab.freedesktop.org/drm/intel/issues/1757 [i915#177]: https://gitlab.freedesktop.org/drm/intel/issues/177 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#31]: https://gitlab.freedesktop.org/drm/intel/issues/31 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#468]: https://gitlab.freedesktop.org/drm/intel/issues/468 [i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49 [i915#52]: https://gitlab.freedesktop.org/drm/intel/issues/52 [i915#53]: https://gitlab.freedesktop.org/drm/intel/issues/53 [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54 [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658 [i915#71]: https://gitlab.freedesktop.org/drm/intel/issues/71 [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716 [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 [i915#93]: https://gitlab.freedesktop.org/drm/intel/issues/93 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 Participating hosts (11 -> 8) ------------------------------ Missing (3): pig-skl-6260u pig-glk-j5005 pig-icl-1065g7 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_5659 -> IGTPW_4579 * Piglit: piglit_4509 -> None CI-20190529: 20190529 CI_DRM_8498: 1493c649ae92207a758afa50a639275bd6c80e2e @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_4579: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/index.html IGT_5659: 66ab5e42811fee3dea8c21ab29e70e323a0650de @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_4579/index.html _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-05-19 2:27 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-05-18 23:32 [Intel-gfx] [PATCH i-g-t 1/2] Always pass device to igt_params_set Chris Wilson 2020-05-18 23:32 ` [igt-dev] " Chris Wilson 2020-05-18 23:32 ` [Intel-gfx] [PATCH i-g-t 2/2] lib: Cleanup __igt_params_open() Chris Wilson 2020-05-18 23:32 ` [igt-dev] " Chris Wilson 2020-05-19 0:21 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] Always pass device to igt_params_set Patchwork 2020-05-19 2:27 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
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.