Date: Tue, 9 Jun 2009 15:50:33 +0000 (UTC) From: Attilio Rao <attilio@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-6@freebsd.org Subject: svn commit: r193839 - stable/6/sys/kern Message-ID: <200906091550.n59FoXAv076383@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: attilio Date: Tue Jun 9 15:50:33 2009 New Revision: 193839 URL: http://svn.freebsd.org/changeset/base/193839 Log: MFC r156484: Add slop to "backwards" cpu accounting messages, 3 usec or 1% whichever triggers. That will improve the diagnostic with 'time went backwards' messages. Sponsored by: Sandvine Incorporated Modified: stable/6/sys/kern/kern_resource.c Modified: stable/6/sys/kern/kern_resource.c ============================================================================== --- stable/6/sys/kern/kern_resource.c Tue Jun 9 15:20:36 2009 (r193838) +++ stable/6/sys/kern/kern_resource.c Tue Jun 9 15:50:33 2009 (r193839) @@ -773,7 +773,11 @@ calcru1(p, ruxp, up, sp) bintime2timeval(&ruxp->rux_runtime, &tv); tu = (u_int64_t)tv.tv_sec * 1000000 + tv.tv_usec; ptu = ruxp->rux_uu + ruxp->rux_su + ruxp->rux_iu; - if (tu < ptu) { + if (tu + 3 > ptu) { + /* Numeric slop for low counts */ + } else if (101 * tu > 100 * ptu) { + /* 1% slop for large counts */ + } else { printf( "calcru: runtime went backwards from %ju usec to %ju usec for pid %d (%s)\n", (uintmax_t)ptu, (uintmax_t)tu, p->p_pid, p->p_comm);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906091550.n59FoXAv076383>