uvm: retire pdpending
this commit retires pdpending.
namely,
* stop counting it in kernel
* stop printing it in userland
* uvmexp/uvmexp_sysctl fields are left intact for compatibility
pdpending is documented in a few places:
uvm(9),uvm_extern.h: "number of times daemon got a pending pageout"
vmstat: "total pending pageouts"
but no one seems to know what it actually means.
here's my reasearch:
in 1998, uvm was imported to our tree.
("initial import of the new virtual memory system, UVM, into
-current.") if my reading of the ancient version of uvm is
[60 lines not shown]
nvmm_x86_vmx.c: fixes tprof stalls
the current implementation of nvmm nmi handling is
simple; just drops them. it interferes other nmi-using
components in the system, including tprof.
this commit makes nvmm try to dispatch nmis by itself.
while this is imperfect, it's good enough to give
tprof a chance to unmask LAPIC_LVT_PCINT.
i guess svm VMCB_EXITCODE_NMI needs something similar.
but i have no hardware. if someone wants to test a patch,
please let me know.
reproduce recipe:
1. run "tprof top" in a terminal. leave it running.
2. run an nvmm-based vm in another terminal.
3. observe some cpus in the "tprof top" stopped counting.
py-pdf: update to 6.9.1.
Security fix.
## Version 6.9.1, 2026-03-17
### Security (SEC)
- Improve performance and limit length of array-based content streams (#3686)
[Full Changelog](https://github.com/py-pdf/pypdf/compare/6.9.0...6.9.1)
## Version 6.9.0, 2026-03-15
### New Features (ENH)
- Expose /Perms verification result on Encryption object (#3672)
### Performance Improvements (PI)
- Fix O(n²) performance in NameObject read/write (#3679)
- Batch-parse all objects in ObjStm on first access (#3677)
[6 lines not shown]
Re-factor m68k FP exception handling:
- Move the FP exception stubs into the shared trap_subr.s. Remove as
many conditionals from the stubs as feasible, having separate stubs
for each case that needs to be handled. This doesn't really result
in any more (or duplicated) code, and makes it all a lot easier to
read.
- All platforms now call the new fpu_init() function, which is renamed
from fpu_probe(), and centralizes all of the FP-related initialization.
Platforms that don't need to probe for the FPU aren't forced to do so;
the probe only occurs if the fputype is FPU_UNKNOWN at the time fpu_init()
is called.
- Even on platforms that don't actually need to probe the FPU, make sure
the "nofault" code is present in trap() to do so; this is meant to reduce
diffs that need to be resolved later then the trap() function is re-factored.
- On Amiga and Atari, remove the bespoke vectab code and just use the shared
vec_init(). Additional cleanup is possible in this area.
(missed this file in larger commit)
Re-factor m68k FP exception handling:
- Move the FP exception stubs into the shared trap_subr.s. Remove as
many conditionals from the stubs as feasible, having separate stubs
for each case that needs to be handled. This doesn't really result
in any more (or duplicated) code, and makes it all a lot easier to
read.
- All platforms now call the new fpu_init() function, which is renamed
from fpu_probe(), and centralizes all of the FP-related initialization.
Platforms that don't need to probe for the FPU aren't forced to do so;
the probe only occurs if the fputype is FPU_UNKNOWN at the time fpu_init()
is called.
- Even on platforms that don't actually need to probe the FPU, make sure
the "nofault" code is present in trap() to do so; this is meant to reduce
diffs that need to be resolved later then the trap() function is re-factored.
- On Amiga and Atari, remove the bespoke vectab code and just use the shared
vec_init(). Additional cleanup is possible in this area.
ddb(4): improve markup readability for the list of commands
Add empty (single dot) lines around commands to make them more visible
in the man page source. Split long chains of Ij Kl Mn Op into
multiple source lines with Xo/Xc. While here mark up literal comma in
commands with Cm to make it more visible in the PostScript output.