pmap_bootstrap1() has some macros to aid translation between virtual and
physical addresses. Move these into <m68k/pmap_68k.h> and put them into
two groups.
The first group (PMAP_BOOTSTRAP_RELOC_GLOB() and PMAP_BOOTSTRAP_RELOC_PA())
are for referencing global symbols and physical addresses from within the
context of pmap_bootstrap1() (or similar function) itself.
The second group (PMAP_BOOTSTRAP_VA_TO_PA() and PMAP_BOOTSTRAP_PA_TO_VA())
are for translating addresses that will be used in the context of the running
kernel once the MMU is enabled.
The former group is necessary because some platforms may call pmap_bootstrap1()
with the MMU *enabled* but running on foreign mappings whereby global
references work without relocation but access to physical addresses require
relocation (this is the case on mac68k systems that place the frame buffer
at physical address $0000.0000, in which case MacOS uses the MMU to simulate
the traditional MacOS memory map and we're running on those mappings when
the kernel starts).
[4 lines not shown]
Move the mac68k "check bootstrap allocations fit" code into a new function
called pmap_machine_check_bootstrap_allocations(), and call it from the
existing Hibler pmap pmap_bootstrap1() in the appropriate place.
Add a new hook for the new pmap_bootstrap1() enabled by defining
PMAP_MACHINE_CHECK_BOOTSTRAP_ALLOCATIONS in <machine/pmap.h>. When
enabled, that function will be called once the bulk of the bootstrap
allocations have been completed.
devel/libtirpc: ONLY_FOR and DESCR clarity police
- Change ONLY_FOR_PLATFORM to BROKEN_EXCEPT_ON_PLATFORM, because
there is no good reason that this program should fail on !Linux.
(It's merely because nobody wants to run it on other systems that
the portability problem isn't bothering anyone.)
- Explain the Linux-only situation in DESCR.
Don't bother recomputing physmem after all of the bootstrap allocations
are complete. It's now computed earlier and is intended to reflect the
actual amount of physical memory in the machine in any case.
py-cython: update to 3.2.2.
3.2.2 (2025-11-30)
==================
Features added
--------------
* The C-API declarations were updated to include the new ``PyDict_*Ref()`` functions.
(Github issue :issue:`7291`)
Bugs fixed
----------
* Iteration over literal sequences and strings in generators generated invalid C code since 3.2.0.
This was a regression due to the C array iteration optimisation in :issue:`6926`, which is now
disabled inside of generators.
(Github issue :issue:`7342`)
[19 lines not shown]
Another mac68k adaptation note / TODO: mac68k also needs to map the
last page of RAM VA==PA for doboot(), but this is not at a fixed
location like it is on hp300. Existing kernel PT allocation should
be sufficient to ensure there's a PTE availabe for this, but it would
be nice to provide a way for cpu_startup() to assert it.
Rename the "maxaddr" global to "last_page" to reflect what it actually is.
(There is also a "maxaddr" local used in cpu_startup(), so renaming the
variable that points to the last memory page makes things less confusing.)
powerpc: Use GCC builtins for bswap.
This doubled disk encryption performance on an (emulated) G4. Further
improvements are possible if the GCC 2 version of the endian functions
is used, so we might want to consider doing that on more NetBSD ports.
PR port-sparc64/59789 bswap is slow
mips: Use the inline macro version of bswap.
mips suffers from the same problem as sparc where bswap is slow
and using the GCC builtin does not make it better.
This change improves the speed of disk encryption by around 3 MiB/s
on an EdgeRouter 4.
PR port-sparc64/59789
pkg-vulnerabilities: add last days CVEs
+ SOGo, cups-base,
expat (details only available under a NDA for people willing to fix
it, not fixed),
fail2ban (disputed, commented out),
fluent-bit, glib2, krita, mongodb, php-orangehrm, png, py-fonttools, py-pdf,
tinyproxy (fixed upstream, no stable release with the fix, latest 1.11.2
release affected),
webkit-gtk (no further upstream information, assume not fixed),
wireshark