[issue23648] PEP 475 meta issue

2015-05-26 Thread STINNER Victor
Changes by STINNER Victor victor.stin...@gmail.com: -- status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648 ___ ___

[issue23648] PEP 475 meta issue

2015-05-25 Thread STINNER Victor
STINNER Victor added the comment: I updated the list of modified functions in the PEP 475. Except of the issue #23719, all other issues related to the PEP 475 have been fixed. It's time to close this meta issue. -- dependencies: -PEP 475: port test_eintr to Windows resolution: -

[issue23648] PEP 475 meta issue

2015-04-06 Thread Arfrever Frehtes Taifersar Arahesis
Arfrever Frehtes Taifersar Arahesis added the comment: New changeset 66e4ef9a7467 by Victor Stinner in branch 'default': Issue #23648: Complete the list of modified functions for the PEP 475 https://hg.python.org/cpython/rev/66e4ef9a7467 +* special cases: :func:`os.close` and

[issue23648] PEP 475 meta issue

2015-04-06 Thread STINNER Victor
STINNER Victor added the comment: But os.dup2 is not mentioned in PEP 475. Currently, What's in Python 3.5 is more complete than the PEP 475. Another example, the PEP doesn't mention signal.sigtimedwait(). The PEP should be updated when the implementation will be finished. --

[issue23648] PEP 475 meta issue

2015-04-02 Thread Roundup Robot
Roundup Robot added the comment: New changeset 66e4ef9a7467 by Victor Stinner in branch 'default': Issue #23648: Complete the list of modified functions for the PEP 475 https://hg.python.org/cpython/rev/66e4ef9a7467 -- ___ Python tracker

[issue23648] PEP 475 meta issue

2015-04-02 Thread STINNER Victor
STINNER Victor added the comment: New issue #23851: _posixsubprocess retries close() on EINTR. -- dependencies: +PEP 475: _posixsubprocess retries close() on EINTR ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648

[issue23648] PEP 475 meta issue

2015-04-02 Thread STINNER Victor
STINNER Victor added the comment: New issue #23853: handle EINTR in the ssl module. -- dependencies: +PEP 475: handle EINTR in the ssl module ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648

[issue23648] PEP 475 meta issue

2015-04-01 Thread STINNER Victor
STINNER Victor added the comment: New issue #23836: Enhance faulthandler to handle better reentrant calls. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648 ___

[issue23648] PEP 475 meta issue

2015-04-01 Thread STINNER Victor
Changes by STINNER Victor victor.stin...@gmail.com: -- dependencies: +PEP 475: Enhance faulthandler to handle better reentrant calls ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648 ___

[issue23648] PEP 475 meta issue

2015-03-30 Thread STINNER Victor
STINNER Victor added the comment: inject_signals.patch: Quick-and-dirty patch to send signals (SIGALRM) every milliseconds when running unit tests. On Linux, results are very good. Only multiprocessing fails because of the issue #23618 (socket connect) which has a pending patch. I hope that

[issue23648] PEP 475 meta issue

2015-03-26 Thread Roundup Robot
Roundup Robot added the comment: New changeset b7c0137cccbe by Victor Stinner in branch 'default': Issue #23648: Document the PEP 475 in the Porting to Python 3.5 section and https://hg.python.org/cpython/rev/b7c0137cccbe -- nosy: +python-dev ___

[issue23648] PEP 475 meta issue

2015-03-24 Thread STINNER Victor
STINNER Victor added the comment: Charles-François Natali added the comment: You have to mount the share with the eintr option. Oh, I didn't know this option. Unlikely, it looks like the option was deprecated something like 7 years ago, in Linux kernel 2.6.25. Related commits:

[issue23648] PEP 475 meta issue

2015-03-24 Thread Charles-François Natali
Charles-François Natali added the comment: fstat_not_eintr.py: run this script from a NFS share and unplug the network cable, wait, replug. Spoiler: fstat() hangs until the network is back, CTRL+c or setitimer() don't interrupt it. You have to mount the share with the eintr option.

[issue23648] PEP 475 meta issue

2015-03-23 Thread STINNER Victor
STINNER Victor added the comment: fstat_not_eintr.py: run this script from a NFS share and unplug the network cable, wait, replug. Spoiler: fstat() hangs until the network is back, CTRL+c or setitimer() don't interrupt it. By the way, it looks like the itimer is interrupted during fstat!

[issue23648] PEP 475 meta issue

2015-03-23 Thread STINNER Victor
STINNER Victor added the comment: Well, all the syscalls which can blocki can fail with EINTR, so all I:O related one. This is also what I expect, but how do you explain that I'm unable to see os.stat() failing with EINTR? I'm testing on ext4 file system. May it occur with other file

[issue23648] PEP 475 meta issue

2015-03-20 Thread STINNER Victor
STINNER Victor added the comment: pthread_* are false positive, they cannot fail with EINTR: Pthreads function return values Most pthreads functions return 0 on success, and an error number of failure. Note that the pthreads functions do not set errno. For each of the pthreads

[issue23648] PEP 475 meta issue

2015-03-20 Thread STINNER Victor
STINNER Victor added the comment: New issue #23719: port test_eintr to Windows. -- dependencies: +PEP 475: port test_eintr to Windows ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648 ___

[issue23648] PEP 475 meta issue

2015-03-20 Thread Charles-François Natali
Charles-François Natali added the comment: Well, all the syscalls which can blocki can fail with EINTR, so all I:O related one. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648 ___

[issue23648] PEP 475 meta issue

2015-03-19 Thread STINNER Victor
STINNER Victor added the comment: unittest_setitimer.patch: hack unittest.TestCase.run() to inject signals every 1 ms, send the first signal in 100 ms. It should help to detect functions which doesn't retry on EINTR. -- keywords: +patch Added file:

[issue23648] PEP 475 meta issue

2015-03-19 Thread STINNER Victor
STINNER Victor added the comment: New issue #23715: handle EINTR in the signal module. -- dependencies: +PEP 475: handle EINTR in the signal module ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648

[issue23648] PEP 475 meta issue

2015-03-19 Thread STINNER Victor
STINNER Victor added the comment: More issues: - Issue #23707: os.urandom() doesn't handle EINTR correctly - Issue #23708: Add _Py_read() and _Py_write() functions - Issue #23709: Refactor ossaudiodev: use _Py_read and _Py_write with the Py_buffer -- dependencies: +PEP 475: Add

[issue23648] PEP 475 meta issue

2015-03-19 Thread STINNER Victor
STINNER Victor added the comment: signal.sigwaitinfo() raises InterruptedError if the wait was interrupted by a signal handler (this handler was for a signal other than one of those in set). IMO we should also retry sigwaitinfo() if it fails with EINTR. --

[issue23648] PEP 475 meta issue

2015-03-19 Thread STINNER Victor
STINNER Victor added the comment: I searched for EINTR in all manual pages of my Fedora 21. I found a long list of functions (filename of manual pages). But I didn't check each manual page. There are false positive. For example, stat is listed, but in fact EINTR is only mentionned in

[issue23648] PEP 475 meta issue

2015-03-18 Thread STINNER Victor
STINNER Victor added the comment: I found a way to get a list of functions which can fail with EINTR: search for TEMP_FAILURE_RETRY in the source code of the glibc. TEMP_FAILURE_RETRY: https://www.gnu.org/software/libc/manual/html_node/Interrupted-Primitives.html#Interrupted-Primitives

[issue23648] PEP 475 meta issue

2015-03-18 Thread STINNER Victor
STINNER Victor added the comment: stat manual page of SCO documentation says that stat() can fail with EINTR, but I don't see this error in latest Linux manual page. I tested manually, and I failed to see stat() failing with InterruptedError. http://uw714doc.sco.com/en/man/html.2/stat.2.html

[issue23648] PEP 475 meta issue

2015-03-18 Thread STINNER Victor
STINNER Victor added the comment: test_eintr.py: program to check if a Python function can fail with InterruptedError. Modify func() to test a function. (The program checks select.select(), currently it fails with InterruptedError.) -- Added file:

[issue23648] PEP 475 meta issue

2015-03-17 Thread STINNER Victor
STINNER Victor added the comment: In msg196555, Charles-François Natali wrote: From a cursory look, the main files affected would be: Modules/fcntlmodule.c Modules/ossaudiodev.c Modules/posixmodule.c Modules/selectmodule.c Modules/selectmodule.c Modules/signalmodule.c Modules/socketmodule.c

[issue23648] PEP 475 meta issue

2015-03-12 Thread STINNER Victor
Changes by STINNER Victor victor.stin...@gmail.com: -- dependencies: +PEP 475 - EINTR handling, PEP 475: handle EINTR in the select and selectors module, PEP 475: handle EINTR in the socket module, PEP 475: handle EINTR in the time module, retry sleep()

[issue23648] PEP 475 meta issue

2015-03-12 Thread STINNER Victor
New submission from STINNER Victor: I created this issue to group all issues related to the implementation of the PEP 475 Retry system calls failing with EINTR. https://www.python.org/dev/peps/pep-0475/ - Issue #23646: the time module, retry sleep() - Issue #23618: the socket module - Issue

[issue23648] PEP 475 meta issue

2015-03-12 Thread STINNER Victor
Changes by STINNER Victor victor.stin...@gmail.com: -- nosy: +neologix ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue23648 ___ ___