diff options
| author | Konstantin Belousov <kib@FreeBSD.org> | 2026-01-12 05:54:58 +0200 |
|---|---|---|
| committer | Konstantin Belousov <kib@FreeBSD.org> | 2026-01-13 16:03:14 +0200 |
| commit | 457b940bfb6a228af1281f357b627ecf1e26fea5 (patch) | |
| tree | 2dffc2785b71455517e02b16ed3f552c1b5396ec /share | |
| parent | d160447129fe060b28bcd6ba429d17afdf494ff2 (diff) | |
tuning.7: add more explanation about swap (over-)accounting
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D54572
Diffstat (limited to 'share')
| -rw-r--r-- | share/man/man7/tuning.7 | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/share/man/man7/tuning.7 b/share/man/man7/tuning.7 index 44c427c4559d..a3709ce82b8c 100644 --- a/share/man/man7/tuning.7 +++ b/share/man/man7/tuning.7 @@ -222,6 +222,21 @@ and .Va vm.stats.vm.v_wire_count sysctls, respectively). .Pp +Due to the architecture of the +.Fx +virtual memory subsystem, the use of copy on write (CoW) anonymous +memory, e.g. on +.Xr fork 2 , +causes swap reservation for all three regions (VM objects), +as in the original pre-fork mapping, and its copies in +the parent and child, instead of only two. +Eventually the subsystem tries to optimize the internal layout +of the tracking for CoW and often removes (collapses) no longer +needed backing objects, re-assigning its pages and swap +reservations to the copies. +Coolapsing frees the swap reserve, but it is not guaranteed +to happen. +.Pp The .Va kern.ipc.maxpipekva loader tunable is used to set a hard limit on the |
