mirror of https://github.com/xzeldon/htop.git
Do not scan new processes for deleted libs
This commit is contained in:
parent
efe09a5e39
commit
0e29174211
|
@ -1417,6 +1417,21 @@ static char* LinuxProcessList_updateTtyDevice(TtyDriver* ttyDrivers, unsigned lo
|
|||
return out;
|
||||
}
|
||||
|
||||
static bool isOlderThan(const ProcessList* pl, const Process* proc, unsigned int seconds) {
|
||||
assert(pl->realtimeMs > 0);
|
||||
|
||||
/* Starttime might not yet be parsed */
|
||||
if (proc->starttime_ctime <= 0)
|
||||
return false;
|
||||
|
||||
uint64_t realtime = pl->realtimeMs / 1000;
|
||||
|
||||
if (realtime < (uint64_t)proc->starttime_ctime)
|
||||
return false;
|
||||
|
||||
return realtime - proc->starttime_ctime > seconds;
|
||||
}
|
||||
|
||||
static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, openat_arg_t parentFd, const char* dirname, const Process* parent, double period) {
|
||||
ProcessList* pl = (ProcessList*) this;
|
||||
const struct dirent* entry;
|
||||
|
@ -1525,7 +1540,7 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, openat_arg_
|
|||
bool prev = proc->usesDeletedLib;
|
||||
|
||||
if (!proc->isKernelThread && !proc->isUserlandThread &&
|
||||
((ss->flags & PROCESS_FLAG_LINUX_LRS_FIX) || (settings->highlightDeletedExe && !proc->procExeDeleted))) {
|
||||
((ss->flags & PROCESS_FLAG_LINUX_LRS_FIX) || (settings->highlightDeletedExe && !proc->procExeDeleted && isOlderThan(pl, proc, 10)))) {
|
||||
|
||||
// Check if we really should recalculate the M_LRS value for this process
|
||||
uint64_t passedTimeInMs = pl->realtimeMs - lp->last_mlrs_calctime;
|
||||
|
|
Loading…
Reference in New Issue