mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
There was a thread on "unusually high load averages" when running under
sched_ule, in January 2004. Looking at this, "pagezero" is (one of) the
culprit(s). We had no provision for processes with P_NOLOAD set. With
pagezero not running at PRI_ITHD, kseq_load_{add,rem} count pagezero as
another-normal-process, thus the "expected-plus-one" load reported in
the above thread.
Submitted by: Nikos Ntarmos <ntarmos@ceid.upatras.gr>
This commit is contained in:
parent
a2c4a178ab
commit
207a6c0dcb
1 changed files with 2 additions and 2 deletions
|
|
@ -357,7 +357,7 @@ kseq_load_add(struct kseq *kseq, struct kse *ke)
|
|||
if (class == PRI_TIMESHARE)
|
||||
kseq->ksq_load_timeshare++;
|
||||
kseq->ksq_load++;
|
||||
if (class != PRI_ITHD)
|
||||
if (class != PRI_ITHD && (ke->ke_proc->p_flag & P_NOLOAD) == 0)
|
||||
#ifdef SMP
|
||||
kseq->ksq_group->ksg_load++;
|
||||
#else
|
||||
|
|
@ -380,7 +380,7 @@ kseq_load_rem(struct kseq *kseq, struct kse *ke)
|
|||
class = PRI_BASE(ke->ke_ksegrp->kg_pri_class);
|
||||
if (class == PRI_TIMESHARE)
|
||||
kseq->ksq_load_timeshare--;
|
||||
if (class != PRI_ITHD)
|
||||
if (class != PRI_ITHD && (ke->ke_proc->p_flag & P_NOLOAD) == 0)
|
||||
#ifdef SMP
|
||||
kseq->ksq_group->ksg_load--;
|
||||
#else
|
||||
|
|
|
|||
Loading…
Reference in a new issue