sendmsg/recvmsg on Mac OS X

The buildbots are complaining about some of tests for the new socket.sendmsg/recvmsg added by issue #6560 for *nix platforms that provide CMSG_LEN. http://www.python.org/dev/buildbot/all/builders/AMD64%20Snow%20Leopard%202%2... Before I start trying to figure this out without a Mac to test on, are any of the devs that actually use Mac OS X seeing the failure in their local builds? Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia

Looks like kernel bugs: http://developer.apple.com/library/mac/#qa/qa1541/_index.html """ Yes. Mac OS X 10.5 fixes a number of kernel bugs related to descriptor passing [...] Avoid passing two or more descriptors back-to-back. """ We should probably add @requires_mac_ver(10, 5) for testFDPassSeparate and testFDPassSeparateMinSpace. As for InterruptedSendTimeoutTest and testInterruptedSendmsgTimeout, it also looks like a kernel bug: the syscall should fail with EINTR once the socket buffer is full. I guess one should skip those on OS-X.

In article <20110824184927.2697b0af@pitrou.net>, Antoine Pitrou <solipsis@pitrou.net> wrote:
But chances are the build is using the default 10.4 ABI. Adding MACOSX_DEPLOYMENT_TARGET=10.6 as an env variable to ./configure may fix it. There is an open issue to change configure to use better defaults for this. (I'm right in the middle of reconfiguring my development systems so I can't test it myself immediately but I'll report back shortly.) -- Ned Deily, nad@acm.org

But Snow Leopard, where these failures occur, is OS X 10.6.
*sighs* It still looks like a kernel/libc bug to me: AFAICT, both the code and the tests are correct. And apparently, there are still issues pertaining to FD passing on 10.5 (and maybe later, I couldn't find a public access to their bug tracker): http://lists.apple.com/archives/Darwin-dev/2008/Feb/msg00033.html Anyway, if someone with a recent OS X release could run test_socket, it would probably help. Follow ups to http://bugs.python.org/issue6560

In article <CAH_1eM30T-8g9UBdPRuMkSL_YiScLPuiFFz32Z4W0y1PcJj4pA@mail.gmail.com>, Charles-Francois Natali <cf.natali@gmail.com> wrote:
I was able to do a quick test on 10.7 Lion and the 8 test failures still occur regardless of deployment target. Sorry, I don't have time to further investigate. -- Ned Deily, nad@acm.org

Looks like kernel bugs: http://developer.apple.com/library/mac/#qa/qa1541/_index.html """ Yes. Mac OS X 10.5 fixes a number of kernel bugs related to descriptor passing [...] Avoid passing two or more descriptors back-to-back. """ We should probably add @requires_mac_ver(10, 5) for testFDPassSeparate and testFDPassSeparateMinSpace. As for InterruptedSendTimeoutTest and testInterruptedSendmsgTimeout, it also looks like a kernel bug: the syscall should fail with EINTR once the socket buffer is full. I guess one should skip those on OS-X.

In article <20110824184927.2697b0af@pitrou.net>, Antoine Pitrou <solipsis@pitrou.net> wrote:
But chances are the build is using the default 10.4 ABI. Adding MACOSX_DEPLOYMENT_TARGET=10.6 as an env variable to ./configure may fix it. There is an open issue to change configure to use better defaults for this. (I'm right in the middle of reconfiguring my development systems so I can't test it myself immediately but I'll report back shortly.) -- Ned Deily, nad@acm.org

But Snow Leopard, where these failures occur, is OS X 10.6.
*sighs* It still looks like a kernel/libc bug to me: AFAICT, both the code and the tests are correct. And apparently, there are still issues pertaining to FD passing on 10.5 (and maybe later, I couldn't find a public access to their bug tracker): http://lists.apple.com/archives/Darwin-dev/2008/Feb/msg00033.html Anyway, if someone with a recent OS X release could run test_socket, it would probably help. Follow ups to http://bugs.python.org/issue6560

In article <CAH_1eM30T-8g9UBdPRuMkSL_YiScLPuiFFz32Z4W0y1PcJj4pA@mail.gmail.com>, Charles-Francois Natali <cf.natali@gmail.com> wrote:
I was able to do a quick test on 10.7 Lion and the 8 test failures still occur regardless of deployment target. Sorry, I don't have time to further investigate. -- Ned Deily, nad@acm.org
participants (5)
-
Antoine Pitrou
-
Charles-François Natali
-
Charles-François Natali
-
Ned Deily
-
Nick Coghlan