Commit Graph

305362 Commits

Author SHA1 Message Date
Jose Luis Duran 2cfd9fe87b locale: make install Unicode 17.0.0/CLDR 48
Unicode 17.0 adds 4803 characters, for a total of 159,801 characters.
The new additions include 4 new scripts:

- Sidetic
- Tolong Siki
- Beria Erfe
- Tai Yo

https://www.unicode.org/versions/Unicode17.0.0/
2025-12-08 18:44:21 +00:00
Seth Hoffert 0140dc4a68 man typos: Fix pf.conf.5 and jail.2 typos
MFC after:	3 days
Signed-off-by:	Seth Hoffert <seth.hoffert@gmail.com>
Closes:		https://github.com/freebsd/freebsd-src/pull/1919
2025-12-08 12:31:06 -05:00
Goran Mekić ebe7b24166 sound examples: Check if setting property was successful
MFC after:	1 week
Reviewed by:	christos
Differential Revision:	https://reviews.freebsd.org/D54038
2025-12-08 18:21:30 +01:00
Gleb Smirnoff b986aa05a8 lltable: use own lock
Add struct mtx to struct lltable and stop using IF_AFDATA_LOCK, that
was created for a completely different purpose.  No functional change
intended.

Reviewed by:		zlei, melifaro
Differential Revision:	https://reviews.freebsd.org/D54086
2025-12-08 09:20:56 -08:00
Gleb Smirnoff 607f11055d linux: store Linux Ethernet interface number in struct ifnet
The old approach where we go through the list of interfaces and count them
has bugs.  One obvious bug with this dynamic translation is that once an
Ethernet interface in the middle of the list goes away, all interfaces
following it would change their Linux names.

A bigger problem is the ifnet arrival and departure times.  For example
linsysfs has event handler for ifnet_arrival_event, and of course it wants
to resolve the name.  This accidentially works, due to a bug in
if_attach() where we call if_link_ifnet() before invoking all the event
handlers.  Once the bug is fixed linsysfs won't be able to resolve the old
way.  The other side is ifnet_departure_event, where there is no bug, the
eventhandlers are called after the if_unlink_ifnet().  This means old
translation won't work for departure event handlers.  One example is
netlink.  This change gives the Netlink a chance to emit a proper Linux
interface departure message.

However, there is another problem in Netlink, that the ifnet pointer is
lost in the Netlink translation layer.  Plug this with a cookie in netlink
writer structure that can be set by the route layer and used by the Netlink
Linux translation layer.  This part of the diff seems unrelated, but it is
hard to make it a separate change, as the old KPI goes away and to use the
new one we need the pointer.

Differential Revision:	https://reviews.freebsd.org/D54077
2025-12-08 09:20:22 -08:00
Gleb Smirnoff fbf05d2147 linux: separate all ifnet(9) related code into linux_ifnet.c
Remove linux_use_real_ifname().  It is no longer used outside of the
file since 3ab3c9c29c.  There is no functional change.

Reviewed by:		melifaro, dchagin
Differential Revision:	https://reviews.freebsd.org/D54076
2025-12-08 09:20:14 -08:00
John Baldwin acd02443a9 proc0_post: Clear relevant thread stats directly
rufetch() has several other effects besides clearing these per-thread
stats most of which are explicitly discarded by the subsequent calls
to ruxreset().  Just clear the relevant stats directly instead.

Reviewed by:	olce, kib, markj
Differential Revision:	https://reviews.freebsd.org/D54050
2025-12-08 11:16:14 -05:00
John Baldwin dafe50ebd8 thread0: Clear td_rux stats in proc0_post
proc0_post aims to reset the CPU usage accounting for all threads and
processes in the system to zero once the time of day is verified.
However, not all of the per-thread stats were not being cleared,
resulting in over-reported time for thread0 post-boot.

Reviewed by:	olce, kib, markj
Fixes:		bed4c52416 ("Implement RUSAGE_THREAD. Add td_rux...")
Differential Revision:	https://reviews.freebsd.org/D54040
2025-12-08 11:16:13 -05:00
John Baldwin 3f8ed605db ruxreset: Add an inline function to reset all the stats in rusage_ext
Use it in proc0_post to reset per-process CPU usage.

Suggested by:	olce
Reviewed by:	olce, kib
Differential Revision:	https://reviews.freebsd.org/D54049
2025-12-08 11:16:13 -05:00
Cy Schubert 0ff0c19e7f ipfilter: Disable ipfs(8) by default
At the moment ipfs(8) is a tool that can be easily abused. Though the
concept is sound the implementation needs some work.

ipfs(8) should be considered experimental at the moment.

This commit also makes ipfs support in the kernel optional.

Reviewed by:		emaste, glebius
MFC after:		1 week
Differential revision:	https://reviews.freebsd.org/D53787
2025-12-08 08:15:18 -08:00
Cy Schubert d9788eabff ipfilter: Restrict ipfilter within a jail
Add a sysctl/tunable (net.inet.ipf.jail_allowed) to control whether a
jail can manage its own ipfilter rules, pools, and settings. A jail's
control over its own ipfilter rules and settings may not be desireable.
The default is jail access to ipfilter is denied.

The host system can stil manage a jail's rules by attaching the rules,
using the on keyword, limiting the rule to the jail's interface. Or
the sysctl/tunable can be enabled to allow a jail control over its own
ipfilter rules and settings.

Implementation note: Rather than store the jail_allowed variable,
referenced by sysctl(9), in a global area, storing the variable in the
ipfilter softc is consistent with ipfilter's use of its softc.

Discussed with:		emaste, jrm
MFC after:		1 week
Differential revision:	https://reviews.freebsd.org/D53623
2025-12-08 08:15:18 -08:00
Mark Johnston 0f0662c6b4 pf: Fix error handling in pf_handle_get_tstats()
- pfr_table_count() can return an error.
- We must check for failure from mallocarray(M_NOWAIT).

Fixes:		9e8d2962aa ("pf: convert DIOCRGETTSTATS to netlink")
Reported by:	Kevin Day <kevin@your.org>
Reviewed by:	kp
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D54094
2025-12-08 14:09:02 +00:00
Mark Johnston 73586fcea6 libkern: Avoid a one-byte OOB access in strndup()
If the length of the string is maxlen, we would end up copying maxlen+1
bytes, which violates the contract of the function.  The result is the
same since that extra byte is overwritten.

Reported by:	Kevin Day <kevin@your.org>
Reviewed by:	imp, kib
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D54093
2025-12-08 14:08:22 +00:00
Mark Johnston 792221630b rtsold: Fix a buffer leak if we fail to read the default router sysctl
MFC after:	1 week
Reported by:	Kevin Day <kevin@your.org>
2025-12-08 14:08:13 +00:00
Mark Johnston 0795e9b53c pf: Fix an off-by-one in pf_handle_getcreators()
Reviewed by:	kp
Reported by:	Kevin Day <kevin@your.org>
MFC after:	1 week
Fixes:		a7191e5d7b ("pf: add a way to list creator ids")
Differential Revision:	https://reviews.freebsd.org/D54083
2025-12-08 14:08:13 +00:00
Jessica Clarke 97a24b350c prepare-commit-msg: Add missing tabs to Fixes: and Event:
Although these line up when prefixed with "# ", once the comment prefix
is deleted they no longer do. Add an extra tab to each to compensate,
just like "Obtained from:".
2025-12-08 13:26:00 +00:00
Jessica Clarke 5d58198ccc imgact_elf: Fix off-by-one in note size check
Prior to c86af2cc4c ("imgact_elf: Check note body sizes"), this was
note_name + n_namesz >= note_end, which checks that there is at least
one byte after the unpadded name (which could be either padding or
data), and given our notes always have data with them this was fine.
However, once we started checking the padded name (note that "FreeBSD\0"
is already a multiple of 4 bytes, so has no padding) and data, this
turned into checking that there is at least one byte after the unpadded
data, and since our ELF notes already have a multiple of 4 bytes for
their data and therefore have no padding, this means that we are now
checking that there is at least one byte after the ELF note, which is
not going to be the case for the last ELF note. Instead, switch this to
a strict greater than, as should be used when comparing one-past-the-end
pointers, which both sides of the inequality are.

For executables, this was generally not a problem in reality, since the
last of our ELF notes is NT_FREEBSD_NOINIT_TAG, which isn't read by the
kernel. However, ld-elf.so.1 (and libcompat variants), like shared
libraries, only has NT_FREEBSD_ABI_TAG, which meant the kernel did not
see this ELF note when directly executing it (e.g. as done by ldd), and
on RISC-V this is the only branding present, so doing so would fail with
ENOEXEC. This does also mean on non-RISC-V direct exec ld-elf.so.1 runs
with the wrong p_osrel, but given it sets kern.proc.osrel.PID to the
executable's NT_FREEBSD_ABI_TAG that it loads, this probably doesn't
matter in practice.

PR:		291446
Reported by:	bdragon
Tested by:	bdragon
Fixes:		c86af2cc4c ("imgact_elf: Check note body sizes")
MFC after:	3 days
2025-12-08 13:01:57 +00:00
Martin Matuska 2f6c77cd6f zfs: unbreak build after 89f729dcc merge
Link zfsd against spl and pthread
2025-12-08 13:21:26 +01:00
Dag-Erling Smørgrav de670c611b nextboot: Reimplement missing -a option
* Reimplement the -a option which was available in the original shell
  script and is still documented.

* Print the correct usage string when invoked as nextboot.

* Add the -D option to the manual page synopsis.

MFC after:	1 week
Fixes:		fd6d47375a ("rescue,nextboot: Install nextboot as a link to reboot, rm nextboot.sh")
Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D54120
2025-12-08 11:30:17 +01:00
Dag-Erling Smørgrav e540e8b2c0 noshutdown: Fix startup order
This rc script exists solely to create a file, so have it explicitly
require FILESYSTEMS.  In its current form, it was as likely as not to
end up running before cleanvar, which would undo its work.

MFC after:	3 days
Fixes:		384d976725 ("rc.d: Add precious_machine rc.conf knob to create /var/run/noshutdown")
Reviewed by:	kib
Differential Revision:	https://reviews.freebsd.org/D54119
2025-12-08 11:30:10 +01:00
Dag-Erling Smørgrav 6ce227d627 cleanvar: Fix startup order
Instead of having FILESYSTEMS require cleanvar, which doesn't really
make semantic sense, say that cleanvar needs to run before FILESYSTEMS.

MFC after:	3 days
Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D54118
2025-12-08 11:30:05 +01:00
Bjoern A. Zeeb f0ea859229 iwmfw(4): fix spelling of the iwm8000C firmware.
When migrating the firmware to be installed as plain firmware files
to /boot/firmware the iwm8000C firmware lost its "fw" suffix that
iwm(4) expects.
The follow-up change to defaults/loader.conf is also consistently
missing the "fw".

Fix both places, and add the wrongly spelt version to ObsoleteFiles.inc
(entirely untested).

PR:		291403
Reported by:	Augustin Hoffmann (avgwst tutanota.de)
Fixes:		af0a81b647
Fixes:		a0f06dfb0d
MFC after:	3 days
2025-12-08 03:16:00 +00:00
Martin Matuska 8b78d412ae zfs: world changes after 89f729dcc merge
Remove, unbind and obsolete libuutil and libtpool
Update zfs_configh and zfs_gitrev.h
2025-12-07 23:09:12 +01:00
Martin Matuska 66e8575559 zfs: merge openzfs/zfs@89f729dcc
Notable upstream pull request merges:
 #17932 1f3444f2b zpool: fix special vdev -v -o conflict
 #17934 -multiple Remove libuutil
 #17941 88d012a1d Fix snapshot automount expiry cancellation deadlock
 #17942 36e4f1888 Fix taskq NULL pointer dereference on timer race
 #17946 39303feba chksum: run 256K benchmark on demand, preserve
                  chksum_stat_data
 #17948 -multiple Remove libtpool
 #17957 e37937f42 ztest: fix broken random call
 #17960 928eccc5b DDT: Reduce global DDT lock scope during writes
 #17961 48f33c1ef DDT: Make children writes inherit allocator
 #17975 7f7d4934c FreeBSD: Fix uninitialized variable error
 #17980 a5b665df3 DDT: Switch to using wmsums for lookup stats
 #18004 ffaea0831 FreeBSD: Remove HAVE_INLINE_FLSL use

Obtained from:	OpenZFS
OpenZFS commit:	89f729dcca
2025-12-07 22:38:13 +01:00
Dag-Erling Smørgrav c51876a107 libsysdecode: Use consistent include path
mkioctls should look at the same set of headers as mktables does.

MFC after:	1 week
Fixes:          139d114acc ("libsysdecode use MKTABLES_INCLUDEDIR")
Sponsored by:	Klara, Inc.
Sponsored by:	NetApp, Inc.
Reviewed by:	sjg
Differential Revision:	https://reviews.freebsd.org/D54106
2025-12-07 14:06:41 +01:00
Jonathan T. Looney 3f10e59850 ip6: Add explicit lock order information to catch LOR
Over the past several years, we have had sporadic reports of a lock
order reversal between the tcphash lock and the in6_ifaddr_lock.
These seems to be hard to reproduce reliably, and the WITNESS backtrace
points to code which uses the correct locking order.

This commit adds the correct lock order explicitly to help us detect
the call stack which uses the incorrect locking order.

PR:		289184
Reported by:	bz, gbe
Reviewed by:	bz, glebius
Differential Revision:	https://reviews.freebsd.org/D54088
2025-12-06 19:58:46 +00:00
Gleb Smirnoff 6f4debc004 tcp: fix build with RSS
PR:	291439
Fixes:	73fe85e486
2025-12-06 08:32:08 -08:00
Gleb Smirnoff a83191c928 net: fix LINT-NOIP build
Fixes:	fd131b47f2
2025-12-06 08:23:19 -08:00
Christos Margiolis 643a606fa2 sndctl(8): Do not free and re-open device
There was a reason for this, but it does not apply anymore.

Sponsored by:	The FreeBSD Foundation
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D54031
2025-12-06 15:28:08 +01:00
Jose Luis Duran d20da5c973 locale: Update Unicode to CLDR 48
Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53983
2025-12-06 12:20:20 +00:00
Jose Luis Duran 13ae4904ad locale: Update to UCD 17.0.0
Starting with Unicode 17.0.0, the zipped versions of the data files are
only published in https://www.unicode.org/Public/<version>/ucd/

https://www.unicode.org/Public/zipped/ReadMe.txt

Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53982
2025-12-06 12:20:19 +00:00
Jose Luis Duran 934364da7f locale: tools: Make finalize idempotent
The finalize script renames source files with 3 components in their name
into names with two components with an @modifier, in the process.

Running the script for a second time without cleaning will strip the
@modifier from the files, producing invalid Makefiles and unusable
locales.

Prevent this by adding a guard at the beginning of the script.

Also, use a sub-shell for directory changes to avoid working directory
issues.

Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53981
2025-12-06 12:20:19 +00:00
Jose Luis Duran 36cfa8093d locale: make install
Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53962
2025-12-06 12:20:18 +00:00
Jose Luis Duran 95f37aa3e5 cldr2def.pl: Fix make install
Follow up on 86c71e97d1 ("pkgbase: locales: Also tag the files dir"),
and adapt cldr2def.pl script in order to fix make install.

Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53961
2025-12-06 12:20:18 +00:00
Jose Luis Duran 9df8243a2e locale: make posix
Run make posix to generate monetary definition files with the
international parameters missing from localeconv(3)'s lconv struct.

Manually convert the "frozen" non-unicode locales under share/monetdef.

Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53917
2025-12-06 12:20:17 +00:00
Jose Luis Duran 30aa5507f3 locale: make build to bump widths.txt
Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53916
2025-12-06 12:20:16 +00:00
Jose Luis Duran faf33e0501 cldr2def.pl: Add international currency parameters
Add the missing international monetary parameters present in the lconv
struct.

See also https://unicode-org.atlassian.net/browse/CLDR-237.

Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53915
2025-12-06 12:20:16 +00:00
Jose Luis Duran 09701dc19c cldr2def.pl: Cleanup white space
No functional change intended.

Reviewed by:	bapt
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53914
2025-12-06 12:20:15 +00:00
Bjoern A. Zeeb c68126ec25 ath11k: add new files to module Makefile
Add the new files to the module Makefile as well, so they do not get lost.
2025-12-06 10:24:29 +00:00
Bjoern A. Zeeb 9c2f321630 ath11k: start making compile some more
There is more work to do to make this compile again but we will do that
when we get to the driver.  For now just take the most noise out of it.
2025-12-06 10:21:31 +00:00
Bjoern A. Zeeb c95ea407b3 ath11k: update Atheros/QCA's ath11k driver
This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
7d0a66e4bb9081d75c82ec4957c50034cb0ea449 ( tag: v6.18 ).

Merge commit '989a88787ef2c1a73f44b82031a6f4f4470e2676'

Sponsored by:   The FreeBSD Foundation
2025-12-06 10:16:36 +00:00
Bjoern A. Zeeb fe7b6fc324 LinuxKPI: ath10k: adjust for led changes to keep ath10k compiling
Add the conditional compile time option defaulting to off as we do
not support leds in LinuxKPI to ath10k for the new file.

Add empty struct gpio_led to LinuxKPI.

MFC after:	3 days
2025-12-06 09:59:11 +00:00
Bjoern A. Zeeb 9954217599 ath10k: update Atheros/QCA's ath10k driver
This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
7d0a66e4bb9081d75c82ec4957c50034cb0ea449 ( tag: v6.18 ).

Merge commit 'f4669ef6cf7860919442e67106e83f616ed36f51'.

Sponsored by:	The FreeBSD Foundation
2025-12-06 09:51:10 +00:00
Bjoern A. Zeeb 28125d24c9 ath-common: update common Atheros/QCA code
This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
e5f0a698b34ed76002dc5cff3804a61c80233a7a ( tag: v6.17 ).

Merge commit '99ad6f4f54c86845d6e3f03541913c07fcdeef59'
2025-12-06 09:47:42 +00:00
Bjoern A. Zeeb 8b4477f6b8 rtw88: update Realtek's rtw88 driver
This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
7d0a66e4bb9081d75c82ec4957c50034cb0ea449 ( tag: v6.18 ).

Merge commit 'e543442afe3ad5b27616575be2d2402b988656eb' into rtw88

Sponsored by:	The FreeBSD Foundation
2025-12-06 09:41:49 +00:00
Jessica Clarke ced7461021 freebsd-update: Mention upgrading packages, not just ports
These days most end users are likely using pre-built packages, not
locally-built ports. Thus be sure to mention this as an important case,
and put it ahead of ports.

Reviewed by:	emaste
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D42968
2025-12-06 00:33:20 +00:00
Li-Wen Hsu 90eda62996 release: Include comms/usbmuxd to DVD to ensure ipheth(4) works
PR:		291370
Reviewed by:	emaste, aokblast, dch
MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D54074
2025-12-06 07:57:48 +08:00
Warner Losh 10efa7c302 nvme: Rename NVME_NS_ADDED to NVME_NS_ALIVE and _CHANGED to _DELTA
NVME_NS_ADDED will conflict with a later change, so change it here.
Likewise NVME_NS_CHANGED.

Sponsored by:		Netflix
2025-12-05 16:18:12 -07:00
Warner Losh f5b812331d nvme: Improve error message for invalid format value
Improve the wording of the invalid namespace value. Reword the comment
and move a line of code to the block it logically belongs to.

No functional changes intended.

Sponsored by:		Netflix
Differential Revision:	https://reviews.freebsd.org/D51393
2025-12-05 16:18:12 -07:00
Krzysztof Galazka c6212b7da1 ice(4): Add support for 40G maximal PMD speed
E823 backplane devices may support 40G as maximal PMD speed.
Extend port topology reading logic to handle this case.
While at that fix indentation according to FreeBSD style(9).

Signed-off-by: Krzysztof Galazka <krzysztof.galazka@intel.com>

Tested by:	gowtham.kumar.ks_intel.com
Approved by:	kbowling (mentor), erj (mentor)
Sponsored by:	Intel Corporation
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D53587
2025-12-05 23:02:51 +01:00