mirror of
https://github.com/tiagovignatti/intel-gpu-tools.git
synced 2025-06-12 02:16:17 +00:00
lib: s/IGT_DEBUG_INTERACTIVE/--interactive-debug=var
Use cmdline variable for interactive debug instead of env var. v2: Make interactive-debug domain optional and use "all" when not set. Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
eeff390598
commit
3d65ff780d
@ -450,32 +450,32 @@ void igt_drop_root(void)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* igt_debug_wait_for_keypress:
|
* igt_debug_wait_for_keypress:
|
||||||
* @key: env var lookup to to enable this wait
|
* @var: var lookup to to enable this wait
|
||||||
*
|
*
|
||||||
* Waits for a key press when run interactively and when the corresponding debug
|
* Waits for a key press when run interactively and when the corresponding debug
|
||||||
* key is set in the IGT_DEBUG_INTERACTIVE environment variable. Multiple keys
|
* var is set in the --interactive-debug=<var> variable. Multiple keys
|
||||||
* can be specified as a comma-separated list or alternatively "all" if a wait
|
* can be specified as a comma-separated list or alternatively "all" if a wait
|
||||||
* should happen for all keys. When not connected to a terminal the environment
|
* should happen for all cases.
|
||||||
* setting is ignored and execution immediately continues.
|
*
|
||||||
|
* When not connected to a terminal interactive_debug is ignored
|
||||||
|
* and execution immediately continues.
|
||||||
*
|
*
|
||||||
* This is useful for display tests where under certain situation manual
|
* This is useful for display tests where under certain situation manual
|
||||||
* inspection of the display is useful. Or when running a testcase in the
|
* inspection of the display is useful. Or when running a testcase in the
|
||||||
* background.
|
* background.
|
||||||
*/
|
*/
|
||||||
void igt_debug_wait_for_keypress(const char *key)
|
void igt_debug_wait_for_keypress(const char *var)
|
||||||
{
|
{
|
||||||
struct termios oldt, newt;
|
struct termios oldt, newt;
|
||||||
const char *env;
|
|
||||||
|
|
||||||
if (!isatty(STDIN_FILENO))
|
if (!isatty(STDIN_FILENO))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
env = getenv("IGT_DEBUG_INTERACTIVE");
|
if (!igt_interactive_debug)
|
||||||
|
|
||||||
if (!env)
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (!strstr(env, key) && !strstr(env, "all"))
|
if (!strstr(igt_interactive_debug, var) &&
|
||||||
|
!strstr(igt_interactive_debug, "all"))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
igt_info("Press any key to continue ...\n");
|
igt_info("Press any key to continue ...\n");
|
||||||
|
@ -64,7 +64,7 @@ void igt_system_suspend_autoresume(void);
|
|||||||
/* dropping priviledges */
|
/* dropping priviledges */
|
||||||
void igt_drop_root(void);
|
void igt_drop_root(void);
|
||||||
|
|
||||||
void igt_debug_wait_for_keypress(const char *key);
|
void igt_debug_wait_for_keypress(const char *var);
|
||||||
|
|
||||||
enum igt_runtime_pm_status {
|
enum igt_runtime_pm_status {
|
||||||
IGT_RUNTIME_PM_STATUS_ACTIVE,
|
IGT_RUNTIME_PM_STATUS_ACTIVE,
|
||||||
|
@ -233,6 +233,7 @@ enum {
|
|||||||
OPT_RUN_SUBTEST,
|
OPT_RUN_SUBTEST,
|
||||||
OPT_DESCRIPTION,
|
OPT_DESCRIPTION,
|
||||||
OPT_DEBUG,
|
OPT_DEBUG,
|
||||||
|
OPT_INTERACTIVE_DEBUG,
|
||||||
OPT_HELP = 'h'
|
OPT_HELP = 'h'
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -403,6 +404,7 @@ static void print_usage(const char *help_str, bool output_on_stderr)
|
|||||||
fprintf(f, " --list-subtests\n"
|
fprintf(f, " --list-subtests\n"
|
||||||
" --run-subtest <pattern>\n"
|
" --run-subtest <pattern>\n"
|
||||||
" --debug[=log-domain]\n"
|
" --debug[=log-domain]\n"
|
||||||
|
" --interactive-debug[=domain]\n"
|
||||||
" --help-description\n"
|
" --help-description\n"
|
||||||
" --help\n");
|
" --help\n");
|
||||||
if (help_str)
|
if (help_str)
|
||||||
@ -435,6 +437,7 @@ static int common_init(int argc, char **argv,
|
|||||||
{"run-subtest", 1, 0, OPT_RUN_SUBTEST},
|
{"run-subtest", 1, 0, OPT_RUN_SUBTEST},
|
||||||
{"help-description", 0, 0, OPT_DESCRIPTION},
|
{"help-description", 0, 0, OPT_DESCRIPTION},
|
||||||
{"debug", optional_argument, 0, OPT_DEBUG},
|
{"debug", optional_argument, 0, OPT_DEBUG},
|
||||||
|
{"interactive-debug", optional_argument, 0, OPT_INTERACTIVE_DEBUG},
|
||||||
{"help", 0, 0, OPT_HELP},
|
{"help", 0, 0, OPT_HELP},
|
||||||
{0, 0, 0, 0}
|
{0, 0, 0, 0}
|
||||||
};
|
};
|
||||||
@ -520,6 +523,12 @@ static int common_init(int argc, char **argv,
|
|||||||
while ((c = getopt_long(argc, argv, short_opts, combined_opts,
|
while ((c = getopt_long(argc, argv, short_opts, combined_opts,
|
||||||
&option_index)) != -1) {
|
&option_index)) != -1) {
|
||||||
switch(c) {
|
switch(c) {
|
||||||
|
case OPT_INTERACTIVE_DEBUG:
|
||||||
|
if (optarg && strlen(optarg) > 0)
|
||||||
|
igt_interactive_debug = strdup(optarg);
|
||||||
|
else
|
||||||
|
igt_interactive_debug = "all";
|
||||||
|
break;
|
||||||
case OPT_DEBUG:
|
case OPT_DEBUG:
|
||||||
igt_log_level = IGT_LOG_DEBUG;
|
igt_log_level = IGT_LOG_DEBUG;
|
||||||
if (optarg && strlen(optarg) > 0)
|
if (optarg && strlen(optarg) > 0)
|
||||||
|
@ -516,6 +516,8 @@ bool igt_run_in_simulation(void);
|
|||||||
|
|
||||||
void igt_skip_on_simulation(void);
|
void igt_skip_on_simulation(void);
|
||||||
|
|
||||||
|
const char *igt_interactive_debug;
|
||||||
|
|
||||||
/* structured logging */
|
/* structured logging */
|
||||||
enum igt_log_level {
|
enum igt_log_level {
|
||||||
IGT_LOG_DEBUG,
|
IGT_LOG_DEBUG,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user