Skip to content

Commit

Permalink
Avoid publishing pkg and load stats for procs with no IPC
Browse files Browse the repository at this point in the history
If IPC is not supported by a process, the pkg stats cannot be collected from it. Also such process is not able to compute internal load.

(cherry picked from commit cd191d4)
  • Loading branch information
bogdan-iancu committed Feb 7, 2023
1 parent fc5859d commit 813a911
Showing 1 changed file with 14 additions and 12 deletions.
26 changes: 14 additions & 12 deletions pt.c
Original file line number Diff line number Diff line change
Expand Up @@ -297,18 +297,20 @@ int internal_fork(char *proc_desc, unsigned int flags,
pt[process_no].pid = getpid();
pt[process_no].flags |= flags;
pt[process_no].type = type;
/* activate its load & pkg statistics */
pt[process_no].load_rt->flags &= (~STAT_HIDDEN);
pt[process_no].load_1m->flags &= (~STAT_HIDDEN);
pt[process_no].load_10m->flags &= (~STAT_HIDDEN);
#ifdef PKG_MALLOC
pt[process_no].pkg_total->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_used->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_rused->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_mused->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_free->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_frags->flags &= (~STAT_HIDDEN);
#endif
/* activate its load & pkg statistics, but only if IPC present */
if ( (flags & OSS_PROC_NO_IPC)==0 ) {
pt[process_no].load_rt->flags &= (~STAT_HIDDEN);
pt[process_no].load_1m->flags &= (~STAT_HIDDEN);
pt[process_no].load_10m->flags &= (~STAT_HIDDEN);
#ifdef PKG_MALLOC
pt[process_no].pkg_total->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_used->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_rused->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_mused->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_free->flags &= (~STAT_HIDDEN);
pt[process_no].pkg_frags->flags &= (~STAT_HIDDEN);
#endif
}
/* each children need a unique seed */
seed_child(seed);
init_log_level();
Expand Down

0 comments on commit 813a911

Please sign in to comment.