Minutes of the 5 December 2012 Teleconference Austin-587 Page 1 of 1 Submitted by Andrew Josey, The Open Group. 6 December, 2012 Attendees Don Cragun, PASC OR Andrew Josey, The Open Group (partial) Geoff Clare, The Open Group Eric Blake, Red Hat Joerg Schilling, Fraunhofer Society Mark Brown, IBM, TOG OR Jim Pugsley, Oracle Apologies Nick Stoughton, USENIX, ISO/IEC OR * General News Andrew reported that the TC1 recirculation ballot is due to close on December 8 at 23:59 New York. The mandatory editorial coordination ballot has been received and is positive. The ballot remains so far at a 95% response rate and 100% approval as before. * Old Business +Bug 0000561: NUL-termination of sun_path in Unix sockets OPEN http://austingroupbugs.net/view.php?id=561 Eric has an action to update the proposal. +Bug 0000573: Please add '+' to the portable filename character set OPEN http://austingroupbugs.net/view.php?id=573 Joerg has an action to prepare a proposed change. +Bug 0000592: consistent use of struct timespec OPEN http://austingroupbugs.net/view.php?id=592 This item needs further investigation of existing implementations. Mark reported that AIX does not have a problem with this. Jim notes he is still looking at this. +Bug 0000598: OH shading and new interfaces OPEN http://austingroupbugs.net/view.php?id=598 Eric has an action to propose a new solution with self-contained headers. Bug 0000576: No format specifiers for several types OPEN http://austingroupbugs.net/view.php?id=576 Bug 0000599: Reserved "no thread" value for pthread_t A/M Issue 8 Bug 0000517: EBNF support OPEN http://austingroupbugs.net/view.php?id=517 It was agreed that we need Joerg's input on this item and have left it open for now. Andrew took an action on the 12 September call to notify Joerg (completed after the meeting). * Current Business We picked up again at bug 628 Bug 0000628: subsequent execution of semaphore operations for a semop() of a thread suspended during semop() with sem_op == 0 OPEN http://austingroupbugs.net/view.php?id=628 The status of this bug was changed back to OPEN Don reported that he has been working on it but has not yet completed a proposed resolution. Bug 0000633: SIGEV_THREAD delivery renders many signal interfaces unsafe OPEN http://austingroupbugs.net/view.php?id=633 Mark and Jim took an action to report on the following aspects of AIX and Solaris behaviour for SIGEV_THREAD event notification (from timers, AIO, etc. - the answers might be different for each): 1. What is the signal mask in the thread that is created to handle the notification? (Is it just inherited from the calling thread?) 2. When an event notification is triggered and a previous handler is still executing, do they execute a new instance of the same handler concurrently, or suppress the new notification (or something else)? Action on Andrew to send email to his technical contacts at Apple and HP asking them the same question. Action completed (email sent) Bug 0000632: Side effects of pclose on cancellation are not specified OPEN http://austingroupbugs.net/view.php?id=632 After a lengthy discussion we came to the conclusion that pclose() and cancellation do not mix. We considered leaving the normative text as-is and just adding application usage warning that applications should not cancel a thread that is executing pclose(), but we felt that was not strong enough. The direction we plan to take is for the normative text to state that if a thread is cancelled while it is executing pclose(), the behaviour is undefined. This is being left open for feedback. Bug 0000630: Sentence is missing "for finite x" REOPENED http://austingroupbugs.net/view.php?id=630 Bugnote 0001426 has the initial set of proposed changes from the meeting. This was reopened after the meeting as there are still additional problems to address. Revisit at the next meeting. Bug 0000631: Thread safety of the *_unlocked() functions Accepted as Marked http://austingroupbugs.net/view.php?id=631 This is tagged for TC2-2008. An interpretation is required. Interpretation response The standard states different requirements concerning the thread safety of the getc_unlocked(), gethar_unlocked(), putc_unlocked(), and putchar_unlocked() functions in different places, and conforming implementations must conform to this. However, concerns have been raised about this which are being referred to the sponsor. Rationale: The thread safety of these functions needs to be specified clearly. Notes to the Editor (not part of this interpretation): Make the changes suggested in Note: 0001422. Bug 0000634: add fflush built-in function to awk Accepted as Marked. http://austingroupbugs.net/view.php?id=634 This item is tagged for Issue 8. After page 2445 line 77748 add to the "Input/Output and General Functions" section: fflush([expression]) Write any unwritten data to the file or piped stream opened by a print or printf statement with the same string-valued expression. If no argument, or if expression evaluates to the null string, then write all such data for all such open files and piped streams, and standard output. If fflush is successful, it shall return 0; otherwise, it shall return non-zero. At page 2447 line 77841 add "fflush" after "close" in the description of the BUILTIN_FUNC_NAME token in the Grammar. At page 2454 line 78177 add "fflush" in the appropriate alphabetical position to the list of functions that BUILTIN_FUNC_NAME represents in "Lexical Conventions" #11. Bug 0000625: Allowing alarm-based sleep() implementation contradicts requirement of thread-safety OPEN http://austingroupbugs.net/view.php?id=625 This was discussed and some additional issues were noted: If an application is not linked with -l pthread but the implementation might create additional threads "under the covers" of its own accord, then the implementation should not use SIGALRM in sleep(). If an application is not linked with -l pthread but later uses dlopen() to load either libpthread or a library that has libpthread as a dependency, and then creates an additional thread, this could result in the SIGALRM-based sleep() being used while the process is multithreaded. This is a more general problem that affects more things than sleep(), and the standard should say the behaviour is undefined if an application does this. The consensus was that we should eliminate all of the problems associated with SIGALRM-based sleep by disallowing it in Issue 8, and a Future Directions note should be added in TC2 to warn about this. However, something still needs to be done in TC2 to resolve the problem with Issue 7 without requiring implementations to change. Next Steps ---------- The next call is on December 12 This call will be for the regular 90 minutes. http://austingroupbugs.net See the calendar for the list of dialup numbers. An IRC channel will be available for the meeting irc://irc.freenode.net/austingroupbugs