FreeBSD/src 9b6bfb5 — lib/libc/stdio mktemp.3, lib/libpmc pmc.dmc-620.3

manpages: normalizing date format
DeltaFile
+1-1usr.bin/genl/genl.1
+1-1sys/teken/libteken/teken.3
+1-1lib/libpmc/pmc.dmc-620.3
+1-1lib/libc/stdio/mktemp.3
+4-44 files

FreeBSD/src 11a64df — share/man/man4 uhid.4 splash.4, share/man/man9 osd.9

manpages: normalizing date format
DeltaFile
+1-1share/man/man9/osd.9
+1-1share/man/man4/uhid.4
+1-1share/man/man4/splash.4
+1-1share/man/man4/pfsync.4
+1-1share/man/man4/ncthwm.4
+1-1share/man/man4/nctgpio.4
+6-63 files not shown
+9-99 files

FreeBSD/src e9c132d — sys/netinet/libalias alias_local.h alias_db.h

libalias: index fully specified inbound links by remote endpoint

Inbound lookups find the (alias address, alias port, link type) group
with a splay tree and then walk grp->full, a list of every fully
specified link in that group, comparing the remote address and port.
With redirect_addr in front of a busy server, every client connection
to public:443 lands in the same group, so each inbound packet that is
not near the head of the list walks all of it.  TCP links live up to
24 hours unless libalias sees a clean close, so the list can grow to
hundreds of thousands of entries and saturate a core at a few hundred
packets per second.

Keep the fully specified links of a group in an RB tree ordered by
(dst_addr, dst_port).  Links that share an endpoint are ordered newest
first by a per-instance insertion counter, which keeps the "most recent
link wins" behaviour of the list (tested by 3_natin:2_portoverlap).

Lookups with an unknown remote address and a known port still scan the
group.  Each link grows by 16 bytes.

    [10 lines not shown]
DeltaFile
+102-42sys/netinet/libalias/alias_db.c
+7-1sys/netinet/libalias/alias_db.h
+4-1sys/netinet/libalias/alias_local.h
+113-443 files

FreeBSD/src 7c348a7 — sys/netinet/libalias alias_smedia.c alias_skinny.c

libalias: Handle GetNewPort() errors properly

AddLink() fails when memory allocation fails or no free port is
available; both are error conditions.  However, functions such as
FindUdpTcpIn() were converting such failures to PKT_ALIAS_IGNORED, which
effectively means, "pass the packet without translation," which isn't
what we want.

Fix the problem by making sure that AddLink() errors are converted to
PKT_ALIAS_ERROR where appropriate.  The diff is a bit large but is
mostly mechanical: functions like TcpAliasOut() are converted to return
a result code, and an additional out-parameter is added to return the
alias_link pointer.

Reported by:    Yuxiang Yang <yangyx22 at mails.tsinghua.edu.cn>
Tested by:      Yuxiang Yang <yangyx22 at mails.tsinghua.edu.cn>
MFC after:      2 months
Differential Revision:  https://reviews.freebsd.org/D47778

(cherry picked from commit fb2ea26f3c3681f5ef639af9c798a631d800864b)
DeltaFile
+95-69sys/netinet/libalias/alias.c
+63-25sys/netinet/libalias/alias_db.c
+14-12sys/netinet/libalias/alias_local.h
+2-2sys/netinet/libalias/alias_smedia.c
+2-2sys/netinet/libalias/alias_skinny.c
+2-2sys/netinet/libalias/alias_irc.c
+178-1126 files

FreeBSD/src f102113 — sys/netinet/libalias alias_local.h alias.h, tests/sys/netinet/libalias 2_natout.c

libalias: Add support for EIM NAT

Add support for endpoint-independent mapping ("full cone NAT") in
Libalias's UDP NAT.

This conforms to RFC 4787 requirements 1 and 3. All UDP packets sent out from a
particular internal address:port leave via the same NAT address:port,
regardless of their destination.

Add some libalias tests and supporting defines.

Reviewed by:    igoro, thj
Differential Revision:  https://reviews.freebsd.org/D46689D

(cherry picked from commit 61bf830cbb260c2a046cb44421d319184393e028)
DeltaFile
+170-0tests/sys/netinet/libalias/2_natout.c
+56-2sys/netinet/libalias/alias_db.c
+31-12sys/netinet/libalias/alias_db.h
+21-1sys/netinet/libalias/libalias.3
+20-0sys/netinet/libalias/alias.h
+4-2sys/netinet/libalias/alias_local.h
+302-172 files not shown
+304-188 files

FreeBSD/src 2b27613 — lib/libc/gen uexterr_gettext.3, lib/libc/posix1e mac.conf.5

manpages: date typos
DeltaFile
+1-1share/man/man9/sx.9
+1-1share/man/man4/ufintek.4
+1-1share/man/man4/pflog.4
+1-1share/man/man4/mac_seeotheruids.4
+1-1lib/libc/posix1e/mac.conf.5
+1-1lib/libc/gen/uexterr_gettext.3
+6-63 files not shown
+9-99 files

FreeBSD/src ebd89b9 — lib/libsys sched_getcpu.3, lib/libsysdecode sysdecode_mask.3

manpages: missing section argument for .Xr macro
DeltaFile
+2-2usr.sbin/nfsd/pnfsserver.4
+1-1usr.sbin/pnfsdsfile/pnfsdsfile.8
+1-1usr.sbin/nfsd/pnfs.4
+1-1share/man/man7/environ.7
+1-1lib/libsysdecode/sysdecode_mask.3
+1-1lib/libsys/sched_getcpu.3
+7-71 files not shown
+8-87 files

FreeBSD/src 22b4975 — lib/libc/gen uexterror.3 uexterr_gettext.3, share/man/man9 exterror.9

manpages: Fix unusual Xr order
DeltaFile
+1-1usr.sbin/quot/quot.8
+1-1share/man/man9/exterror.9
+1-1lib/libc/gen/uexterror.3
+1-1lib/libc/gen/uexterr_gettext.3
+4-44 files

FreeBSD/src 989ff10 — usr.sbin/setaudit setaudit.8

setaudit.8: remove empty macro Xr
DeltaFile
+0-1usr.sbin/setaudit/setaudit.8
+0-11 files

FreeBSD/src fddd0bc — lib/libc/gen setproctitle.3, lib/libmd sha512.3

manpages: missing comma before name
DeltaFile
+1-2lib/msun/man/clog.3
+1-1lib/msun/man/sqrt.3
+1-1lib/libpmc/pmc.amd.3
+1-1lib/libmd/sha512.3
+1-1lib/libc/gen/setproctitle.3
+5-65 files

FreeBSD/src 186f14e — share/man/man3 pthread_join.3 tree.3, share/man/man9 OF_device_from_xref.9

manpages: missing comma before name
DeltaFile
+2-2share/man/man3/tree.3
+1-1share/man/man9/OF_device_from_xref.9
+1-1share/man/man3/pthread_join.3
+4-43 files

FreeBSD/src a84b9db — lib/libc/gen tcgetwinsize.3

tcgetwinsize.3: typo in section name

.Sh RETURN VALUE instead of RETURN VALUES
DeltaFile
+1-1lib/libc/gen/tcgetwinsize.3
+1-11 files

FreeBSD/src 81d09d4 — lib/msun/man fegetenv.3

fegetenv.3: no cross reference to self
DeltaFile
+0-1lib/msun/man/fegetenv.3
+0-11 files

FreeBSD/src 0aa6428 — sys/netinet tcp_output.c

tcp: address PR295870

Fix accounting in the sequence space for a FIN bit potentially
piggy bagged during SACK loss recovery triggered transmissions.

Reviewed By: #transport, tuexen
Sponsored by: NetApp, Inc.
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D61312
DeltaFile
+10-1sys/netinet/tcp_output.c
+10-11 files

FreeBSD/src 097f6d7 — sys/kern link_elf_obj.c

link_elf_obj: fix an off-by-one in the symbol string table index check

link_elf_load_file() checks the symbol table's sh_link against
e_shnum with ">" instead of ">=", so a malformed object whose sh_link
equals e_shnum makes the linker read one entry past the section header
array before the sh_type check rejects it.  Use ">=", as
link_elf_link_preload() already does.

Reviewed by:    kib
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D61055
DeltaFile
+1-1sys/kern/link_elf_obj.c
+1-11 files

FreeBSD/src 8e7f9aa — sys/amd64/vmm vmm_instruction_emul.c

vmm: Emulate the byte forms of OR and AND with an immediate

Opcode 0x80 (group 1: r/m8, imm8) is in the decode table and
emulate_cmp() handles 80 /7, but emulate_or() and emulate_and() only
accept 0x81 and 0x83.  An "or byte ptr [mem], imm8" or "and byte ptr
[mem], imm8" on emulated memory therefore fails with EINVAL and bhyve
stops the guest with "Failed to emulate instruction sequence
[ 80 ... ]".  Seen with macOS: VoodooHDA starts the HDA controller's
CORB with "or byte [rax+0x4c], 2" (CORBCTL |= CORBRUN), and the guest
died at the first sound.

Accept 0x80 in both, with a one byte operand as emulate_cmp() does.
The file is shared with bhyve(8), so the fix covers the in-kernel
devices (HPET, local APIC without APICv, I/O APIC) and the user space
device models alike.

Signed-off-by: Wanpeng Qian <wanpengqian at gmail.com>

Reviewed by:    markj

    [3 lines not shown]
DeltaFile
+12-0sys/amd64/vmm/vmm_instruction_emul.c
+12-01 files

FreeBSD/src 14d828a — sys/kern link_elf_obj.c

link_elf_obj: guard reltab/relatab frees in link_elf_unload_file()

link_elf_unload_file() frees the per-section relocation tables by iterating
ef->nreltab / ef->nrelatab, but dereferences ef->reltab / ef->relatab
unconditionally. The counts are set while scanning the section headers, before
the tables are allocated, so an error on the load path reaches it with a
non-zero count and a NULL table, faulting on ef->relatab[0].rela. Reachable
from link_elf_load_file() once a valid relocation section has been counted,
e.g. a later section with sh_info >= e_shnum (D60937).

Guard the loops with the table pointer, as is already done for ef->progtab
above.

MFC after:      1 week
Reviewed by:    markj, kib
Differential Revision:  https://reviews.freebsd.org/D61140
DeltaFile
+10-6sys/kern/link_elf_obj.c
+10-61 files

FreeBSD/src 8644c3b — sys/kern link_elf_obj.c

link_elf_obj: bounds-check a relocation section's sh_info

sh_info is used to index the section header array without checking it
against e_shnum, so a malformed object can make the linker read out of
bounds.  Reject such a file with ENOEXEC in both the preload and kldload
paths.

MFC after:      1 week
Reviewed by:    kib, markj
Differential Revision:  https://reviews.freebsd.org/D60937
DeltaFile
+16-0sys/kern/link_elf_obj.c
+16-01 files

FreeBSD/src 956a05c — stand/i386/gptzfsboot zfsboot.c

gptzfsboot: Use snprintf() to format file names

The stack buffer in fs_list() can be overflowed if a file name is too
long.

Reported by:    Yudi Yang <yudi.yang at rice.edu>
MFC after:      1 week
DeltaFile
+1-1stand/i386/gptzfsboot/zfsboot.c
+1-11 files

FreeBSD/src 9669115 — sys/netinet/tcp_stacks rack.c

Mark Johnsons Claude code found a duplicate call to rack_check_reorder_ack() in rack.c

Mark's Claude code properly points out an interesting bug case where if a new block is
created from a sack aka

        rsm |--------|
    sackblk    |--------->
Then when the new block is created rack_check_reorder_ack() is called and then called again when
the block is actually ack'ed. Proper thing is to *not* in this case call the function and only call
it at the processing to ACK. You leave the hookery side however since that is just transfering
the existing block pointers.

Differential Revision:https://reviews.freebsd.org/D61159
DeltaFile
+4-2sys/netinet/tcp_stacks/rack.c
+4-21 files

FreeBSD/src 5d62207 — lib/libc/gen err.3

libc/gen/err.3: reword to refer to exterror.9

Requested by:   wosch
Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+4-2lib/libc/gen/err.3
+4-21 files

FreeBSD/src 0448f4d — lib/libc/string string.3

string.3: no cross reference to self
DeltaFile
+0-17lib/libc/string/string.3
+0-171 files

FreeBSD/src ef7d29b — lib/libc/string bstring.3

bstring.3: no cross reference to self
DeltaFile
+1-9lib/libc/string/bstring.3
+1-91 files

FreeBSD/src b6c96b9 — usr.sbin/quot quot.8

quot.8: fix ffs xrefs after move to section 4
DeltaFile
+2-2usr.sbin/quot/quot.8
+2-21 files

FreeBSD/src 27b116c — usr.sbin/mountd mountd.8

mountd.8: fix link to syslogd(8)
DeltaFile
+2-2usr.sbin/mountd/mountd.8
+2-21 files

FreeBSD/src fef05f8 — usr.sbin/bsnmpd/modules/snmp_hostres snmp_hostres.3

snmp_hostres.3: fix reference to bsnmpd(1)
DeltaFile
+2-2usr.sbin/bsnmpd/modules/snmp_hostres/snmp_hostres.3
+2-21 files

FreeBSD/src cf99bdb — lib/geom/virstor gvirstor.8

gvirstor.8: fix reference to zfs(8)
DeltaFile
+1-1lib/geom/virstor/gvirstor.8
+1-11 files

FreeBSD/src fa67270 — lib/libc/gen uexterr_gettext.3 uexterror.3, lib/libc/stdtime ctime.3

manpages: fix reference to errno(2)

On FreeBSD, the errno man page is in section 2, not section 3.
DeltaFile
+3-3lib/libc/gen/uexterror.3
+2-2share/man/man9/exterror.9
+1-1share/man/man3/pthread_query_np.3
+1-1lib/libc/stdtime/ctime.3
+1-1lib/libc/gen/uexterr_gettext.3
+8-85 files

FreeBSD/src 27a015a — bin/ln symlink.7

symlink.7: fix ref to chown(8)
DeltaFile
+2-2bin/ln/symlink.7
+2-21 files

FreeBSD/src 78121aa — sys/kern kern_mib.c

kern: Remove unreachable compat_freebsd8 FEATURE

COMPAT_FREEBSD8 does not exist as a kernel option, so this is dead code.

No functional change intended.

Fixes:          e256f71389fb ("kernel: add missed FEATUREs compat_freebsd 8-14")
MFC after:      1 week
Sponsored by:   The FreeBSD Foundation
Reviewed by:    kib
Pull-Request:   https://ron-dev.freebsd.org/FreeBSD/src/pulls/80

(cherry picked from commit 9da2c05a748fd17757638e1a9e78215cdb8b80d0)
DeltaFile
+0-4sys/kern/kern_mib.c
+0-41 files