Date: Sun, 05 Jan 2020 04:53:41 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 243103] fork fails to clone open message queue handles into the child process (in violation of POSIX std.) Message-ID: <bug-243103-227@https.bugs.freebsd.org/bugzilla/>
index | next in thread | raw e-mail
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243103 Bug ID: 243103 Summary: fork fails to clone open message queue handles into the child process (in violation of POSIX std.) Product: Base System Version: 12.0-RELEASE Hardware: Any OS: Any Status: New Severity: Affects Many People Priority: --- Component: kern Assignee: bugs@FreeBSD.org Reporter: rfg-freebsd@tristatelogic.com POSIX POSIX 1003.1b-1993 in Section Section 3.1.1.2(14) requires that the fork() system call must clone all currently open message queue descriptors into the child process. Currently, the FreeBSD kernel is evidently failing to do this, as is illustrated by the following simple test program: https://pastebin.com/raw/Dya0XEhf (Note that the test program works fine and produces the desired and expected results when compiled and run under Ubuntu 18.04 LTS.) I am NOT the first person to have noticed this very serious and fundamental kernel non-conformance with the POSIX standard: https://stackoverflow.com/questions/19500194/freebsd-doesnt-preserve-posix-message-queue-descriptions-over-forks https://forums.freebsd.org/threads/fork-does-not-properly-copy-posix-message-queue-descriptions.42678/ P.S. If it were possible to do so, I would mark this as "URGENT". For me, this particular non-feature in the kernel is likely to cause great difficulties. -- You are receiving this mail because: You are the assignee for the bug.help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-243103-227>
