Subject: UK Vote on SC22 N2678, PDAM Approval Ballot for PDAM7 to IS



9945-1

The UK votes NO for PDAM-7 to 9945-1 for the following reasons:

@ 0 o 1
1  Sect 2.7.2 OBJECTION.  page 6, line 100-107:
Problem: (namespace pollution <sys/mman.h>) This is namespace
pollution. See the position paper from the UK on this issue : WG15
N730: Reserved identifiers in POSIX standards.
There are sufficient reserved prefixes for <sys/mman.h> that can be
used without the need to reserve any addtional prefixes.  In
particular we believe that mem_ and MEM_ will clash with existing
applications.
The new functionality in this proposed amendment should either use
existing reserved prefixes (shm_ , MAP_ , MCL_ , MS_ or PROT_) or
posix_ or POSIX_ as per the latest draft of 1003.1a. 

Action:
This objection can be resolved by deleting this section on lines
97-107. 

@ 0 o 2
2 Sect 2.7.3 OBJECTION. page 7, line 130:
Problem: ( namespace pollution )
The addition of the three functins typed_mem_open(), mem_offset() and
typed_mem_get_info() is namespace pollution.
Action:

Either use an existing reserved prefix for function names
or 
use the prefix posix_ as in
posix_typed_mem_open(), posix_mem_offset(), posix_typed_mem_get_info()

@ 0 o 3
3 Sect 2.9.3 Objection page 9, line 183-188:
Problem: ( threads requirements)
As well as requiring _POSIX_THREADS , support of these options should
also require _POSIX_THREAD_SAFE_FUNCTIONS.  The rationale is that a
POSIX conforming system is expected also to support the Thread Safe
Functions option, so lets mandate this.
Action:
Change the occurrences of 
"then the symbol {_POSIX_THREADS}" 
to
"then the symbols {_POSIX_THREADS} and {_POSIX_THREAD_SAFE_FUNCTIONS}"

@ 0 o 4
4 Sect 11.5.1.2 Objection page 26, line 86:
Problem: ( threads header requirements)
IEEE PASC Interpretation reference 1003.1c #46  identifies a problem
with the existing POSIX.1-1996 specification with respect to the
definition of the <pthread.h> header.
Many functions include only <pthread.h> in their synopses, however it
is clear that there are other headers required for a program to
compile as per the synopses given. This problem occurs also in this
specification and the same error should not be made twice.
The header <sys/types.h> should be included before <pthread.h> to
define the types pthread_attr_t, pthread_cond_t, pthread_condattr_t,
pthread_key_t, pthread_mutex_t, pthread_mutexattr_t, pthread_once_t,
pthread_rwlock_t, pthread_rwlockattr_t, and pthread_t and the new
types introduced in this amendment.  This ties in with section 2.5 of
POSIX 1003.1-1996.
This problem also occurs in the following places:
Section 11.5.2.1 line 163
Section 11.5.3.1 line 234
Section 11.6.1.1 line 343
Section 11.6.2.1 line 420
Section 11.6.3.1 line 487
Section 11.6.4.1 line 606
Section 11.6.5.1 line 708
Section 11.7.1.1 line 832
Section 11.7.2.1 line 899
Section 11.7.3.1 line 939

Action:
Change the synopsis to be 
#include <sys/types.h>
#include <pthread.h>

@ 0 o 5
5 Sect 11.6.3.2 Objection page 38, line 530:
Problem: (Timeouts option)
There is no "Timeouts" option.
Action:
Change 
"the Timeouts options"
to
"the Timers options"

@ 0 o 6
6 Sect 11.6.4.2 Objection page 40, line 639:
Problem: (Timeouts option 2)
There is no "Timeouts" option.
Action:
Change 
"the Timeouts options"
to
"the Timers options"

@ 0 o 6
6 Sect 12.2 Objection page 54-69, line 26-:
Problem: (namespace pollution)
The following new constants, structures and functions are all
namespace pollution:
The constants TYPED_MEM_ALLOCATE, TYPED_MEM_ALLOCATE_CONTIG,
TYPED_MEM_MAP_ALLOCATABLE,  
The structure typed_mem_info, with the member tmi_length, 
The functions typed_mem_open(), mem_offset(), typed_mem_get_info()
Action:
Either use an existing reserved prefix for function names
or 
use the prefix posix_ or POSIX_

@ 0 c 7
7 Sect B.12.4.1 Editorial comment page 62, line 324:

Problem: (posix.1b conforming)
There's no such things as a POSIX.1b conforming realtime system.
POSIX.1b is not a standalone document as this phrase might suggest.
There are POSIX.1 conforming systems and there are a set of options
within a POSIX.1 conforming system.
Action:
This objection can be resolved either by
Removing "POSIX.1b conforming" to leave "Realtime systems are
expected..."
Or to enumerate the POSIX.1 options required as in,
"POSIX.1 conforming systems supporting the XXXX option, the YYYY
option...
etc"

____________________ end of UK comments; beginning of USA comments _____