mirror of
				https://github.com/tiagovignatti/intel-gpu-tools.git
				synced 2025-11-03 19:47:15 +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:
 | 
			
		||||
 * @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
 | 
			
		||||
 * 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
 | 
			
		||||
 * should happen for all keys.  When not connected to a terminal the environment
 | 
			
		||||
 * setting is ignored and execution immediately continues.
 | 
			
		||||
 * should happen for all cases.
 | 
			
		||||
 *
 | 
			
		||||
 * 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
 | 
			
		||||
 * inspection of the display is useful. Or when running a testcase in the
 | 
			
		||||
 * background.
 | 
			
		||||
 */
 | 
			
		||||
void igt_debug_wait_for_keypress(const char *key)
 | 
			
		||||
void igt_debug_wait_for_keypress(const char *var)
 | 
			
		||||
{
 | 
			
		||||
	struct termios oldt, newt;
 | 
			
		||||
	const char *env;
 | 
			
		||||
 | 
			
		||||
	if (!isatty(STDIN_FILENO))
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	env = getenv("IGT_DEBUG_INTERACTIVE");
 | 
			
		||||
 | 
			
		||||
	if (!env)
 | 
			
		||||
	if (!igt_interactive_debug)
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	if (!strstr(env, key) && !strstr(env, "all"))
 | 
			
		||||
	if (!strstr(igt_interactive_debug, var) &&
 | 
			
		||||
	    !strstr(igt_interactive_debug, "all"))
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	igt_info("Press any key to continue ...\n");
 | 
			
		||||
 | 
			
		||||
@ -64,7 +64,7 @@ void igt_system_suspend_autoresume(void);
 | 
			
		||||
/* dropping priviledges */
 | 
			
		||||
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 {
 | 
			
		||||
	IGT_RUNTIME_PM_STATUS_ACTIVE,
 | 
			
		||||
 | 
			
		||||
@ -233,6 +233,7 @@ enum {
 | 
			
		||||
 OPT_RUN_SUBTEST,
 | 
			
		||||
 OPT_DESCRIPTION,
 | 
			
		||||
 OPT_DEBUG,
 | 
			
		||||
 OPT_INTERACTIVE_DEBUG,
 | 
			
		||||
 OPT_HELP = 'h'
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@ -403,6 +404,7 @@ static void print_usage(const char *help_str, bool output_on_stderr)
 | 
			
		||||
	fprintf(f, "  --list-subtests\n"
 | 
			
		||||
		   "  --run-subtest <pattern>\n"
 | 
			
		||||
		   "  --debug[=log-domain]\n"
 | 
			
		||||
		   "  --interactive-debug[=domain]\n"
 | 
			
		||||
		   "  --help-description\n"
 | 
			
		||||
		   "  --help\n");
 | 
			
		||||
	if (help_str)
 | 
			
		||||
@ -435,6 +437,7 @@ static int common_init(int argc, char **argv,
 | 
			
		||||
		{"run-subtest", 1, 0, OPT_RUN_SUBTEST},
 | 
			
		||||
		{"help-description", 0, 0, OPT_DESCRIPTION},
 | 
			
		||||
		{"debug", optional_argument, 0, OPT_DEBUG},
 | 
			
		||||
		{"interactive-debug", optional_argument, 0, OPT_INTERACTIVE_DEBUG},
 | 
			
		||||
		{"help", 0, 0, OPT_HELP},
 | 
			
		||||
		{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,
 | 
			
		||||
			       &option_index)) != -1) {
 | 
			
		||||
		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:
 | 
			
		||||
			igt_log_level = IGT_LOG_DEBUG;
 | 
			
		||||
			if (optarg && strlen(optarg) > 0)
 | 
			
		||||
 | 
			
		||||
@ -516,6 +516,8 @@ bool igt_run_in_simulation(void);
 | 
			
		||||
 | 
			
		||||
void igt_skip_on_simulation(void);
 | 
			
		||||
 | 
			
		||||
const char *igt_interactive_debug;
 | 
			
		||||
 | 
			
		||||
/* structured logging */
 | 
			
		||||
enum igt_log_level {
 | 
			
		||||
	IGT_LOG_DEBUG,
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user