[opensuse-factory] Looking for person responsible for "waitid(2)" in the Linux kernel
Hi, like most platforms, Linux unfortunately does not correctly implement waitid(2). It seems that before July 8, Solaris and UnixWare have been the only systems where waitid() was implemented correctly. Then I contacted the responsible person for FreeBSD and got a fix within 20 hours. Does someone know whom to contact to fix the Linux kernel? Note: waitid() must return all 32 bits from the exit(2) code, but Linux masks the result and only delivers the low 8 bits. Jörg -- EMail:joerg@schily.net (home) Jörg Schilling D-13353 Berlin joerg.schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.org/private/ http://sourceforge.net/projects/schilytools/files/' -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Tuesday 2015-07-28 12:22, Joerg Schilling wrote:
like most platforms, Linux unfortunately does not correctly implement waitid(2).
It seems that before July 8, Solaris and UnixWare have been the only systems where waitid() was implemented correctly. Then I contacted the responsible person for FreeBSD and got a fix within 20 hours.
Does someone know whom to contact to fix the Linux kernel?
Given I received no replies to https://lkml.org/lkml/2015/7/9/219 , I guess any patch is in order, if only to spawn further responses. -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Jan Engelhardt
On Tuesday 2015-07-28 12:22, Joerg Schilling wrote:
like most platforms, Linux unfortunately does not correctly implement waitid(2).
It seems that before July 8, Solaris and UnixWare have been the only systems where waitid() was implemented correctly. Then I contacted the responsible person for FreeBSD and got a fix within 20 hours.
Does someone know whom to contact to fix the Linux kernel?
Given I received no replies to https://lkml.org/lkml/2015/7/9/219 , I guess any patch is in order, if only to spawn further responses.
When we identified the wording bug in the POSIX standard in 2012, Eric Blake from RedHat told us that he asked people from LKML. I am not sure whether this did result in any action. Let me give the hint that the wording was OK in SUSv1 (UNIX-95) but was made incorrect with UNIX-98 (SUSv2). More background: UNOS (the first UNIX clone) had a syscall with a similar interface in 1980 already (cwait()) and the waitid() call was added in May 1989 for SVr4. It seems that until now, nobody used waitid(). In June 2015, I modified the Bourne Shell sources to use waitid() instead of waitpid() and added support for the waitid() interface via new ${.sh.*} variables, so the shell now allows to realiably report the exit reason, exit code and kill/stop signals. In case this is not yet done in Linux, the full exit code is also available in the siginfo_t parameter to signal handlers for SIGCHLD. 35 years after having the full exit code on UNOS and 26 years after the same was possible with UNIX, we should finally be able to use the new interface, but this requires more than two platforms to support the feature. Jörg -- EMail:joerg@schily.net (home) Jörg Schilling D-13353 Berlin joerg.schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.org/private/ http://sourceforge.net/projects/schilytools/files/' -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Joerg Schilling writes:
When we identified the wording bug in the POSIX standard in 2012, Eric Blake from RedHat told us that he asked people from LKML. I am not sure whether this did result in any action.
His most recent communication on that subject on the Cygwin mailing list seems to indicate that it did not: http://permalink.gmane.org/gmane.os.cygwin/153934 Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Samples for the Waldorf Blofeld: http://Synth.Stromeko.net/Downloads.html#BlofeldSamplesExtra -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Achim Gratz
Joerg Schilling writes:
When we identified the wording bug in the POSIX standard in 2012, Eric Blake from RedHat told us that he asked people from LKML. I am not sure whether this did result in any action.
His most recent communication on that subject on the Cygwin mailing list seems to indicate that it did not:
Thank you for this pointer. Eric seems not to be fully correct in his explanation. waitid() is a SVr4 invention from 1989 and POSIX just takes existing interfaces. The interface as present in SVr4 or Solaris is the reference and I would be astonished if Cygwin intends to re-implement bugs from Linux. For those who are interested, I added the cwait() man page from UNOX (1980) to the bug report: http://austingroupbugs.net/view.php?id=947 So the ability to access 32 bits from exit() is 35 years old. Jörg -- EMail:joerg@schily.net (home) Jörg Schilling D-13353 Berlin joerg.schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/ URL: http://cdrecord.org/private/ http://sourceforge.net/projects/schilytools/files/' -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
participants (3)
-
Achim Gratz
-
Jan Engelhardt
-
Joerg Schilling