1
0
Fork 0
mirror of git://slackware.nl/current.git synced 2025-01-18 22:27:20 +01:00
slackware-current/source/a/procps/procps-3.2.8-ps-cgroup-suppress-root-group.patch
Patrick J Volkerding 75a4a592e5 Slackware 13.37
Mon Apr 25 13:37:00 UTC 2011
Slackware 13.37 x86_64 stable is released!

Thanks to everyone who pitched in on this release: the Slackware team,
the folks producing upstream code, and linuxquestions.org for providing
a great forum for collaboration and testing.

The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a
dual-sided
32-bit/64-bit x86/x86_64 DVD.  Please consider supporting the Slackware
project by picking up a copy from store.slackware.com.  We're taking
pre-orders now, and offer a discount if you sign up for a subscription.

As always, thanks to the Slackware community for testing, suggestions,
and feedback.  :-)

Have fun!
2018-05-31 22:45:18 +02:00

36 lines
1 KiB
Diff

--- procps-3.2.8/ps/output.c 2010-05-18 06:00:18.000000000 +0200
+++ procps-3.2.8.lennart/ps/output.c 2010-05-18 05:59:46.000000000 +0200
@@ -1109,7 +1109,7 @@
static int pr_cgroup(char *restrict const outbuf, const proc_t *restrict const pp){
char filename[48];
FILE *fd;
- int counter = 0;
+ int counter = 0, last_begin = 0, slash = 0;
int c;
int is_cgroup = 0;
@@ -1121,15 +1121,22 @@
if (is_cgroup == 0) {
if (c == ':') {
is_cgroup = 1;
+ slash = 0;
if (counter>0)
outbuf[counter++]=';';
}
}else
- if ((c == '\n') || (c == '\0'))
- is_cgroup = 0;
+ if ((c == '\n') || (c == '\0')){
+ if (slash) /* if the last char was a / this process is in the root cgroup which we should suppress */
+ counter = last_begin;
else
+ last_begin = counter;
+ is_cgroup = 0;
+ } else {
+ slash = c == '/';
outbuf[counter++]=c;
}
+ }
outbuf[counter]='\0';
close(fd);
if (counter>0)