FreeBSD/src c2b5133tools/test/stress2/misc swap8.sh unionfs21.sh

stress2: Added two new test scenarios
DeltaFile
+141-0tools/test/stress2/misc/swap8.sh
+44-0tools/test/stress2/misc/unionfs21.sh
+185-02 files

FreeBSD/src 833f929tools/test/stress2/misc syzkaller88.sh syzkaller89.sh

stress2: Added two syzkaller reproducers. Updated the exclude file
DeltaFile
+317-0tools/test/stress2/misc/syzkaller88.sh
+210-0tools/test/stress2/misc/syzkaller89.sh
+4-0tools/test/stress2/misc/all.exclude
+531-03 files

FreeBSD/src 44b0f31sys/dev/e1000 if_em.c e1000_phy.c

Revert "e1000: Try auto-negotiation for fixed 100 or 10 configuration"

We've gotten a report of this breaking a fixed no autoneg setup.

Since no link is worse than what this intends to fix (negotiating full
duplex at forced speed), revert for the undeway 15.0 release cycle
until this can be further reviewed.

PR:             288827
Differential Revision:  https://reviews.freebsd.org/D47336

This reverts commit 645c45e297c0fcbbb9d2d24cdeeb124234825019.

(cherry picked from commit 3ff0231c87f360afa4521e635b46f6c711dc4ee3)
DeltaFile
+6-38sys/dev/e1000/if_em.c
+2-3sys/dev/e1000/e1000_phy.c
+8-412 files

FreeBSD/src e4730bbsys/dev/e1000 if_em.c e1000_phy.c

Revert "e1000: Try auto-negotiation for fixed 100 or 10 configuration"

We've gotten a report of this breaking a fixed no autoneg setup.

Since no link is worse than what this intends to fix (negotiating full
duplex at forced speed), revert for the undeway 15.0 release cycle
until this can be further reviewed.

PR:             288827
Differential Revision:  https://reviews.freebsd.org/D47336

This reverts commit 645c45e297c0fcbbb9d2d24cdeeb124234825019.

(cherry picked from commit 3ff0231c87f360afa4521e635b46f6c711dc4ee3)
DeltaFile
+6-38sys/dev/e1000/if_em.c
+2-3sys/dev/e1000/e1000_phy.c
+8-412 files

FreeBSD/src 10037d0sbin/mount_fusefs mount_fusefs.8 mount_fusefs.c, sys/fs/fuse fuse_device.c fuse_ipc.h

fusefs: Implement support for the auto_unmount option kernel-side

libfuse clients may pass the "-o auto_unmount" flag to ensure that the mountpoint
will get unmounted even if the server terminate abnormally. Without this flag
sending KILL to a FUSE daemon leaves its mountpoint mounted.

Approved by:    asomers
Differential Revision:  https://reviews.freebsd.org/D53086
DeltaFile
+5-1sys/fs/fuse/fuse_device.c
+4-1sbin/mount_fusefs/mount_fusefs.8
+2-1sys/fs/fuse/fuse_ipc.h
+2-0sbin/mount_fusefs/mount_fusefs.c
+1-0sys/fs/fuse/fuse_vfsops.c
+14-35 files

FreeBSD/src 04f6b99sys/netlink/route iface.c

netlink: use caller's credentials in rtnl_handle_newlink

Make sure rtnl_handle_newlink sets the caller's credential
during calls to ifc_create_ifp_nl and ifc_modify_ifp_nl

Reviewed by: glebius, melifaro
Approved by: glebius (mentor)
Differential Revision: https://reviews.freebsd.org/D54109
DeltaFile
+10-2sys/netlink/route/iface.c
+10-21 files

FreeBSD/src 40c0d67sys/netgraph/netflow netflow_v9.c

ng_netflow v9: fix template re-announcement using packet count

Increment fe->sent_packets after export9_send().
Previously, NetFlow v9 templates were only re-announced based on
time, ignoring the packet count parameter (`templ_packets`).

PR:             270083
Reviewed by:    glebius pouria
Approved by:    glebius (mentor)
MFC after:      1 week
Sponsored by:   Subcarpathian BSD User Group

(cherry picked from commit d836dae9f0d888d441234ea11e3cd91614c86aa2)
DeltaFile
+1-0sys/netgraph/netflow/netflow_v9.c
+1-01 files

FreeBSD/src f51e0f5sys/netgraph/netflow netflow_v9.c

ng_netflow v9: fix template re-announcement using packet count

Increment fe->sent_packets after export9_send().
Previously, NetFlow v9 templates were only re-announced based on
time, ignoring the packet count parameter (`templ_packets`).

PR:             270083
Reviewed by:    glebius pouria
Approved by:    glebius (mentor)
MFC after:      1 week
Sponsored by:   Subcarpathian BSD User Group

(cherry picked from commit d836dae9f0d888d441234ea11e3cd91614c86aa2)
DeltaFile
+1-0sys/netgraph/netflow/netflow_v9.c
+1-01 files

FreeBSD/src cd730betools/tools/nanobsd defaults.sh

nanobsd: Use mtree -C to produce the metalog

Prefer an mtree -C output, which is guaranteed to be mtree-compatible.
Add "gname", "uname", and "tags" to the default keyword set, while
removing "size" and "time", the latter being set on kernel file entries
and taking precedence over makefs -T (when paired with -F).

As a side effect, this produces a cleaner file with sorted keywords.

Note that passing "-u" to sort in order to pipe to mtree is no longer
necessary, but we'll do it out of habit.

Reviewed by:    imp
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D54854
DeltaFile
+3-3tools/tools/nanobsd/defaults.sh
+3-31 files

FreeBSD/src 202e310sys/amd64/include md_var.h, sys/amd64/vmm vmm_host.h

amd64: Fix sys/pcpu.h usage in vmm_host.h and md_var.h

Include sys/pcpu in vmm_host.h as its structs and functions are used
there, and add a forward declaration of struct pcpu to md_var.h as it
is used in some function prototypes.

Reviewed by:    corvink, markj
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D51550
DeltaFile
+2-0sys/amd64/vmm/vmm_host.h
+1-0sys/amd64/include/md_var.h
+3-02 files

FreeBSD/src 6fd7e55sys/fs/nfsserver nfs_nfsdsubs.c nfs_nfsdport.c

nfsd: Fix handling of hidden/system during Open/Create

When an NFSv4.n client specifies settings for the archive,
hidden and/or system attributes during a Open/Create, the
Open/Create fails for ZFS.  This is caused by ZFS doing
a secpolicy_xvattr() call, which fails for non-root.
If this check is bypassed, ZFS panics.

This patch resolves the problem by disabling va_flags
for the VOP_CREATE() call in the NFSv4.n server and
then setting the flags with a subsequent VOP_SETATTR().

This problem only affects FreeBSD-15 and main, since the
archive, system and hidden attributes are not enabled
for FreeBSD-14.

I think a similar problem exists for the NFSv4.n
Open/Create/Exclusive_41, but that will be resolved
in a future commit.

    [8 lines not shown]
DeltaFile
+38-0sys/fs/nfsserver/nfs_nfsdsubs.c
+11-0sys/fs/nfsserver/nfs_nfsdport.c
+49-02 files

FreeBSD/src 102400esys/vm swap_pager.c

swap_pager_getpages(): assert that bp->b_pages[] is accessed in bounds

(cherry picked from commit b02ddb59e64620733a6cbc48fb1d0583a62fef78)
DeltaFile
+3-0sys/vm/swap_pager.c
+3-01 files

FreeBSD/src b3e6c8eshare/man/man7 tuning.7

tuning.7: wording fixes

(cherry picked from commit 6f41575a94b310614f5ffcee215aee48ced4ad2d)
DeltaFile
+2-2share/man/man7/tuning.7
+2-21 files

FreeBSD/src 1f6db7dsys/vm swap_pager.c

swap_release_by_cred*(): give some additional info on panics due to underflow

(cherry picked from commit 7361727d4584b5e303183c836497ae2754ce0e53)
DeltaFile
+4-2sys/vm/swap_pager.c
+4-21 files

FreeBSD/src 95eec98sys/vm swap_pager.c

vm/swap_pager.c: silence compiler warning

(cherry picked from commit 325baf00735756d024b903bfcee50b4f09e90129)
DeltaFile
+1-1sys/vm/swap_pager.c
+1-11 files

FreeBSD/src 9dbc47dsys/vm vm_map.c

vm_map_entry_delete(): fix the calculation of swap release

(cherry picked from commit acb71820d68bd0dd98964240727e251bc62c92de)
DeltaFile
+1-1sys/vm/vm_map.c
+1-11 files

FreeBSD/src a4123acsys/kern uipc_shm.c, sys/vm vm_object.c vm_map.c

vm_object: remove the charge member

(cherry picked from commit d160447129fe060b28bcd6ba429d17afdf494ff2)
DeltaFile
+27-19sys/vm/vm_object.c
+22-23sys/vm/vm_map.c
+2-6sys/vm/swap_pager.c
+2-3sys/vm/vm_fault.c
+1-3sys/vm/vm_object.h
+0-2sys/kern/uipc_shm.c
+54-561 files not shown
+54-587 files

FreeBSD/src a6cc48esys/kern kern_sendfile.c

sendfile: remove calculation of unused bsize

(cherry picked from commit 3fe275c1ef45d452d1adc537b7ec1ca6444739ba)
DeltaFile
+3-6sys/kern/kern_sendfile.c
+3-61 files

FreeBSD/src 7768be6share/man/man7 tuning.7

tuning.7: use the correct word for collapsing

(cherry picked from commit 8cd687a726a8b6cc29f573cba7d6c7ecb683a954)
DeltaFile
+1-1share/man/man7/tuning.7
+1-11 files

FreeBSD/src 0ab96c9sys/vm swap_pager.c vm_map.c

rfork(2): fix swap accounting in vmspace_unshare()

(cherry picked from commit de770681234d001a1f4cdb8121179331dc3a2def)
DeltaFile
+8-2sys/vm/swap_pager.c
+7-0sys/vm/vm_map.c
+1-0sys/vm/vm.h
+16-23 files

FreeBSD/src 2a27aefsys/vm swap_pager.c

swap_pager_getpages(): some pages from ma[] might be bogus

(cherry picked from commit d198ad51ea73bbb162336923a387f52b0b1c1f1d)
DeltaFile
+29-8sys/vm/swap_pager.c
+29-81 files

FreeBSD/src 10af3b3share/man/man7 tuning.7

tuning.7: add more explanation about swap (over-)accounting

(cherry picked from commit 457b940bfb6a228af1281f357b627ecf1e26fea5)
DeltaFile
+15-0share/man/man7/tuning.7
+15-01 files

FreeBSD/src 99fab30sys/vm vm_object.c

vm_object_coalesce(): simplify common expression

(cherry picked from commit e7053d9a126a60b3c0b1348b6c5131b5f2025894)
DeltaFile
+7-6sys/vm/vm_object.c
+7-61 files

FreeBSD/src 1e1727asys/vm vm_object.c

vm_object_coalesce(): do not account holes twice

(cherry picked from commit 353ba3bf08fdef69b77e3e565435e50784a51412)
DeltaFile
+7-4sys/vm/vm_object.c
+7-41 files

FreeBSD/src 2499392sys/vm vm_map.c vm_object.c

vm_object_coalesce(): return swap reservation back if overcharged

(cherry picked from commit 7685aaea8850f5b6995a17740a016019e0956c70)
DeltaFile
+30-14sys/vm/vm_map.c
+31-10sys/vm/vm_object.c
+7-1sys/vm/vm_object.h
+68-253 files

FreeBSD/src 84cab08sys/vm vm_object.c

vm_object_coalesce(): remove commented out code

(cherry picked from commit efcb109940ca607130af4498e1e33b54c58ba43c)
DeltaFile
+1-12sys/vm/vm_object.c
+1-121 files

FreeBSD/src f3de667sys/netinet6 in6_ifattach.c in6_var.h

netinet6: free in6_ifextra with epoch_call(9)

This is expected to fix the old in6_selecthlim() panics.  The nature of
the panic is that a packet sending thread will obtain the struct ifnet
pointer locklessly and then pick the if_inet6 pointer from it and
dereference it. While the struct ifnet is freed via epoch_call(9), the
struct in6_ifextra until this change was not.  For the forwarded packets,
or locally originated non-TCP packets we were probably safe due to the old
if_dead trick.  But locally originated TCP packets may dereference
in6_ifextra via direct call into in6_selecthlim() from the tcp_output(),
before ip6_output().

NB: hypothetically a similar problem also applies to IPv4's if_inet pointer,
but there are no known panics, yet.

PR:                     279653
Reviewed by:            tuexen
Differential Revision:  https://reviews.freebsd.org/D54728
DeltaFile
+20-5sys/netinet6/in6_ifattach.c
+2-0sys/netinet6/in6_var.h
+22-52 files

FreeBSD/src cba9f88sys/netinet6 mld6.c mld6_var.h

netinet6: embed struct mld_ifsoftc into struct in6_ifextra

In mld_domifdetach() don't search the global list.

Reviewed by:            tuexen
Differential Revision:  https://reviews.freebsd.org/D54727
DeltaFile
+13-41sys/netinet6/mld6.c
+2-20sys/netinet6/mld6_var.h
+15-1sys/netinet6/in6_var.h
+1-2sys/netinet6/in6.c
+0-1sys/netinet6/ip6_input.c
+31-655 files

FreeBSD/src aa3bbc0sys/netinet6 scope6.c scope6_var.h

netinet6: embed struct scope6_id into struct in6_ifextra

Reviewed by:            tuexen
Differential Revision:  https://reviews.freebsd.org/D54726
DeltaFile
+6-13sys/netinet6/scope6.c
+1-12sys/netinet6/scope6_var.h
+9-1sys/netinet6/in6_var.h
+1-1sys/netinet6/in6.c
+0-1sys/netinet6/in6_ifattach.c
+17-285 files

FreeBSD/src 576ee62sys/netinet6 nd6.c nd6_rtr.c

netinet6: store ND context directly in struct in6_ifextra

Stop using struct nd_ifinfo for that, because it is an API struct for
SIOCGIFINFO_IN6.  The functional changes are isolated to the protocol
attach and detach: in6_ifarrival(), nd6_ifattach(), in6_ifdeparture(),
nd6_ifdetach(), as well as to the nd6_ioctl(), nd6_ra_input(),
nd6_slowtimo() and in6_ifmtu().

The dad_failures member was just renamed to match the rest.  The M_IP6NDP
malloc(9) type declaration moved to files that actually use it.

The rest of the changes are mechanical substitution of double pointer
dereference via ND_IFINFO() to a single pointer dereference.  This was
achieved with a sed(1) script:

s/ND_IFINFO\(([a-z0-9>_.-]+)\)->(flags|linkmtu|basereachable|reachable|retrans|chlim)/\1->if_inet6->nd_\2/g
s/nd_chlim/nd_curhoplimit/g

Reviewed by:            tuexen, madpilot
Differential Revision:  https://reviews.freebsd.org/D54725
DeltaFile
+84-88sys/netinet6/nd6.c
+30-26sys/netinet6/nd6_rtr.c
+16-16sys/netinet6/in6.c
+13-11sys/netinet6/nd6_nbr.c
+12-3sys/netinet6/in6_var.h
+2-10sys/netinet6/nd6.h
+157-1548 files not shown
+177-17314 files