From b9ce898c6f61203b4987c4e983acef9162cbc323 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Thu, 10 Oct 2002 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 2002-10-10 --- pc/main.c | 1 + port/proc.c | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/pc/main.c b/pc/main.c index 821bc870dc9decf037806bc54f406e4f2335e00a..ae91dcf52f3793fb9188e9230b4fb816fda11701 100644 --- a/pc/main.c +++ b/pc/main.c @@ -140,6 +140,7 @@ machinit(void) m->machno = machno; m->pdb = pdb; m->gdt = gdt; + m->perf.period = 1; /* * For polled uart output at boot, need diff --git a/port/proc.c b/port/proc.c index 93ee7fa139a80ade0bfea4d1287db225ca34f90d..c45a53238ddb8a06c7cb43cdf1cf5996b02cb777 100644 --- a/port/proc.c +++ b/port/proc.c @@ -1251,9 +1251,9 @@ accounttime(void) n = perfticks(); per = n - m->perf.last; m->perf.last = n; - if(per == 0) - per = 1; - m->perf.period = (m->perf.period*(HZ-1)+per)/HZ; + per = (m->perf.period*(HZ-1) + per)/HZ; + if(per != 0) + m->perf.period = per; m->perf.avg_inidle = (m->perf.avg_inidle*(HZ-1)+m->perf.inidle)/HZ; m->perf.inidle = 0;