summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2004-07-02 03:48:09 +0000
committerjhb <jhb@FreeBSD.org>2004-07-02 03:48:09 +0000
commit2c858bc6df28ae0a10387695a8c2001bd49d9b28 (patch)
treede94e94c7ad208bf7eb380d28d14bbf1abc12887 /sys
parent1f03137b2328854e1cb42e11321acccac19501fc (diff)
downloadFreeBSD-src-2c858bc6df28ae0a10387695a8c2001bd49d9b28.zip
FreeBSD-src-2c858bc6df28ae0a10387695a8c2001bd49d9b28.tar.gz
- Assert that any process that has statclock called on it has both a
stats structure and a vmspace as this should always be true rather than checking the always true condition in an if statement. - Remove never-false check: if ((ru = &pstats->p_ru) != NULL) - Remove pstats variable that is only used once and inline its one use instead.
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/kern_clock.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/sys/kern/kern_clock.c b/sys/kern/kern_clock.c
index d346e23..0ca4bec1 100644
--- a/sys/kern/kern_clock.c
+++ b/sys/kern/kern_clock.c
@@ -374,7 +374,6 @@ void
statclock(frame)
register struct clockframe *frame;
{
- struct pstats *pstats;
struct rusage *ru;
struct vmspace *vm;
struct thread *td;
@@ -427,16 +426,16 @@ statclock(frame)
sched_clock(td);
/* Update resource usage integrals and maximums. */
- if ((pstats = p->p_stats) != NULL &&
- (ru = &pstats->p_ru) != NULL &&
- (vm = p->p_vmspace) != NULL) {
- ru->ru_ixrss += pgtok(vm->vm_tsize);
- ru->ru_idrss += pgtok(vm->vm_dsize);
- ru->ru_isrss += pgtok(vm->vm_ssize);
- rss = pgtok(vmspace_resident_count(vm));
- if (ru->ru_maxrss < rss)
- ru->ru_maxrss = rss;
- }
+ MPASS(p->p_stats != NULL);
+ MPASS(p->p_vmspace != NULL);
+ vm = p->p_vmspace;
+ ru = &p->p_stats->p_ru;
+ ru->ru_ixrss += pgtok(vm->vm_tsize);
+ ru->ru_idrss += pgtok(vm->vm_dsize);
+ ru->ru_isrss += pgtok(vm->vm_ssize);
+ rss = pgtok(vmspace_resident_count(vm));
+ if (ru->ru_maxrss < rss)
+ ru->ru_maxrss = rss;
mtx_unlock_spin_flags(&sched_lock, MTX_QUIET);
}
OpenPOWER on IntegriCloud