Technical information: This is from /proc/*/cmdline");
case HeadingXMemory:
@@ -1071,6 +1087,8 @@
""
"The number in brackets shows the rate at which each value is changing, determined from taking the difference between the previous value and the new value, and dividing by the update interval.
"
"Technical information: This data is collected from /proc/*/io and is documented further in Documentation/accounting and Documentation/filesystems/proc.txt in the kernel source.");
+ case HeadingCGroup:
+ return i18n("Technical information: This shows Linux Control Group (cgroup) membership, retrieved from /proc/[pid]/cgroup. Control groups are used by Systemd and containers for limiting process group's usage of resources and to monitor them.");
default:
return QVariant();
}
@@ -1316,6 +1334,8 @@
const auto relativeStartTime = absoluteStartTime.secsTo(QDateTime::currentDateTime());
return TimeUtil::secondsToHumanElapsedString(relativeStartTime);
}
+ case HeadingNoNewPrivileges:
+ return QString::number(process->noNewPrivileges());
case HeadingCommand:
{
return process->command().replace(QLatin1Char('\n'),QLatin1Char(' '));
@@ -1391,6 +1411,8 @@
return w->name;
}
#endif
+ case HeadingCGroup:
+ return process->cGroup();
default:
return QVariant();
}
@@ -1659,6 +1681,7 @@
case HeadingNiceness:
case HeadingCPUTime:
case HeadingStartTime:
+ case HeadingNoNewPrivileges:
case HeadingPid:
case HeadingMemory:
case HeadingXMemory:
@@ -1720,6 +1743,8 @@
return (qlonglong)(process->vmRSS() - process->vmURSS());
case HeadingStartTime:
return process->startTime(); // 2015-01-03, gregormi: can maybe be replaced with something better later
+ case HeadingNoNewPrivileges:
+ return process->noNewPrivileges();
case HeadingCommand:
return process->command();
case HeadingIoRead:
@@ -1767,6 +1792,8 @@
return w->name;
}
#endif
+ case HeadingCGroup:
+ return process->cGroup();
default:
return QVariant();
}
@@ -1942,13 +1969,15 @@
headings << i18nc("process heading", "Memory");
headings << i18nc("process heading", "Shared Mem");
headings << i18nc("process heading", "Relative Start Time");
+ headings << i18nc("process heading", "NNP");
headings << i18nc("process heading", "Command");
#if HAVE_X11
if (d->mIsX11) {
headings << i18nc("process heading", "X11 Memory");
headings << i18nc("process heading", "Window Title");
}
#endif
+ headings << i18nc("process heading", "CGroup");
if(d->mHeadings.isEmpty()) { // If it's empty, this is the first time this has been called, so insert the headings
beginInsertColumns(QModelIndex(), 0, headings.count()-1);