Change pte_update() to return the actual-pte rather than a bool. When
they don't match, we need to re-load the old PTE anyway, so this saves
a redundant load.
Import pppd-2.5.5 (previous was 2.5.2)
Release 2.5.5
=============
This is a bug-fix and security release, with no new features. Changes include:
* Fix bugs where hook scripts such as /etc/ppp/ip-up were not being run.
* Fix bugs causing PPP_SCRIPT_INSTANCE to be set incorrectly for some
scripts.
* Fix validation of received frames in the RADIUS plugin, along with some
further hardening against incorrect received frames.
* Fix generation of MPPE keys when EAP-TLS is being used with TLS 1.3.
* This makes it work with Windows clients, but breaks compatibility with
earlier versions of pppd (but only in the case where EAP-TLS and MPPE and
the 'max-tls-version 1.3' option are all being used).
* Various cases existed in the MPPE code where the link could come up without
MPPE encryption despite it being requested via one or more of the 'require-
mppe', 'require-mppe-40' or 'require-mppe-128' options. This is now fixed.
Also, pppd will now accept an MPPE CCP configuration option requesting no
encryption from the peer if MPPE is not required (rather than rejecting
[116 lines not shown]
PMAP_NOCACHE is not a flag -- it's one value in an enumeration of
pmap_enter() cache mode specifiers. Treat it as such, and also
handle the PMAP_WRITE_COMBINE and PMAP_NOCACHE_OVR modes (which
on MMUs supported by this pmap are equivalent to PMAP_NOCACHE).
Load the kernel at 0x2000 instead of 0x0 so that VA 0 can remain
unmapped in order to catch NULL-pointer derefs. Use those pages
at the beginning of RAM for the LWP0 u-area so they don't go to
waste.
nvme: Work around lost INTx notifications
Some controllers fail to reassert INTx for completions posted while
interrupts are masked. Recheck completion queues after unmasking and
reschedule the soft interrupt if work remains. For PCI INTx, also mask
PCI interrupt delivery while servicing the interrupt and recheck after
reenabling it.
It's unclear why this workaround is needed, but until the root cause
is found it makes more drives work.
Patch from berte on port-riscv
https://mail-index.netbsd.org/port-riscv/2026/11/09/msg000339.html
Eliminate the (multiple) conditional branches based on fputype in the
m68k context switch path. Instead, the FPU save and restore blocks
begin with a BRA.W insn that branches around the FPU code, essentially
refleching FPU_NONE. Once the FPU is probed, these BRA.W insns are
patched with the displacement for the correct code fragment for the
detected FPU.
pmap_db_write_text_{enter,exit}() -> pmap_write_text_{enter,exit}().
These functions are soon to be useful in more places than just the
kernel debugger.
Add the DS2413 2 port GPIO device at its published family ID.
There are known clones and/or ripoffs of this chip that have a family
ID that is not 0x3a. This will be dealt with in the device drive that
will appear in the future.
PR/40: Quentin Thebault: The wording in the man page can be misleading. -P is
described as overriding -s although the code processes both. -s is described
as adding a socket, but giving it also removes the default socket path.
Restate that the default socket path will not be used and needs to be given
again explicitly if any of the -s or -P flags is present and specify that they
can be used together, following the code's behaviour.
Perform a bit of CPR on the cesfic port:
- Normalize with other 68040 systems vis a vis KERNBASE and
VM_MIN_KERNEL_ADDRESS. Adjust early bootstrap to accommodate.
- Determine at run-time the address the kernel was loaded at, rather
than hard-coding it to (RAM+1M) before relocating the kernel down
to (RAM+link_addr).
- Long-jump to the relocated kernel immediately after relocating it and
before clearing the BSS. Previously, it's possible that the old copy
where we were still running fro could be could get clobbered when the
BSS is cleared.
- Use the common MMU-enable code fragment and the common TT register
management functions.
The kernel has grown since the README was written, so recommand loading
it (via OS-9) at RAM+2M. Also update the contact information for the
port :-(
A few straggling Debugger -> cpu_Debugger transformations (because sun3
<sys/systm.h> was unconditionally always #define'ing Debugger() on sun3,
but now no longer does).