|
|
@@ -1264,7 +1264,7 @@ do_findprocs(void)
|
|
|
}
|
|
|
|
|
|
static void
|
|
|
-do_stop(int sig_num, int quiet, int *n_killed, int *n_notkilled, int retry_nr)
|
|
|
+do_stop(int sig_num, int quiet, int *n_killed, int *n_notkilled)
|
|
|
{
|
|
|
struct pid_list *p;
|
|
|
|
|
|
@@ -1294,15 +1294,23 @@ do_stop(int sig_num, int quiet, int *n_killed, int *n_notkilled, int retry_nr)
|
|
|
(*n_notkilled)++;
|
|
|
}
|
|
|
}
|
|
|
- if (quietmode < 0 && killed) {
|
|
|
- printf("Stopped %s (pid", what_stop);
|
|
|
- for (p = killed; p; p = p->next)
|
|
|
- printf(" %d", p->pid);
|
|
|
- putchar(')');
|
|
|
- if (retry_nr > 0)
|
|
|
- printf(", retry #%d", retry_nr);
|
|
|
- printf(".\n");
|
|
|
- }
|
|
|
+}
|
|
|
+
|
|
|
+static void
|
|
|
+do_stop_summary(int retry_nr)
|
|
|
+{
|
|
|
+ struct pid_list *p;
|
|
|
+
|
|
|
+ if (quietmode >= 0 || !killed)
|
|
|
+ return;
|
|
|
+
|
|
|
+ printf("Stopped %s (pid", what_stop);
|
|
|
+ for (p = killed; p; p = p->next)
|
|
|
+ printf(" %d", p->pid);
|
|
|
+ putchar(')');
|
|
|
+ if (retry_nr > 0)
|
|
|
+ printf(", retry #%d", retry_nr);
|
|
|
+ printf(".\n");
|
|
|
}
|
|
|
|
|
|
static void
|
|
|
@@ -1346,7 +1354,7 @@ do_stop_timeout(int timeout, int *n_killed, int *n_notkilled)
|
|
|
if (timercmp(&before, &stopat, >))
|
|
|
return false;
|
|
|
|
|
|
- do_stop(0, 1, n_killed, n_notkilled, 0);
|
|
|
+ do_stop(0, 1, n_killed, n_notkilled);
|
|
|
if (!*n_killed)
|
|
|
return true;
|
|
|
|
|
|
@@ -1419,7 +1427,8 @@ run_stop_schedule(void)
|
|
|
retry_nr = 0;
|
|
|
|
|
|
if (schedule == NULL) {
|
|
|
- do_stop(signal_nr, quietmode, &n_killed, &n_notkilled, 0);
|
|
|
+ do_stop(signal_nr, quietmode, &n_killed, &n_notkilled);
|
|
|
+ do_stop_summary(0);
|
|
|
if (n_notkilled > 0 && quietmode <= 0)
|
|
|
printf("%d pids were not killed\n", n_notkilled);
|
|
|
if (n_killed)
|
|
|
@@ -1437,7 +1446,8 @@ run_stop_schedule(void)
|
|
|
position = value;
|
|
|
goto reposition;
|
|
|
case sched_signal:
|
|
|
- do_stop(value, quietmode, &n_killed, &n_notkilled, retry_nr++);
|
|
|
+ do_stop(value, quietmode, &n_killed, &n_notkilled);
|
|
|
+ do_stop_summary(retry_nr++);
|
|
|
if (!n_killed)
|
|
|
return finish_stop_schedule(anykilled);
|
|
|
else
|