static int process(const char *controller, const char *path, Hashmap *a, Hashmap *b, unsigned iteration) {
Group *g;
int r;
- FILE *f;
+ FILE *f = NULL;
pid_t pid;
unsigned n;
return 0;
}
-static int help(void) {
-
+static void help(void) {
printf("%s [OPTIONS...]\n\n"
"Show top control groups by their resource usage.\n\n"
" -h --help Show this help\n"
" -d --delay=DELAY Delay between updates\n"
" -n --iterations=N Run for N iterations before exiting\n"
" -b --batch Run in batch mode, accepting no input\n"
- " --depth=DEPTH Maximum traversal depth (default: %d)\n",
- program_invocation_short_name, arg_depth);
-
- return 0;
+ " --depth=DEPTH Maximum traversal depth (default: %u)\n"
+ , program_invocation_short_name, arg_depth);
}
static int parse_argv(int argc, char *argv[]) {
assert(argc >= 1);
assert(argv);
- while ((c = getopt_long(argc, argv, "hptcmin:bd:", options, NULL)) >= 0) {
+ while ((c = getopt_long(argc, argv, "hptcmin:bd:", options, NULL)) >= 0)
switch (c) {
case 'h':
- return help();
+ help();
+ return 0;
case ARG_VERSION:
puts(PACKAGE_STRING);
default:
assert_not_reached("Unhandled option");
}
- }
if (optind < argc) {
log_error("Too many arguments.");
if (r <= 0)
goto finish;
- a = hashmap_new(string_hash_func, string_compare_func);
- b = hashmap_new(string_hash_func, string_compare_func);
+ a = hashmap_new(&string_hash_ops);
+ b = hashmap_new(&string_hash_ops);
if (!a || !b) {
r = log_oom();
goto finish;