Message118767
When a machine has a newer glibc and an old kernel, accept4 can fail and then Python accept() is unusable. For example:
Traceback (most recent call last):
File "/home/pybot/buildarea-sid/3.x.klose-debian-sparc/build/Lib/threading.py", line 525, in _bootstrap_inner
self.run()
File "/home/pybot/buildarea-sid/3.x.klose-debian-sparc/build/Lib/test/test_asynchat.py", line 37, in run
conn, client = self.sock.accept()
File "/home/pybot/buildarea-sid/3.x.klose-debian-sparc/build/Lib/socket.py", line 132, in accept
fd, addr = self._accept()
socket.error: [Errno 90] Function not implemented
(from http://www.python.org/dev/buildbot/builders/sparc%20Debian%203.x/builds/147/steps/test/logs/stdio )
Improving our configure check wouldn't do a lot of good, since people can reuse Python binaries with different kernels. Perhaps we have to use some kind of runtime fallback.
(Strangely, errno 90 is EMSGSIZE here, and ENOSYS is 38) |
|
Date |
User |
Action |
Args |
2010-10-15 13:23:24 | pitrou | set | recipients:
+ pitrou, doko, lekma, nvetoshkin |
2010-10-15 13:23:24 | pitrou | set | messageid: <1287149004.76.0.643231504051.issue10115@psf.upfronthosting.co.za> |
2010-10-15 13:23:22 | pitrou | link | issue10115 messages |
2010-10-15 13:23:21 | pitrou | create | |
|