Date: Tue, 25 Nov 2014 08:58:45 +0000 From: Mark R V Murray <mark@grondar.org> To: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= <des@des.no> Cc: arch@freebsd.org, Ian Lepore <ian@FreeBSD.org> Subject: Re: svn commit: r274739 - head/sys/mips/conf Message-ID: <D928DF64-2C5D-4D31-A7BE-62482A53A7EA@grondar.org> In-Reply-To: <8661e3wtk6.fsf@nine.des.no> References: <201411200552.sAK5qnXP063073@svn.freebsd.org> <20141120084832.GE24601@funkthat.com> <AE8F2D30-7F91-4C90-B79A-D99857D8AED8@grondar.org> <20141121092245.GI99957@funkthat.com> <1416582989.1147.250.camel@revolution.hippie.lan> <026FEB8A-CA8C-472F-A8E4-DA3D0AC44B34@grondar.org> <1416596266.1147.290.camel@revolution.hippie.lan> <F017033A-B761-4435-A7F8-264D2F4662A0@grondar.org> <1416598889.1147.297.camel@revolution.hippie.lan> <86egsvueqk.fsf@nine.des.no> <1416691274.1147.339.camel@revolution.hippie.lan> <398A380D-49AF-480C-8842-8835F81EF641@grondar.org> <1416806894.1147.362.camel@revolution.hippie.lan> <18B8A926-59C0-49B4-ADA3-A11688609852@grondar.org> <1416841268.1147.386.camel@revolution.hippie.lan> <CC6B67E1-55A2-4952-AB43-5F6C787F629B@grondar.org> <86wq6k9okk.fsf@nine.des.no> <F60907B5-433F-4800-82B4-5D882AF0B3BB@grondar.org> <8661e3wtk6.fsf@nine.des.no>
next in thread | previous in thread | raw e-mail | index | archive | help
> On 25 Nov 2014, at 08:52, Dag-Erling Sm=C3=B8rgrav <des@des.no> wrote: >=20 > Mark R V Murray <mark@grondar.org> writes: >> How two consecutive calls to get_cyclecount() can repeatedly return >> such massive numbers is an indication that something has gone badly >> wrong. >=20 > No, wait. I looked at the code. The most likely explanation is that = it > is falling through to this: >=20 > binuptime(&bt); > return ((uint64_t)bt.sec << 56 | bt.frac >> 8); >=20 > so the top 8 bits are seconds (meaning that get_cyclecount wraps = around > every 256 seconds) and the bottom 64 are the base 2 fractional part. = At > first glance, Ian's number seem to be identical from one run to the > next, but they're not - there seems to be a small amount of variation. > But I'm still very suspicious of at91_st0, which is constant, and > nexus0, at91_aic0 and at91_pmc0, which are constant *and* identical. Ian - could you please print the 2 get_cyclecount() return values as = well as the difference on that same hardware and at the same place as = you did you previous change? Thanks. M --=20 Mark R V Murray
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D928DF64-2C5D-4D31-A7BE-62482A53A7EA>