[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-21 Thread STINNER Victor
STINNER Victor added the comment: > No problem! I've noticed at least one other (relatively minor) issue in `os`, > so I may be submitting further bug reports. Please do. But I suggest to open new issues. > I haven't been keeping close track of 3.6/3.7's status, so I added them in >

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-21 Thread cptpcrd
cptpcrd added the comment: No problem! I've noticed at least one other (relatively minor) issue in `os`, so I may be submitting further bug reports. I haven't been keeping close track of 3.6/3.7's status, so I added them in without thinking it. Thanks for the reminder. --

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-21 Thread STINNER Victor
STINNER Victor added the comment: Thanks cptpcrd for the bug report, the fix and for the two manual backports ;-) Note: Python 3.6 and 3.7 no longer accept bugfixes. https://devguide.python.org/#status-of-python-branches -- versions: -Python 3.6, Python 3.7

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-21 Thread STINNER Victor
STINNER Victor added the comment: New changeset 6893523bed4ad701838715380659c245eec71d48 by cptpcrd in branch '3.9': bpo-42780: Fix set_inheritable() for O_PATH file descriptors on Linux (GH-24172) (GH-24278) https://github.com/python/cpython/commit/6893523bed4ad701838715380659c245eec71d48

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-21 Thread STINNER Victor
STINNER Victor added the comment: New changeset 844ec0ba6606b60a59b7da82c54c1e646424259c by cptpcrd in branch '3.8': bpo-42780: Fix set_inheritable() for O_PATH file descriptors on Linux (GH-24172) (GH-24277) https://github.com/python/cpython/commit/844ec0ba6606b60a59b7da82c54c1e646424259c

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-20 Thread cptpcrd
Change by cptpcrd : -- pull_requests: +23101 pull_request: https://github.com/python/cpython/pull/24278 ___ Python tracker ___ ___

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-20 Thread cptpcrd
Change by cptpcrd : -- pull_requests: +23100 pull_request: https://github.com/python/cpython/pull/24277 ___ Python tracker ___ ___

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-20 Thread STINNER Victor
STINNER Victor added the comment: Thanks cptpcrd for your bug report and your great fix! I like your tests ;-) -- resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-20 Thread miss-islington
Change by miss-islington : -- pull_requests: +23093 pull_request: https://github.com/python/cpython/pull/24270 ___ Python tracker ___

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-20 Thread miss-islington
Change by miss-islington : -- nosy: +miss-islington nosy_count: 3.0 -> 4.0 pull_requests: +23092 pull_request: https://github.com/python/cpython/pull/24269 ___ Python tracker

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-20 Thread STINNER Victor
STINNER Victor added the comment: New changeset 7dc71c425cf6aa6a4070a418dce5d95ca435c79f by cptpcrd in branch 'master': bpo-42780: Fix set_inheritable() for O_PATH file descriptors on Linux (GH-24172) https://github.com/python/cpython/commit/7dc71c425cf6aa6a4070a418dce5d95ca435c79f

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-08 Thread cptpcrd
Change by cptpcrd : -- pull_requests: +22999 stage: -> patch review pull_request: https://github.com/python/cpython/pull/24172 ___ Python tracker ___

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2021-01-05 Thread cptpcrd
cptpcrd added the comment: I've put together some tests (patch attached). Should I PR this to python/cpython? -- Added file: https://bugs.python.org/file49721/set-inheritable-test.patch ___ Python tracker

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2020-12-29 Thread cptpcrd
cptpcrd added the comment: > I like this approach! Should I put together unit tests to go with the patch? Maybe `test_os.FDInheritanceTests.test_set_inheritable_o_path()`? -- ___ Python tracker

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2020-12-29 Thread STINNER Victor
STINNER Victor added the comment: > 2. On Linux, fall back on fcntl() if ioctl(FIOCLEX) fails with EBADF. I like this approach! -- ___ Python tracker ___

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2020-12-29 Thread Benjamin Peterson
Benjamin Peterson added the comment: Doing two syscalls does not seem so bad. Linux may allow FIOCLEX on O_PATH in the future. -- nosy: +benjamin.peterson versions: +Python 3.6, Python 3.7 ___ Python tracker

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2020-12-29 Thread Alexey Izbyshev
Change by Alexey Izbyshev : -- components: +Library (Lib) nosy: +vstinner versions: -Python 3.6, Python 3.7 ___ Python tracker ___

[issue42780] os.set_inheritable() fails for O_PATH file descriptors on Linux

2020-12-29 Thread cptpcrd
New submission from cptpcrd : Note: I filed this bug report after seeing https://github.com/rust-lang/rust/pull/62425 and verifying that it was also reproducible on Python. Credit for discovering the underlying issue should go to Aleksa Sarai, and further discussion can be found there. #