Index: bin/ps/ps.1 =================================================================== --- bin/ps/ps.1 +++ bin/ps/ps.1 @@ -29,7 +29,7 @@ .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 .\" $FreeBSD$ .\" -.Dd June 27, 2020 +.Dd November 12, 2020 .Dt PS 1 .Os .Sh NAME @@ -175,7 +175,10 @@ Use .Fl J .Sy 0 -to display only host processes. +to display only host processes or +.Fl J +.Sy -1 +to display all jailed processes. This flag implies .Fl x by default. Index: bin/ps/ps.c =================================================================== --- bin/ps/ps.c +++ bin/ps/ps.c @@ -580,7 +580,8 @@ } if (jidlist.count > 0) { for (elem = 0; elem < jidlist.count; elem++) - if (kp->ki_jid == jidlist.l.jids[elem]) + if (kp->ki_jid == jidlist.l.jids[elem] || + (jidlist.l.jids[elem] == -1 && kp->ki_jid != 0)) goto keepit; } if (pgrplist.count > 0) { @@ -796,7 +797,7 @@ } tempid = jail_getid(elem); - if (tempid < 0) { + if (tempid < 0 && tempid != strtol(elem, NULL, 10)) { warnx("Invalid %s: %s", inf->lname, elem); optfatal = 1; return (0);