287 lines
7.6 KiB
Diff
287 lines
7.6 KiB
Diff
From 52afb3a8d31871d28b1c39573a7ed5196c2d5023 Mon Sep 17 00:00:00 2001
|
|
From: Craig Small <csmall@dropbear.xyz>
|
|
Date: Mon, 15 Feb 2021 21:10:06 +1100
|
|
Subject: [PATCH] pidwait: Rename from pwait
|
|
|
|
pwait is already in at least Debian in a different package
|
|
|
|
References:
|
|
https://bugs.debian.org/982391
|
|
---
|
|
diff --git a/Makefile.am b/Makefile.am
|
|
index e037e4c..de15e13 100644
|
|
--- a/Makefile.am
|
|
+++ b/Makefile.am
|
|
@@ -49,8 +49,8 @@ bin_PROGRAMS = \
|
|
uptime \
|
|
vmstat \
|
|
w
|
|
-if BUILD_PWAIT
|
|
-bin_PROGRAMS += pwait
|
|
+if BUILD_PIDWAIT
|
|
+bin_PROGRAMS += pidwait
|
|
endif
|
|
else
|
|
usrbin_exec_PROGRAMS += \
|
|
@@ -85,8 +85,8 @@ dist_man_MANS += \
|
|
sysctl.conf.5 \
|
|
ps/ps.1
|
|
|
|
-if BUILD_PWAIT
|
|
-dist_man_MANS += pwait.1
|
|
+if BUILD_PIDWAIT
|
|
+dist_man_MANS += pidwait.1
|
|
endif
|
|
endif
|
|
|
|
@@ -199,8 +199,8 @@ free_SOURCES = free.c lib/strutils.c lib/fileutils.c
|
|
pgrep_SOURCES = pgrep.c lib/fileutils.c lib/nsutils.c
|
|
pkill_SOURCES = pgrep.c lib/fileutils.c lib/nsutils.c
|
|
pmap_SOURCES = pmap.c lib/fileutils.c
|
|
-if BUILD_PWAIT
|
|
-pwait_SOURCES = pgrep.c lib/fileutils.c lib/nsutils.c
|
|
+if BUILD_PIDWAIT
|
|
+pidwait_SOURCES = pgrep.c lib/fileutils.c lib/nsutils.c
|
|
endif
|
|
if !CYGWIN
|
|
pwdx_SOURCES = pwdx.c lib/fileutils.c
|
|
diff --git a/NEWS b/NEWS
|
|
index da63c9c..5fe6761 100644
|
|
--- a/NEWS
|
|
+++ b/NEWS
|
|
@@ -1,3 +1,7 @@
|
|
+procps-ng-NEXT
|
|
+---------------
|
|
+ * Rename pwait to pidwait
|
|
+
|
|
procps-ng-3.3.17
|
|
---------------
|
|
* library: Incremented to 8:3:0
|
|
diff --git a/configure.ac b/configure.ac
|
|
index 56a8669..750c0fb 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -132,20 +132,20 @@ AC_TRY_COMPILE([#include <errno.h>],
|
|
AC_MSG_RESULT(yes),
|
|
AC_MSG_RESULT(no))
|
|
|
|
-AC_CHECK_FUNC([pidfd_open], [enable_pwait=yes], [
|
|
+AC_CHECK_FUNC([pidfd_open], [enable_pidwait=yes], [
|
|
AC_MSG_CHECKING([for __NR_pidfd_open])
|
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([
|
|
#include <sys/syscall.h>
|
|
#ifndef __NR_pidfd_open
|
|
#error __NR_pidfd_open not defined
|
|
#endif
|
|
- ])], [enable_pwait=yes], [enable_pwait=no])
|
|
- AC_MSG_RESULT([$enable_pwait])
|
|
+ ])], [enable_pidwait=yes], [enable_pidwait=no])
|
|
+ AC_MSG_RESULT([$enable_pidwait])
|
|
])
|
|
-if test "$enable_pwait" = yes; then
|
|
- AC_DEFINE([ENABLE_PWAIT], [1], [Enable pwait])
|
|
+if test "$enable_pidwait" = yes; then
|
|
+ AC_DEFINE([ENABLE_PIDWAIT], [1], [Enable pidwait])
|
|
fi
|
|
-AM_CONDITIONAL([BUILD_PWAIT], [test x$enable_pwait = xyes])
|
|
+AM_CONDITIONAL([BUILD_PIDWAIT], [test x$enable_pidwait = xyes])
|
|
|
|
dnl watch8bit must be before the AC_ARG_WITH set as it sets up ncurses
|
|
AC_SUBST([WITH_WATCH8BIT])
|
|
diff --git a/pgrep.1 b/pgrep.1
|
|
index 4f8907b..af6dcd5 100644
|
|
--- a/pgrep.1
|
|
+++ b/pgrep.1
|
|
@@ -9,7 +9,7 @@
|
|
.\"
|
|
.TH PGREP "1" "2020-06-04" "procps-ng" "User Commands"
|
|
.SH NAME
|
|
-pgrep, pkill, pwait \- look up, signal, or wait for processes based on name and other attributes
|
|
+pgrep, pkill, pidwait \- look up, signal, or wait for processes based on name and other attributes
|
|
.SH SYNOPSIS
|
|
.B pgrep
|
|
[options] pattern
|
|
@@ -17,7 +17,7 @@ pgrep, pkill, pwait \- look up, signal, or wait for processes based on name and
|
|
.B pkill
|
|
[options] pattern
|
|
.br
|
|
-.B pwait
|
|
+.B pidwait
|
|
[options] pattern
|
|
.SH DESCRIPTION
|
|
.B pgrep
|
|
@@ -45,7 +45,7 @@ will send the specified signal (by default
|
|
.BR SIGTERM )
|
|
to each process instead of listing them on stdout.
|
|
.PP
|
|
-.B pwait
|
|
+.B pidwait
|
|
will wait for each process instead of listing them on stdout.
|
|
.SH OPTIONS
|
|
.TP
|
|
@@ -60,7 +60,7 @@ only.)
|
|
\fB\-c\fR, \fB\-\-count\fR
|
|
Suppress normal output; instead print a count of matching processes. When
|
|
count does not match anything, e.g. returns zero, the command will return
|
|
-non-zero value. Note that for pkill and pwait, the count is the number of
|
|
+non-zero value. Note that for pkill and pidwait, the count is the number of
|
|
matching processes, not the processes that were successfully signaled or waited
|
|
for.
|
|
.TP
|
|
@@ -88,7 +88,7 @@ translated into
|
|
.BR pgrep 's,
|
|
.BR pkill 's,
|
|
or
|
|
-.BR pwait 's
|
|
+.BR pidwait 's
|
|
own process group.
|
|
.TP
|
|
\fB\-G\fR, \fB\-\-group\fR \fIgid\fP,...
|
|
@@ -126,7 +126,7 @@ is translated into
|
|
.BR pgrep 's,
|
|
.BR pkill 's,
|
|
or
|
|
-.BR pwait 's
|
|
+.BR pidwait 's
|
|
own session ID.
|
|
.TP
|
|
\fB\-t\fR, \fB\-\-terminal\fR \fIterm\fP,...
|
|
@@ -145,7 +145,7 @@ symbolical value may be used.
|
|
Negates the matching. This option is usually used in
|
|
.BR pgrep 's
|
|
or
|
|
-.BR pwait 's
|
|
+.BR pidwait 's
|
|
context. In
|
|
.BR pkill 's
|
|
context the short option is disabled to avoid accidental usage of the option.
|
|
@@ -154,7 +154,7 @@ context the short option is disabled to avoid accidental usage of the option.
|
|
Shows all thread ids instead of pids in
|
|
.BR pgrep 's
|
|
or
|
|
-.BR pwait 's
|
|
+.BR pidwait 's
|
|
context. In
|
|
.BR pkill 's
|
|
context this option is disabled.
|
|
@@ -167,7 +167,7 @@ match the
|
|
.TP
|
|
\fB\-F\fR, \fB\-\-pidfile\fR \fIfile\fR
|
|
Read \fIPID\fRs from \fIfile\fR. This option is more useful for
|
|
-.BR pkill or pwait
|
|
+.BR pkill or pidwait
|
|
than
|
|
.BR pgrep .
|
|
.TP
|
|
@@ -237,7 +237,7 @@ $ renice +4 $(pgrep chrome)
|
|
.PD 0
|
|
.TP
|
|
0
|
|
-One or more processes matched the criteria. For pkill and pwait, one or more
|
|
+One or more processes matched the criteria. For pkill and pidwait, one or more
|
|
processes must also have been successfully signalled or waited for.
|
|
.TP
|
|
1
|
|
@@ -258,7 +258,7 @@ The running
|
|
.BR pgrep ,
|
|
.BR pkill ,
|
|
or
|
|
-.B pwait
|
|
+.B pidwait
|
|
process will never report itself as a
|
|
match.
|
|
.SH BUGS
|
|
diff --git a/pgrep.c b/pgrep.c
|
|
index 4fe5e8a..1905cd1 100644
|
|
--- a/pgrep.c
|
|
+++ b/pgrep.c
|
|
@@ -38,7 +38,7 @@
|
|
#include <stdbool.h>
|
|
#include <time.h>
|
|
|
|
-#if defined(ENABLE_PWAIT) && !defined(HAVE_PIDFD_OPEN)
|
|
+#if defined(ENABLE_PIDWAIT) && !defined(HAVE_PIDFD_OPEN)
|
|
#include <sys/epoll.h>
|
|
#include <sys/syscall.h>
|
|
#endif
|
|
@@ -68,8 +68,8 @@
|
|
static enum {
|
|
PGREP = 0,
|
|
PKILL,
|
|
-#ifdef ENABLE_PWAIT
|
|
- PWAIT,
|
|
+#ifdef ENABLE_PIDWAIT
|
|
+ PIDWAIT,
|
|
#endif
|
|
} prog_mode;
|
|
|
|
@@ -136,8 +136,8 @@ static int __attribute__ ((__noreturn__)) usage(int opt)
|
|
fputs(_(" -q, --queue <value> integer value to be sent with the signal\n"), fp);
|
|
fputs(_(" -e, --echo display what is killed\n"), fp);
|
|
break;
|
|
-#ifdef ENABLE_PWAIT
|
|
- case PWAIT:
|
|
+#ifdef ENABLE_PIDWAIT
|
|
+ case PIDWAIT:
|
|
fputs(_(" -e, --echo display PIDs before waiting\n"), fp);
|
|
break;
|
|
#endif
|
|
@@ -687,7 +687,7 @@ static struct el * select_procs (int *num)
|
|
xerrx(EXIT_FAILURE, _("internal error"));
|
|
}
|
|
|
|
- // pkill and pwait don't support -w, but this is checked in getopt
|
|
+ // pkill and pidwait don't support -w, but this is checked in getopt
|
|
if (opt_threads) {
|
|
while (readtask(ptp, &task, &subtask)){
|
|
// don't add redundant tasks
|
|
@@ -742,7 +742,7 @@ static int signal_option(int *argc, char **argv)
|
|
return -1;
|
|
}
|
|
|
|
-#if defined(ENABLE_PWAIT) && !defined(HAVE_PIDFD_OPEN)
|
|
+#if defined(ENABLE_PIDWAIT) && !defined(HAVE_PIDFD_OPEN)
|
|
static int pidfd_open (pid_t pid, unsigned int flags)
|
|
{
|
|
return syscall(__NR_pidfd_open, pid, flags);
|
|
@@ -793,9 +793,9 @@ static void parse_opts (int argc, char **argv)
|
|
{NULL, 0, NULL, 0}
|
|
};
|
|
|
|
-#ifdef ENABLE_PWAIT
|
|
- if (strcmp (program_invocation_short_name, "pwait") == 0) {
|
|
- prog_mode = PWAIT;
|
|
+#ifdef ENABLE_PIDWAIT
|
|
+ if (strcmp (program_invocation_short_name, "pidwait") == 0) {
|
|
+ prog_mode = PIDWAIT;
|
|
strcat (opts, "e");
|
|
} else
|
|
#endif
|
|
@@ -1008,7 +1008,7 @@ int main (int argc, char **argv)
|
|
int num;
|
|
int i;
|
|
int kill_count = 0;
|
|
-#ifdef ENABLE_PWAIT
|
|
+#ifdef ENABLE_PIDWAIT
|
|
int poll_count = 0;
|
|
int wait_count = 0;
|
|
int epollfd = epoll_create(1);
|
|
@@ -1055,8 +1055,8 @@ int main (int argc, char **argv)
|
|
fprintf(stdout, "%d\n", num);
|
|
return !kill_count;
|
|
|
|
-#ifdef ENABLE_PWAIT
|
|
- case PWAIT:
|
|
+#ifdef ENABLE_PIDWAIT
|
|
+ case PIDWAIT:
|
|
if (opt_count)
|
|
fprintf(stdout, "%d\n", num);
|
|
|
|
diff --git a/pwait.1 b/pidwait.1
|
|
similarity index 100%
|
|
rename from pwait.1
|
|
rename to pidwait.1
|
|
--
|
|
GitLab
|
|
|