libjail: fix fetching mac.label for multiple jails
When doing a basic `jls -n`, jls(8) will jailparam_get() the mac.label
for every jail on the system using the same set of jailparams, and thus
the same jp_value. We only init the mac_t the first time, so the first
jail would populate it with `?` from /etc/mac.conf and the resulting
jail_get(2) would clobber it with the empty string, then a second jail
would try to pass the empty string to the kernel and fail because it
must have a non-zero length.
Fix it by invoking jps_get() every time. Drop some comments to note
that jps_get() will be invoked with zero || garbage from previous call,
and be sure that we don't leak our previous mac_t. There aren't any
other jps_get implementations at this time, so this shouldn't cause any
unexpected problems.
Reported by: ivy
Reviewed by: jamie
Differential Revision: https://reviews.freebsd.org/D57280
x11-fonts/monaspace: Improve port
Simplify do-install and rely on common mechanisms to follow other
ports in tree
PR: 297718
Reviewed by: lwhsu (maintainer)
math/py-scikit-rf: new port
scikit-rf (aka skrf) is an Open Source, BSD-licensed package for
RF/Microwave engineering implemented in the Python programming language.
It provides a modern, object-oriented library which is both flexible
and scalable.
Co-authored-by: Michael Osipov <michaelo at FreeBSD.org>
PR: 283072
graphics/drm-*-kmod, graphics/nvidia-drm-*-kmod: Update DRM drivers
The reason is to make them compatible with an upcoming change in
linuxkpi in FreeBSD src:
https://github.com/freebsd/drm-kmod/pull/502
Sponsored by: The FreeBSD Foundation
security/ca_root_nss: Update to 3.129
Changes to the certificate store since 3.128:
- Removed Izenpe.com (server distrust after 2026-04-15, Mozilla bug
2017322: the attribute was set on the PKCS#11 trust object instead of
the certificate object, so it did not take effect until now)
Changelog:
https://groups.google.com/a/mozilla.org/g/dev-tech-crypto/c/ux-yy4Yk33U
MFH: 2026Q3
Sponsored by: Netzkommune GmbH
(cherry picked from commit f2f3940dcd641a9624fd40229d8c1b58fabdbd48)
security/ca_root_nss: Update to 3.129
Changes to the certificate store since 3.128:
- Removed Izenpe.com (server distrust after 2026-04-15, Mozilla bug
2017322: the attribute was set on the PKCS#11 trust object instead of
the certificate object, so it did not take effect until now)
Changelog:
https://groups.google.com/a/mozilla.org/g/dev-tech-crypto/c/ux-yy4Yk33U
MFH: 2026Q3
Sponsored by: Netzkommune GmbH
linuxkpi: Define `DEFINE_CLASS()` and `CLASS()`
`DEFINE_CLASS()` is in fact named `LINUXKPI_DEFINE_CLASS()` because it
conflicts with `DEFINE_CLASS()` defined in <sys/kobj.h>.
This macro defines a type and a pair of constructor/destructor
functions.
They are to be used by `CLASS()`: this one declares a variable,
initialise it with the constructor and set the `__cleanup()` attribute
to call the destructor once the variable goes out of scope.
The DRM drivers generic code started to use `CLASS()` in Linux 6.13. It
requires the `fd` class to be defined in <linux/file.h>.
Reviewed by: bz
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57583
linuxkpi: Add `pci_map_rom()` and `pci_unmap_rom()`
They were already defined as macros in various places in DRM drivers,
aliasing the `vga_pci_map_bios()` and `vga_pci_unmap_bios()` functions.
Let's move them to linuxkpi and avoid copies everywhere.
Because they use the `vga_pci` code internally, `pci_map_rom()` checks
whether the given device is a video card. If it is not, it logs a "TODO"
and returns NULL.
Reviewed by: bz
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57573
linuxkpi: Add device under parent, not under class
In `device_add()`, the function used to add the given device under its
class. This is used to build a sysctl tree. We ended up with devices or
"pseudo" devices (like the output connectors of a GPU). For example with
an output connector:
sysctl sys.class.drm.card0-DP-1
This device should be added under its parent if it has one. With this
fix, the same output connector is now:
sysctl sys.device.drmn1.card0.card0-DP-1
Reviewed by: bz
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55175
LinuxKPI: Added jiffies64_to_msecs for amdkfd compatibility
jiffies64_to_msecs is used by kfd_process.c in the amd/amdkfd driver
from Linux kernel 6.12.
Submitted by: Sourojeet Adhikari
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D58075
linuxkpi: Define `for_each_if()`
This macro was moved from <drm/drm_util.h> to <linux/util_macros.h> in
Linux 6.15.
Submitted by: Sourojeet Adhikari
Approved by: adrian, bz, emaste, seuros
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57465
devel/py-fortranformat: new port
Generates text from a Python list of variables or will read a line of text
into Python variables according to the FORTRAN format statement passed.
PR: 282396
sysutils/py-saltext.freebsd: new port
This is a Salt extension for interacting with various FreeBSD-specific
commands. The bsd.shadow module, used by all BSDs, is also included.
The modules herein used to be part of Salt, in version 3006, but are now
developed in a separate repository.
PR: 296290
Reviewed by: krion
Approved by: krion (ports)
Sponsored by: ConnectWise
sysutils/py-saltext.zfs: ZFS extensions for Salt 3008
This port contains modules and states that were previously builtin to
Salt 3006, but must now be installed separately.
It includes two patches used internally at Connectwise.
PR: 296290
Reviewed by: krion
Approved by: krion (ports)
Sponsored by: ConnectWise
sysutils/py-salt: 3008.2
Version 3008.1 version works with Python 3.12+. However, it lacks many
states included in Salt 3006, for example ZFS.
Version 3008.2 fixes a regression in the pkg.installed state, though it
wasn't mentioned in Salt's changelog.
PR: 296290
Approved by: krion (maintainer)
Sponsored by: ConnectWise
LinuxKPI: Add tgid to task_struct under sched.h
The amdkfd driver requires the `tgid` to be a part of the `task_struct`.
This patch introduces the `tgid` member to `task_struct`.
Reviewed by: bz
Sponsored By: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D58228