[Intel-gfx] [PATCH i-g-t] lib: avoid getopt value conflicts with tests

Paulo Zanoni przanoni at gmail.com
Fri Jul 25 18:57:17 CEST 2014


2014-07-25 13:08 GMT-03:00 Thomas Wood <thomas.wood at intel.com>:
> Most tests use a printable character as the value for getopt to return,
> so avoid conflicts by using non-printing values for the standard options.

Instead of this patch, isn't there any way to verify if the tests are
using any character that is "reserved" to these general options?
Having "-r" instead of "--run-subtest" is quite nice. That said, I'm
not against your patch either.

>
> Signed-off-by: Thomas Wood <thomas.wood at intel.com>
> ---
>  lib/igt_core.c | 23 +++++++++++++++--------
>  1 file changed, 15 insertions(+), 8 deletions(-)
>
> diff --git a/lib/igt_core.c b/lib/igt_core.c
> index a0c9499..882614a 100644
> --- a/lib/igt_core.c
> +++ b/lib/igt_core.c
> @@ -218,6 +218,13 @@ int num_test_children;
>  int test_children_sz;
>  bool test_child;
>
> +enum {
> + OPT_LIST_SUBTESTS,
> + OPT_RUN_SUBTEST,
> + OPT_DEBUG,
> + OPT_HELP
> +};
> +
>  __attribute__((format(printf, 1, 2)))
>  static void kmsg(const char *format, ...)
>  #define KERN_INFO "<5>"
> @@ -320,10 +327,10 @@ static int common_init(int argc, char **argv,
>  {
>         int c, option_index = 0;
>         static struct option long_options[] = {
> -               {"list-subtests", 0, 0, 'l'},
> -               {"run-subtest", 1, 0, 'r'},
> -               {"debug", 0, 0, 'd'},
> -               {"help", 0, 0, 'h'},
> +               {"list-subtests", 0, 0, OPT_LIST_SUBTESTS},
> +               {"run-subtest", 1, 0, OPT_RUN_SUBTEST},
> +               {"debug", 0, 0, OPT_DEBUG},
> +               {"help", 0, 0, OPT_HELP},
>         };
>         char *short_opts;
>         struct option *combined_opts;
> @@ -370,18 +377,18 @@ static int common_init(int argc, char **argv,
>         while ((c = getopt_long(argc, argv, short_opts, combined_opts,
>                                &option_index)) != -1) {
>                 switch(c) {
> -               case 'd':
> +               case OPT_DEBUG:
>                         igt_log_level = IGT_LOG_DEBUG;
>                         break;
> -               case 'l':
> +               case OPT_LIST_SUBTESTS:
>                         if (!run_single_subtest)
>                                 list_subtests = true;
>                         break;
> -               case 'r':
> +               case OPT_RUN_SUBTEST:
>                         if (!list_subtests)
>                                 run_single_subtest = strdup(optarg);
>                         break;
> -               case 'h':
> +               case OPT_HELP:
>                         print_usage(help_str, false);
>                         ret = -1;
>                         goto out;
> --
> 1.9.3
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx



-- 
Paulo Zanoni



More information about the Intel-gfx mailing list