> If the lock file already exists, then fail silently. This will become Maybe "skip all maintenance steps silently"? > + if (hold_lock_file_for_update(&lk, lock_path, LOCK_NO_DEREF) < 0) { > + /* > + * Another maintenance command is running. > + * > + * If --auto was provided, then it is likely due to a > + * recursive process stack. Do not report an error in > + * that case. > + */ > + if (!opts->auto_flag && !opts->quiet) > + error(_("lock file '%s' exists, skipping maintenance"), > + lock_path); > + free(lock_path); > + return 0; > + } As it is, this doesn't seem very silent. :-) If we do want a message to be printed maybe make it warning instead of error. Other than that, the idea of having a lock file and the implementation in this patch look good to me.