Austin Group Defect Tracker

Aardvark Mark IV


Viewing Issue Simple Details Jump to Notes ] Issue History ] Print ]
ID Category Severity Type Date Submitted Last Update
0000339 [1003.1(2008)/Issue 7] System Interfaces Comment Enhancement Request 2010-10-24 20:47 2022-10-21 09:23
Reporter yaneurabeya View Status public  
Assigned To ajosey
Priority normal Resolution Accepted As Marked  
Status Applied  
Name Garrett Cooper
Organization Cisco Systems, Inc.
User Reference
Section sysconf
Page Number
Line Number
Interp Status ---
Final Accepted Text Note: 0005985
Summary 0000339: Add _SC_NPROCESSORS_CONF / _SC_NPROCESSORS_ONLN to sysconf(3) / unistd.h
Description These constants help determine how many processors are configured and online (respectively). According to an individual that ported this functionality to OpenBSD almost a year ago, it was already ported and functional to several operating systems [1]:

"Implemented by AIX/Tru64/Solaris/Linux/FreeBSD/NetBSD."

[1] http://www.mail-archive.com/tech@openbsd.org/msg01435.html [^]
Desired Action Add these respective constants to unistd.h as optional features where something similar to the following is stated:

_SC_NPROCESSORS_CONF - The number of processors configured.

_SC_NPROCESSORS_ONLN - The number of processors online (capable of running processes).

The OpenBSD tort seems ok in this case, and both cases could refer to scenarios where inter-machine clustering is occurring, to the extent that stating the wording like "configured in the system." or "running processes) in the system." would be extremely limiting as more systems are utilizing cross-machine resources for `pseudo-cloud' applications; plus, this would also be more flexible when dealing with virtual machines, as the processor itself isn't physical, and thus `in the system' could be misconstrued.
Tags issue8
Attached Files

- Relationships
related to 0001608Applied Issue 8 drafts Suggesting informative texts for bug-id339 

-  Notes
(0000591)
msbrown (manager)
2010-10-28 15:58

This issue is under consideration for the next version. We request that the reporter of this issue please add proposed, detailed text edits for the addition.

Reporter will be contacted via email as well by the Group Chair on the best way to do this.
(0005983)
alanc (reporter)
2022-09-28 19:04

According to our records, Solaris implemented these based on the spec in
"UNIX System V Release 4 ES/MP Multiprocessing Detailed Specifications --
Issue 2.", dated August 30, 1991.

Definitions of them also appear in the System V Interface Definition Fourth Edition.
(0005985)
geoffclare (manager)
2022-09-29 15:20

After D2.1 page 436 line 15169 section <unistd.h>, add:
_SC_NPROCESSORS_CONF
_SC_NPROCESSORS_ONLN

After D2.1 page 2058 line 66703 section sysconf(), add two rows to the table:
The maximum number of execution units that | _SC_NPROCESSORS_CONF
can be made available to run threads† |

The maximum number of execution units | _SC_NPROCESSORS_ONLN
currently available to run threads† |

After D2.1 page 2060 line 66792 section sysconf(), add (after the table):
† The nature of an execution unit and the precise conditions under which an execution unit is considered to be available, or can be made available, or how many threads it can execute in parallel, are implementation-defined.

On D2.1 page 2060 line 66800 section sysconf(), change:
The value shall not change during the lifetime of the calling process, [XSI]except ...
to:
The value returned for name arguments other than _SC_NPROCESSORS_ONLN shall not change during the lifetime of the calling process, [XSI]except ...


On D2.1 page 2791 line 92825 section getconf, change:
entries corresponding to _SC_CLK_TCK, _SC_GETGR_R_SIZE_MAX, and _SC_GETPW_R_SIZE_MAX
to:
entries corresponding to _SC_CLK_TCK, _SC_GETGR_R_SIZE_MAX, _SC_GETPW_R_SIZE_MAX, _SC_NPROCESSORS_CONF, and _SC_NPROCESSORS_ONLN


After page 2791 line 92838 section getconf, add a new bullet point:
The names NPROCESSORS_CONF and NPROCESSORS_ONLN. The values of these configuration variables shall be determined as if they were obtained by calling the function sysconf() with the argument _SC_NPROCESSORS_CONF or _SC_NPROCESSORS_ONLN, respectively.

- Issue History
Date Modified Username Field Change
2010-10-24 20:47 yaneurabeya New Issue
2010-10-24 20:47 yaneurabeya Status New => Under Review
2010-10-24 20:47 yaneurabeya Assigned To => ajosey
2010-10-24 20:47 yaneurabeya Name => Garrett Cooper
2010-10-24 20:47 yaneurabeya Organization => Cisco Systems, Inc.
2010-10-24 20:47 yaneurabeya Section => sysconf
2010-10-28 15:58 msbrown Interp Status => ---
2010-10-28 15:58 msbrown Note Added: 0000591
2015-04-23 23:17 emaste Issue Monitored: emaste
2022-09-28 19:04 alanc Note Added: 0005983
2022-09-29 15:20 geoffclare Note Added: 0005985
2022-09-29 15:21 geoffclare Final Accepted Text => Note: 0005985
2022-09-29 15:21 geoffclare Status Under Review => Resolved
2022-09-29 15:21 geoffclare Resolution Open => Accepted As Marked
2022-09-29 15:21 geoffclare Tag Attached: issue8
2022-10-20 15:42 geoffclare Relationship added related to 0001608
2022-10-21 09:23 geoffclare Status Resolved => Applied


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker