On (31/07/08 16:01), Andy Whitcroft didst pronounce:
> Allow the user to request the specific hugetlb configuration which will
> be used for the selected options, exposed via the --dry-run option.
> 
> Signed-off-by: Andy Whitcroft <[EMAIL PROTECTED]>
> Acked-by: Adam Litke <[EMAIL PROTECTED]>
> Acked-by: Eric B Munson <[EMAIL PROTECTED]>

Acked-by: Mel Gorman <[EMAIL PROTECTED]>

> ---
>  hugectl.c |   18 +++++++++++++++++-
>  1 files changed, 17 insertions(+), 1 deletions(-)
> 
> diff --git a/hugectl.c b/hugectl.c
> index 755d3b6..e24d69f 100644
> --- a/hugectl.c
> +++ b/hugectl.c
> @@ -66,8 +66,11 @@ void print_usage()
>       CONT("(malloc space)");
>  
>       OPTION("--no-preload", "Disable preloading the libhugetlbfs library");
> +
> +     OPTION("--dry-run", "describe what would be done without doing it");
>  }
>  
> +int opt_dry_run = 0;
>  int verbose_level = VERBOSITY_DEFAULT;
>  
>  void verbose_init(void)
> @@ -86,6 +89,9 @@ void setup_environment(char *var, char *val)
>  {
>       setenv(var, val, 1);
>       DEBUG("%s='%s'\n", var, val);
> +
> +     if (opt_dry_run)
> +             printf("%s='%s'\n", var, val);
>  }
>  
>  
> @@ -97,6 +103,8 @@ void setup_environment(char *var, char *val)
>  
>  #define LONG_NO_PRELOAD      (LONG_BASE | 'p')
>  
> +#define LONG_DRY_RUN (LONG_BASE | 'd')
> +
>  /*
>   * Mapping selectors, one bit per remappable/backable area as requested
>   * by the user.  These are also used as returns from getopts where they
> @@ -160,6 +168,7 @@ int main(int argc, char** argv)
>       struct option long_opts[] = {
>               {"help",       no_argument, NULL, 'h'},
>               {"no-preload", no_argument, NULL, LONG_NO_PRELOAD},
> +             {"dry-run",    no_argument, NULL, LONG_DRY_RUN},
>  
>               {"disable",    no_argument, NULL, MAP_BASE|MAP_DISABLE},
>               {"text",       no_argument, NULL, MAP_BASE|MAP_TEXT},
> @@ -192,6 +201,10 @@ int main(int argc, char** argv)
>                       DEBUG("LD_PRELOAD disabled\n");
>                       break;
>  
> +             case LONG_DRY_RUN:
> +                     opt_dry_run = 1;
> +                     break;
> +
>               default:
>                       WARNING("unparsed option %08x\n", ret);
>                       ret = -1;
> @@ -201,7 +214,7 @@ int main(int argc, char** argv)
>       index = optind;
>       opt_mappings &= ~MAP_BASE;
>  
> -     if ((argc - index) < 1) {
> +     if (!opt_dry_run && (argc - index) < 1) {
>               print_usage();
>               exit(EXIT_FAILURE);
>       }
> @@ -212,6 +225,9 @@ int main(int argc, char** argv)
>       if (opt_preload)
>               ldpreload(opt_mappings);
>  
> +     if (opt_dry_run)
> +             exit(EXIT_SUCCESS);
> +
>       execvp(argv[index], &argv[index]);
>       ERROR("exec failed: %s\n", strerror(errno));
>       exit(EXIT_FAILURE);
> -- 
> 1.5.6.GIT
> 

-- 
Mel Gorman
Part-time Phd Student                          Linux Technology Center
University of Limerick                         IBM Dublin Software Lab

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Libhugetlbfs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libhugetlbfs-devel

Reply via email to