nfscl: Fix handling of case insensitive file systems
Name caching must be handled somewhat differently
for case insensitive file systems. Negative name
caching does not work and, for rename, all names
associated with the rename'd vnode must be disabled.
For a case insensitive ZFS file system that is exported,
the unpatched code did work, since the change in mtime
or ctime of the directory when other case names were
created or rename'd would disable the false name cache
hit. However, an export of an msdosfs file system
breaks the NFS client, because it only works if ctime/mtime
is changed whenever a name is added/removed. Depending
on what the server file system is, this may not happen,
due to clock resolution or lack of support for these
attributes.
This patch checks to see if the server file system is
[9 lines not shown]
nfsd: Fix handling of attributes during Open/Create/Exclusive_41
When an NFSv4.n client specifies settings for attributes other
mode during a Open/Create/Exclusive_41, these other attributes
were not being set.
This patch resolves the problem by calling nfsrv_fixsattr()
after the VOP_CREATE() call in nfsvno_open() for this case.
There is no extant NFSv4.n client that currently does this,
as far as I know.
(cherry picked from commit 4fc11c92d324c9099ecc28f25a96591a2ff6105c)
diff: Report I/O errors in Stone algorithm
In the legacy Stone algorithm, we do a first pass over the files to
check if they're identical before we start diffing them. That code
would correctly set the exit status if an I/O error was encountered,
but would not emit an error message. Do so.
PR: 292198
MFC after: 1 week
Sponsored by: Klara, Inc.
Reviewed by: thj
Differential Revision: https://reviews.freebsd.org/D55125
bhyve/virtio: check negotiated_caps for indirect descriptor support
vq_getchain() erroneously checked vc_hv_caps for indirect descriptor
support when it encountered an indirect descriptor. vc_hv_caps is used
in feature negotiation to advertise what features our device emulation
supports, but we should really check what features we have negotiated
with the driver.
Reviewed by: corvink
Differential Revision: https://reviews.freebsd.org/D53465
ip_mroute: EVENTHANDLER_REGISTER does not fail
No functional change intended.
MFC after: 1 week
Sponsored by: Stormshield
Sponsored by: Klara, Inc.
(cherry picked from commit 0f1e1350704af555a4b30136f5f3d16db6f2dc51)
in6: Modify address prefix lifetimes when updating address lifetimes
When one uses SIOCAIFADDR_IN6 to add a v6 address, it's possible to set
the preferred and valid lifetimes of the address. If the address
already exists, this ioctl will recalculate and update the expiry times
based on the provided timestamps.
When adding a new address, the lifetimes are inherited by the prefix as
well, but only if we create a new prefix. If the prefix already exists,
as it will in the case where an address is being updated rather than
being added, we do not touch the prefix lifetimes at all. This means
that the original address lifetime still applies to the route associated
with that prefix, so when the prefix expires, the route goes away.
This behaviour doesn't make a lot of sense: if the admin updates an
address lifetime, we should ensure that the prefix lifetime is updated
too. Make that change, ensuring that we do not shorten the prefix
lifetime, as the prefix might be shared among multiple interface
addresses.
[11 lines not shown]
in6: Add a helper function to compute expiry times
Tidy up a bunch of places that have the same duplicated logic. Simplify
callers of in6_init_prefix_ltimes(). No functional change intended.
Reviewed by: pouria, zlei, tuexen, glebius
MFC after: 2 weeks
Sponsored by: OPNsense
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D54561
(cherry picked from commit fb08f80eaf90eb7ace202d8604634fc181be8980)
release: Ship firmware from kmods repo on DVD
The packages for X.Y-RELEASE are a snapshot of the quarterly branch
for stable/X, i.e. typically built on X.(Y-1)-RELEASE. (The case of
Y=0 is an exception for obvious reasons.) This works for most ports
but not for kernel modules, which may need to be built on the release
in question; this is why we have a separate "kmods" repository.
Make sure that we put the packages from the kmods repository onto the
mini-pkg-repo on the DVD rather than shipping unusable firmware.
Reviewed by: bz
MFC after: 1 week
Sponsored by: https://www.patreon.com/cperciva
Differential Revision: https://reviews.freebsd.org/D52581
(cherry picked from commit bda8028146694ee490543b35e3349e060936fde4)
release: Ship firmware from kmods repo on DVD
The packages for X.Y-RELEASE are a snapshot of the quarterly branch
for stable/X, i.e. typically built on X.(Y-1)-RELEASE. (The case of
Y=0 is an exception for obvious reasons.) This works for most ports
but not for kernel modules, which may need to be built on the release
in question; this is why we have a separate "kmods" repository.
Make sure that we put the packages from the kmods repository onto the
mini-pkg-repo on the DVD rather than shipping unusable firmware.
Reviewed by: bz
MFC after: 1 week
Sponsored by: https://www.patreon.com/cperciva
Differential Revision: https://reviews.freebsd.org/D52581
(cherry picked from commit bda8028146694ee490543b35e3349e060936fde4)
ifconfig: fix 'ifconfig -l link'
The rtnetlink(4) RTM_GETADDR does not list link level addresses, thus
the correct match for interfaces that have a link level address should
be based on what was returned by RTM_GETLINK.
Reviewed by: melifaro
Differential Revision: https://reviews.freebsd.org/D41586
(cherry picked from commit 6f3947be2aff9350514b5a414104d0afaeb53cdf)
ifconfig: fix 'ifconfig -l ether'
When matching interfaces for being Ethernet, use same trick that
the link module does - pass if_type through convert_iftype().
That restores historicaly behaviour of listing lagg(4) ports.
Reviewed by: melifaro
Differential Revision: https://reviews.freebsd.org/D41585
(cherry picked from commit 31016aa0be6dbf7556a91dda14cfe1ff0dcf933b)
lang/go124: Update to 1.24.13
Changes: go1.24.13 (released 2026-02-04) includes security fixes to the
go command and the crypto/tls package, as well as bug fixes to the
crypto/x509 package. See the Go 1.24.13 milestone on our issue tracker
for details.
This is a direct commit to 2026Q1 as the Go framework has diverged.
x11-toolkits/pango: decouple MANPAGES from DOCS
MANPAGES_IMPLIES was set to not duplicate BUILD_DEPENDS lines, but
textproc/py-gi-docgen is not used for man page generation. Additionally,
note that DOCS generation with the current textproc/py-gi-docgen
may not be deterministic in certain conditions.
While here, use DISTVERSION.
some Maven build ports: pass JAVA_HOME to maven
When a port defines JAVA_VERSION but during the build multiple
jdk versions are installed, Maven does not always use the defined
version if JAVA_HOME is not set in the environment.
PR: 272855
Reviewed-by: https://lists.freebsd.org/archives/freebsd-java/2026-February/003537.html
Approved-by: java@
usr.sbin/jail/Makefile: remove riscv linker workaround
It links fine with newer binutils 2.44 (and GCC 15), so the workaround
can be dropped.
Reviewed by: emaste
PR: 242109
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55083
lang/go125: Update to 1.25.7
Changes: go1.25.7 (released 2026-02-04) includes security fixes to the
go command and the crypto/tls package, as well as bug fixes to the
compiler and the crypto/x509 package. See the Go 1.25.7 milestone on our
issue tracker for details.
This is a direct commit to 2026Q1 because the Go framework has diverged.
lang/go124: Update to 1.24.13
Changes: go1.24.13 (released 2026-02-04) includes security fixes to the
go command and the crypto/tls package, as well as bug fixes to the
crypto/x509 package. See the Go 1.24.13 milestone on our issue tracker
for details.
lang/go125: Update to 1.25.7
Changes: go1.25.7 (released 2026-02-04) includes security fixes to the
go command and the crypto/tls package, as well as bug fixes to the
compiler and the crypto/x509 package. See the Go 1.25.7 milestone on our
issue tracker for details.