On Tue, Oct 09, 2018 at 11:59:31AM +0300, Alexey Budankov wrote:

SNIP

> @@ -1568,15 +1596,18 @@ static int parse_clockid(const struct option *opt, 
> const char *str, int unset)
>  
>  #ifdef HAVE_AIO_SUPPORT
>  static int record__aio_parse(const struct option *opt,
> -                          const char *str __maybe_unused,
> +                          const char *str,
>                            int unset)
>  {
>       struct record_opts *opts = (struct record_opts *)opt->value;
>  
> -     if (unset)
> +     if (unset) {
>               opts->nr_cblocks = 0;
> -     else
> -             opts->nr_cblocks = 1;
> +     } else {
> +             opts->nr_cblocks = strtol(str, NULL, 0);
> +             if (!opts->nr_cblocks)
> +                     opts->nr_cblocks = 1;
> +     }
>  
>       return 0;
>  }
> @@ -1886,8 +1917,8 @@ static struct option __record_options[] = {
>       OPT_BOOLEAN(0, "dry-run", &dry_run,
>                   "Parse options then exit"),
>  #ifdef HAVE_AIO_SUPPORT
> -     OPT_CALLBACK_NOOPT(0, "aio", &record.opts,
> -                  NULL, "Enable asynchronous trace writing mode",

hum, why removing --aio option? I though we will have:

  perf record --aio ....           # enables aio with default settings
  perf record --aio-cblocks=3 ...  # enabled aio with aio-cblocks=3


jirka

> +     OPT_CALLBACK(0, "aio-cblocks", &record.opts,
> +                  "n", "Use <n> control blocks in asynchronous trace writing 
> mode (max: 4)",
>                    record__aio_parse),

SNIP

Reply via email to