Date: Tue, 11 Jan 2011 17:26:59 +1100 (EST) From: Bruce Evans <brde@optusnet.com.au> To: Alexander Motin <mav@FreeBSD.org> Cc: acpi@FreeBSD.org, "Arno J. Klaassen" <arno@heho.snv.jussieu.fr> Subject: Re: Tyan S3992-E: hpet no longer working Message-ID: <20110111160606.H2006@besplex.bde.org> In-Reply-To: <4D2B8944.6030200@FreeBSD.org> References: <wpk4ij3u9f.fsf@heho.snv.jussieu.fr> <201101101500.45783.jhb@freebsd.org> <4D2B67E4.70907@FreeBSD.org> <201101101515.47127.jhb@freebsd.org> <wpwrmc4f9n.fsf@heho.snv.jussieu.fr> <4D2B8944.6030200@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 11 Jan 2011, Alexander Motin wrote: > Arno J. Klaassen wrote: >> Sure .. that said, the BIOS I use is the last official release for this >> board (Sept 2009) and not even a more recent beta-release is available. >> >> I would expect reporting a disabled device which cannot be enabled via >> de BIOS a bug deserving a newer release. >> >> Anyway, this bug isn't very harmful for me, but the non-hpet >> timecounters don't seem that fun either : >> >> # uptime >> 10:27PM up 2 days, 5:44 >> >> # sysctl kern.timecounter.hardware kern.timecounter.choice >> kern.timecounter.hardware: ACPI-safe >> kern.timecounter.choice: TSC(-100) i8254(0) ACPI-safe(850) dummy(-1000000) >> >> # vmstat -i | fgrep cpu: >> cpu0:timer 38599321 199 >> cpu6:timer 2151003 11 >> cpu1:timer 7121075 36 >> cpu3:timer 1808269 9 >> cpu5:timer 3832463 19 >> cpu2:timer 2399988 12 >> cpu7:timer 2013444 10 >> cpu4:timer 21630368 111 >> >> (default HZ ....) >> >> Maybe I should try downgrading the BIOS? > > So what here seems not funny to you? Lower timer interrupt rate is not a > bug but feature of 9-CURRENT. They (cpu*:timer) also aren't timecounters :-). Hmm, with hpet on FreeBSD cluster machines, there is now only hpet. How is statclock distributed with hpet? I never properly reviewed the latest "irqN"-printing changes in systat, and just noticed that they break printing of "irq" the usual case where the interrupt name starts with "irqN:" (then systat removes "irqN:" and never puts back "irq"). Not-so-quick fix: % Index: vmstat.c % =================================================================== % RCS file: /home/ncvs/src/usr.bin/systat/vmstat.c,v % retrieving revision 1.93 % diff -u -2 -r1.93 vmstat.c % --- vmstat.c 11 Dec 2010 08:32:16 -0000 1.93 % +++ vmstat.c 11 Jan 2011 06:20:01 -0000 % @@ -244,5 +244,10 @@ % *--cp1 = '\0'; % % - /* Convert "irqN: name" to "name irqN". */ % + /* % + * Convert "irqN: name" to "name irqN", "name N" or % + * "name". First reduce to "name"; then append % + * " irqN" if that fits, else " N" if that fits, % + * else drop all of "N". % + */ % if (strncmp(cp, "irq", 3) == 0) { % cp1 = cp + 3; % @@ -256,5 +261,8 @@ % cp2 = strdup(cp); % bcopy(cp1, cp, sz - (cp1 - cp) + 1); % - if (sz <= 10 + 4) { % + if (sz <= 10 + 1) { % + strcat(cp, " "); % + strcat(cp, cp2); % + } else if (sz <= 10 + 4) { % strcat(cp, " "); % strcat(cp, cp2 + 3); % @@ -266,5 +274,9 @@ % /* % * Convert "name irqN" to "name N" if the former is % - * longer than the field width. % + * longer than the field width. This handles some % + * cases where the original name did not start with % + * "irqN". We don't bother dropping partial "N"s in % + * this case. The "name" part may be too long in % + * either case; then we blindly truncate it. % */ % if ((cp1 = strstr(cp, "irq")) != NULL && This restores part of rev.1.90, updates the first comment to match the code changes in rev.1.90, and expands the last comment. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110111160606.H2006>