sparc: Avoid using GCC builtins for byte-swapping and endian encoding.
gcc on most netbsd architectures (mostly excluding sparc and vax) can
generate fast MD byte-swapping code. On sparc it generates a function
call, which is very slow. We have existing inline macros for byte
swapping, so use those instead.
bswap on sparc with gcc is still non-ideal, so also reactivate the
portable endian encoding functions we apparently haven't been using
since the gcc2 days, rather than using bswap for that.
These changes improve the speed of disk encryption on ultrasparc ii
by almost 40% (the endian.h change being more significant in making
that number go high).
clang does the right thing on sparc (or at least introduces different
bottlenecks...), so avoid this there.
Thanks joerg for analysis of the problem, uwe for reviewing the patch.
[3 lines not shown]
(wip/libvirt11) import libvirt-11.9.0
candidate for upgrading (sysutils/libvirt) or (wip/libvirt)
libvirt is:
+ A toolkit to interact with the virtualization capabilities of recent
versions of operating systems, see our project goals for details.
+ A long term stable C API
+ A set of bindings for common languages
+ A CIM provider for the DMTF virtualization schema
+ A QMF agent for the AMQP/QPid messaging system
libvirt supports:
+ The KVM/QEMU Linux hypervisor
+ The Xen hypervisor
+ The LXC Linux container system
+ The OpenVZ Linux container system
+ The User Mode Linux paravirtualized kernel
+ The VirtualBox hypervisor
+ The VMware ESX and GSX hypervisors
[9 lines not shown]
piixpm(4) has iic(4) behavior and will respond to drivers trying to
see if indirect match and attach works.
However, it had an aggressive panic in its piixpm_i2c_exec() function
if there existed a command but not any data. Turn this into a
return(EINVAL) sort of thing. Without this, just modloading aht20temp
will panic a NetBSD/amd64 Virtualbox VM.
It is very common for I2C devices, especially sensor devices, to do a
READ (with or without STOP) with just a command sent, wait a while and
then do a WRITE or more READ without a command and with a data buffer.
Often the device has to have this pause in order to perform some
action.
I don't have the datasheet on the piixpm(4) chip available to me, and
it is possible that it can handle a command without data. The
interrupt function implies as much, but for now, just EINVAL the
[5 lines not shown]
Sprinkle ATC hits in a few more locations:
* pmap_pv_enter(), when page is already marked as CI: This one is required
for the same reason as the previous change was required.
* pmap_enter(): Also need an ATC hit in the case of a non-managed physical
address (demand-page-in of device mapping?)
* pmap_kenter_pa(): Add an ATC hit here after storing the PTE, but this is
really just over-caution, I think; we're not dealing with VA regsions
that would have been subject to a demand-page-in, so there should not
be any negative entries to worry about. Possible future optimization.
* pmap_zero_page(), pmap_copy_page(): Same situation as pmap_kenter_pa().
These addresses are even more tightly controlled, so this is probably
the first "probably uncessary ATC hit" that should be removed once this
implementation is shown to be stable across a variety of machines.
Add a comment in pmap_enter() for the case where an old mapping must be
[3 lines not shown]
py-uv py-uv-build: updated to 0.9.13
0.9.13
Bug fixes
Revert "Allow --with-requirements to load extensionless inline-metadata scripts" to fix reading of requirements files from streams
Validate URL wheel tags against Requires-Python and required environments
Documentation
Drop unpublished crates from the uv crates.io README
Fix the links to uv in crates.io member READMEs
0.9.12
Enhancements
Allow --with-requirements to load extensionless inline-metadata scripts
[40 lines not shown]
Do the same for the HP MMU. Not sure it's actually necessary in that case,
but there's basically zero documentation for it available, so we err on the
side of caution.
The Motorola MMUs implement a negative-cache in the ATC (see 68030UM
Figure 9-8. Address Translation General Flowchart, ATC hit, B==1 case,
as well as 68040UM Figure 3-21. ATC Entry and Tag Fields, R bit and the
associated descriptive text).
As such, we need to make sure to invalidate the ATC entry even for
new mappings where previously one did not exist, because, in the
case of a demand-page-in, there will almost certainly be a negative
ATC entry lurking about.
Many thanks to isaki@ for his analysis of the issue.
Pull up following revision(s) (requested by nia in ticket #1200):
sys/crypto/chacha/chacha_ref.c: revision 1.2
chacha: Tell the compiler to inline rol32.
Apparently gcc doesn't do this automatically, and it's noticably
faster on sparc64 (several seconds less to encrypt 128mb of data).
Pull up following revision(s) (requested by nia in ticket #107):
sys/crypto/chacha/chacha_ref.c: revision 1.2
chacha: Tell the compiler to inline rol32.
Apparently gcc doesn't do this automatically, and it's noticably
faster on sparc64 (several seconds less to encrypt 128mb of data).
aarch64: Use the ABI-defined value for R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC.
Kernel source code does not use this constant, so this change should
not affect its runtime behavior. Userland toolchains use the
ABI-defined value for this relocation, via their own definitions.
Remove a duplicate definition for R_AARCH64_TLSLD_ADD_DTPREL_HI12.
py-construct-classes: updated to 0.2.2
0.2.2 - 2025-08-26
Removed
- Drop support for Pythons 3.9 and older. This was broken in 0.2 and improperly marked
by the package metadata.
0.2.1 - 2025-08-25
Fixed
- Fix exception when creating a subclass of a subclass of :code:`Struct`.
0.2.0 - 2025-08-25
Added
[9 lines not shown]
py-asyncpg: updated to 0.31.0
0.31.0
Enable Python 3.14 with experimental subinterpreter/freethreading
support.
Improvements
Add Python 3.14 support, experimental subinterpreter/freethreading support
Avoid performing type introspection on known types
Make prepare() not use named statements by default when cache is disabled
Implement connection service file functionality
Fixes
Fix multi port connection string issue
Avoid leaking connections if _can_use_connection fails
[3 lines not shown]
gpr2-tools: improve buildlink3.mk
* Move GPR_PROJECT_PATH var definition to ALL_ENV from each separate
*_ENV
* Move the addition of the library search path from LDFLAGS to the
gprbuild parameters
gprbuild: improve buildlink3.mk
* Move GPR_PROJECT_PATH var definition to ALL_ENV from each separate
*_ENV
* Move the addition of the library search path from LDFLAGS to the
gprbuild parameters