| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
Notes:
svn path=/head/; revision=566270
|
|
|
|
| |
Notes:
svn path=/head/; revision=558913
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Worked out over BPO-40422 and BPO-40423, this is the culmination of months
of work to coordinate with Linux and get close_range(2) added to FreeBSD,
then the usage accepted into CPython. It has landed for Python 3.10 and here
I've backported it locally to all the supported Python 3 versions we have.
Note that this does include and supercede our previous closefrom(2) patches.
There was a lot of intersection between the work done, so this patch against
the ports tree does remove those patches from each of the ports in favor of
this patch. All the patches involved have been accepted and merged upstream.
This patch will bring a performance boost in some more situations on 12.2
and 13.0, as close_range exists there.
There is one additional patch sitting in an upstream PR that shuffles the
_Py_closerange implementation into a different file -- this is not important
for the backport, and the absence of that patch here will not realistically
cause any issues.
PR: 250322
Approved by: lwhsu (python)
Notes:
svn path=/head/; revision=552351
|
|
|
|
| |
Notes:
svn path=/head/; revision=550837
|
|
|
|
|
|
|
| |
MFH: 2020Q3
Notes:
svn path=/head/; revision=543245
|
|
|
|
|
|
|
|
|
| |
https://docs.python.org/release/3.8.4/whatsnew/changelog.html#changelog
MFH: 2020Q3
Notes:
svn path=/head/; revision=542175
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Chase the devel/libffi update
Bump portrevision of all dependent ports to chace shard library version bump
in libffi.
Update LIB_DEPENDS lines where needed to not require a specific version of
libffi.so.
PR: 247028 (for tracking)
Notes:
svn path=/head/; revision=541232
|
|
|
|
|
|
|
| |
With hat: portmgr
Notes:
svn path=/head/; revision=536776
|
|
|
|
|
|
|
|
| |
PR: 246618
With hat: portmgr
Notes:
svn path=/head/; revision=536770
|
|
|
|
|
|
|
|
|
|
| |
(include security fix)
MFH: 2020Q2
Security: CVE-2019-18348, CVE-2020-8492
Notes:
svn path=/head/; revision=535463
|
|
|
|
|
|
|
| |
Changes: https://docs.python.org/release/3.8.2/whatsnew/changelog.html
Notes:
svn path=/head/; revision=527596
|
|
|
|
| |
Notes:
svn path=/head/; revision=520529
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A single close(fd) syscall is cheap, but when MAXFDS (maximum file
descriptor number) is high, the loop calling close(fd) on each file
descriptor can take several milliseconds.
The default value of subprocess.Popen "close_fds" parameter changed to True
in Python 3. Compared to Python 2, close_fds=True can make Popen 10x
slower: see bpo-37790 [1]
The present workaround on FreeBSD to improve performance is to load and
mount the fdescfs kernel module, but this is not enabled by default.
This change adds minimum viable (and upstreamable) closefrom(2) syscall
support to Python's subprocess and posix modules, improving performance
significantly for loads that involve working with many processes, such as
diffoscope, ansible, and many others.
For additional optimizations, upstream recently (3.8) landed posix_spawn(2)
support [3] and has stated that they will adopt close_range(2) after Linux
merges it [4]. Linux/FreeBSD developers are already collaborating on
ensuring compatible implementations, with FreeBSD's implementation pending
in D21627. [5]
Thank you emaste, cem, kevans for providing analysis, input,
clarifications, comms/upstream support and patches.
[1] https://bugs.python.org/issue37790
[2] https://bugs.python.org/issue38061
[3] https://bugs.python.org/issue35537
[4] https://lwn.net/Articles/789023/
[5] https://reviews.freebsd.org/D21627
Additional References:
https://bugs.python.org/issue8052
https://bugs.python.org/issue11284
https://bugs.python.org/issue13788
https://bugs.python.org/issue1663329
https://www.python.org/dev/peps/pep-0446/
PR: 242274, 221700
Submitted by: kevans (emaste, cem)
Approved by: koobs (python (maintainer), santa)
Notes:
svn path=/head/; revision=518640
|
|
|
|
| |
Notes:
svn path=/head/; revision=516854
|
|
PR: 241416
Submitted by: wen@(myself)
Reviewed by: koobs@, amdmi3@
Notes:
svn path=/head/; revision=516377
|