Subject: misc/23190: sysctl(3) manpage has wrong data type for KERN_CP_TIME
To: None <gnats-bugs@gnats.NetBSD.org>
From: None <azz@us-lot.org>
List: netbsd-bugs
Date: 10/19/2003 01:46:40
>Number: 23190
>Category: misc
>Synopsis: sysctl(3) manpage has wrong data type for KERN_CP_TIME
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: misc-bug-people
>State: open
>Class: doc-bug
>Submitter-Id: net
>Arrival-Date: Sun Oct 19 01:47:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: Adam Sampson
>Release: 1.6
>Organization:
>Environment:
NetBSD mcnaught 1.6 NetBSD 1.6 (GENERIC) #0: Sun Sep 8 19:43:40 UTC 2002 autobuild@tgm.daemon.org:/autobuild/i386/OBJ/autobuild/src/sys/arch/i386/compile/GENERIC i386
>Description:
I'm porting libstatgrab to NetBSD at the moment, and I'm writing some code that uses sysctl() to read the CPU times vector. The sysctl(3) manual page says that KERN_CP_TIME's return data type is an array of CPUSTATES longs, but this won't work; it's actually an array of CPUSTATES u_int16_ts (as looking at the sysctl(8) source confirmed). There's also a couple of obvious typos in the description.
>How-To-Repeat:
"man 3 sysctl", search for "CP_TIME".
>Fix:
Change the "Type" of KERN_CP_TIME in the CTL_KERN table to "u_int64_t[]", and the description below to something like:
"An array of CPUSTATES u_int16_t values is returned. This array contains the number of clock ticks spent in different CPU states."
>Release-Note:
>Audit-Trail:
>Unformatted: