aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* geom_zero.4: DocumentHEADmainMateusz Piotrowski2025-11-093-1/+178
| | | | | | | | | | PR: 250593 Reviewed by: bcr, ziaee Thanks to: imp, markj MFC after: 1 week Fixes: 3843eba85d98 Add unmapped BIO support to GEOM ZERO Fixes: 24e1fdcd1a69 Allow to specify the byte which will be used for filling read buffer Fixes: 565bc101112c Add a very simple and small GEOM class - ZERO
* multicast tests: Run in VNET jailsMark Johnston2025-11-091-0/+2
| | | | | | | The tests themselves create identically named jails, resulting in spurious failures when the tests are run in parallel. MFC after: 1 week
* rm(1): remove whiteouts when forcibly removing directoriesJason A. Harmening2025-11-091-2/+2
| | | | | | | | | | | | | | | | | | | | Commit 2ed053cde5 changed UFS' VOP_RMDIR() behavior to no longer ignore whiteouts when determining whether a directory is empty, unless explicitly requested by the caller. However, this also necessitates a change to rm(1) to avoid breaking the expected behavior when forcibly removing directory hierarchies via `rm -fr`. I neglected to make this follow-on change despite discussing it in the review for the breaking commit (D45987). Finally address the breakage by making `rm -fr` imply FTS_WHITEOUT when rm(1) reads directory contents via fts_read(3). While here, also fix a logic error which produces a spurious 'No error' warning message on stdout for each deleted whiteout. Reported by: csjp Reviewed by: csjp, kib, olce MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53640
* netlink: plug lock leak in genl_register_family()Bruno Silvestre2025-11-081-1/+3
| | | | PR: 290893
* bsdinstall: Fix newfs bsddialog menuEd Maste2025-11-081-7/+7
| | | | | | | | | | | | | The second and third members of struct bsddialog_menuitem are `bool on` and `unsigned int depth`. The newfs dialog options in bsdinstall's partition tool had these two swapped, so the default selection did not work. PR: 290857 Reviewed by: asiciliano Fixes: 50e244964e9b ("bsdinstall/partedit: Replace libdialog with libbsddialog") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53639
* dtrace.1: Document DTRACE_DEBUGMateusz Piotrowski2025-11-081-1/+9
| | | | | | Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53627
* utx.8: protect first name "Ed"Wolfram Schneider2025-11-081-1/+1
| | | | | For some people "Ed" is a first name, but for mandoc it is a macro (end of display block) and needs to be escaped.
* random: Have RANDOM_PURE_START be a cross-platform sourceDavid E. O'Brien2025-11-073-13/+13
| | | | | | | | | | | and one that will be with us in the long-term future. (this helps reduce diffs in the future and for down-stream users that trim entropy sources). Also, move deprecated (removed in 16.0) sources to the bottom of the list to reduce changes to 15.x. Reviewed by: glebius Obtained from: Juniper Networks Differential Revision: https://reviews.freebsd.org/D53311
* safe(4): fix api usedDavid E. O'Brien2025-11-071-1/+1
| | | | Fixes: 9b7d2cee
* release: Add WITHOUT_QEMU to IMAKEColin Percival2025-11-071-1/+1
| | | | | | | | | | We have NO_ROOT here, so we need WITHOUT_QEMU to avoid problems. 15.0 candidate. Reviewed by: emaste, markj MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53637
* sh: Implement simple parameter expansion in PS1 and PS2Matthew Phillips2025-11-078-1/+181
| | | | | | | | | | This change follows a localized approach within getprompt() and avoids full parser reentry. While this means we don't support advanced expansions like ${parameter#pattern}, it provides POSIX-compliant basic parameter expansion without the complexity of making the parser reentrant. This is sufficient for the vast majority of use cases. PR: 46441
* safe(4): add gone_in 16.0David E. O'Brien2025-11-072-1/+17
| | | | | Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D53426
* bsd-family-tree: Re-center OpenBSD lineEd Maste2025-11-071-344/+344
| | | | | | | | | | Commit 09aeca28dd75 ("BSD family tree: reduce OpenBSD-NetBSD crowding") moved OpenBSD releases over 2 spaces. Move the line through OpenBSD releases over as well. Reviewed by: obrien Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53635
* mpr.4: Remove Broadcom LSI 3908 from support listJiacong Fang2025-11-071-2/+0
| | | | | | | | | "This one is my fault due to incorrect merging" ~ziaee MFC after: 3 days Reviewed by: ziaee Fixes: 744c8d554453 (mpr.4: Add Broadcom LSI 3808) Differential Revision: https://reviews.freebsd.org/D53634
* jail.8: Add creating a jail from distribution setAlexander Ziaee2025-11-071-3/+17
| | | | | | | PR: 200803 MFC after: 3 days Reviewed by: jamie Differential Revision: https://reviews.freebsd.org/D53631
* sh tests: Fix racy test11.0Bryan Drewery2025-11-071-2/+2
| | | | | | | | | This was sometimes exiting while the child fifo was created resulting in [ENOTEMPTY] from rm. The child fifo isn't needed, just sleep. PR: 290837 Fixes: e31fb97148f ("read builtin: Empty variables on timeout") MFC after: 3 days
* tcp: improve comments in the syncache codeMichael Tuexen2025-11-071-1/+12
| | | | | | | | | | Add a comment explaining why syncache entries are dropped and fix a typo in a comment. Reviewed by: rrs, glebius MFC after: 3 days Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D53564
* BSD family tree: reduce OpenBSD-NetBSD crowdingDavid E. O'Brien2025-11-071-60/+60
| | | | | | | | OpenBSD was nearly against the NetBSD entries, especially in their earlier lineages. Now line up "OpenBSD" with | at the 'e'. Reviewed by: gordon (in person) Differential Revision: https://reviews.freebsd.org/D53509
* release: Comply with Azure Marketplace requirements for aarch64Li-Wen Hsu2025-11-071-1/+5
| | | | | | | | | | | | | | | Azure requires the first 1 MB (2,048 sectors) of the OS disk to remain empty for VM images: https://learn.microsoft.com/partner-center/marketplace-offers/azure-vm-certification-faq#vm-images-must-have-1-mb-of-free-space Also append the BOOTPARTSOFFSET suffix for aarch64 images, which only has an ESP partition for booting. Co-authored-by: Brad Davis <brd@FreeBSD.org> Approved by: cperciva Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53628
* libsys: install manpage links for jail_attach_jd/jail_remove_jdChristian S.J. Peron2025-11-071-1/+3
| | | | | | | | | This was a minor oversight from their introduction. Commit message by kevans@. Fixes: 851dc7f859c23 ("jail: add jail descriptors") Reviewed by: kevans
* dtrace.1: Fix mdoc macros around -xMateusz Piotrowski2025-11-061-1/+1
| | | | | | There should be no space between -x's "arg" and "=value". MFC after: 3 days
* dtrace_pid.4: Document the DTrace PID providerMateusz Piotrowski2025-11-063-1/+102
| | | | | MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D51287
* ports.7: Add /var/db/ports to FILESMateusz Piotrowski2025-11-061-1/+5
| | | | | | PR: 272426 MFC after: 3 days Co-authored-by: Piotr Smyrak <ps.ports@smyrak.com>
* iwlwifi: fix the gcc buildEnji Cooper2025-11-061-2/+2
| | | | | | | | | | | | | | | - Only apply the previously added CWARNFLAGS to `drv.c` instead of the whole module. - Only apply `-Wno-initializer-overrides` to CWARNFLAGS in the clang scenario as it's not supported with gcc. This fixes building the module with gcc and avoids accidentally introducing tech debt with the module, in the event other issues are accidentally introduced. MFC after: 3 days Fixes: 6b627f8858 ("iwlwifi: update Intel's mvm/mld drivers") Differential Revision: https://reviews.freebsd.org/D53591
* kern_jail_set(): do not double-free optsKonstantin Belousov2025-11-061-2/+5
| | | | | | | | | | If vfs_buildopts() failed, vfs_freeopts() must not be called. Reported and tested by: pho Reviewed by: jamie Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential revision: https://reviews.freebsd.org/D53612
* cam: Add a number of asserts to catch bad transactionsWarner Losh2025-11-062-0/+93
| | | | | | | | | | | Ensure that we're in the right state / priority for each of the states in the driver. These asserts assured that a prior patch that I committed to fix a priority leak worked when a drive departed (and bounced back too!). These have been running in our production since I committed the change and haven't trigged. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D53259
* sysrc.8: Rewrite examples for mdoc conformanceAlexander Ziaee2025-11-061-48/+41
| | | | | | | Tag SPDX while here. This is not a content change, so do not bump date. PR: 274164 MFC after: 3 seconds
* dumpon.8: use .Nm macro when refer to itselfMaxim Konovalov2025-11-061-2/+2
| | | | Bump .Dd too while I am here.
* ciss.4: Add p440ar to HARDWAREAlexander Ziaee2025-11-061-3/+6
| | | | | | PR: 290425 MFC after: 3 seconds, this fixes the HW relnotes Reported by: jwb
* dumpon(8): Add a SYSCTL VARIABLES sectionFelix Johnson2025-11-061-0/+15
| | | | | | | | | Document debug.minidump and machdep.dump_retry_count sysctl variables. PR: 259393 MFC after: 3 seconds Reviewed by: gbe (previous), markj, ziaee Differential Revision: https://reviews.freebsd.org/D32618
* freebsd-update: Swap pkg(8) flags in check_pkgbase()Mark Johnston2025-11-061-1/+1
| | | | | | | | | | | | Unbootstrapped pkg will ignore -N if -r is specified first. Flip the order. Prior to commit 66c75fa63aff this worked by accident. PR: 290393 Reported by: olgeni MFC after: 3 days Fixes: 66c75fa63aff ("freebsd-update: Fix the pkgbase check")
* stand: Teach the zfs loader about dynamic gang headersMark Johnston2025-11-062-26/+56
| | | | | | | | | | | | | | | | | | There is a pool feature, dynamic_gang_header, that is enabled by default in new pools. When this feature is active, gang headers may be larger than 512 bytes. The loader needs to be taught to cope with that. Try using the vdev ashift to pick the gang block header size. If the checksum fails, fall back to the old gang block header size. This is based on a patch by Paul Dagnelie, with testing, bug-fixing and some simplifications from me. PR: 289690 Co-authored by: Paul Dagnelie <paul.dagnelie@klarasystems.com> Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53578
* lib/ofed: Move to the rdma packageLexi Winter2025-11-061-0/+3
| | | | | | | | | | | | | | | | | | | | We have an existing rdma package for IB/rdma-related files, but most of ofed isn't in that package, making it rather useless. Move all of lib/ofed to the rdma package. Add a separate rdma-lib package using LIB_PACKAGE, since utilities depends on the rdma libraries and we don't want that to pull in all of rdma. This change moves files between packages so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. PR: 263227 MFC after: never Reviewed by: manu Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53604
* lib/googletest: Move to a new googletest packageLexi Winter2025-11-066-19/+60
| | | | | | | | | | | | | | | | | | | gtest/gmock are not normally used by users unless running the tests, so they shouldn't be in the utilities package. Move them to a new googletest package, to match what we did with ATF/Kyua. While here, move tests dependencies from tests-all.ucl to tests.ucl, which is the canonical place for that. This change adds a new package to the system so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reported by: emaste Reviewed by: manu Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53607
* share/doc/llvm: Move to the clang packageLexi Winter2025-11-063-2/+5
| | | | | | | | | | | This change moves files between packages so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: manu, dim Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53608
* periodic: Move 320.whatis to the mandoc packageLexi Winter2025-11-062-6/+6
| | | | | | | | | | | | | | | | | | This periodic script only makes sense if mandoc is installed, so move it to the mandoc package like other periodic scripts. /usr/libexec/makewhatis.local only exists for the enjoyment of this script, and doesn't work without mandoc installed, so move that as well. This change moves files between packages so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Reviewed by: ziaee, manu Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53609
* ncurses: Move termcap and tabset to ncurses-libLexi Winter2025-11-064-6/+13
| | | | | | | | | | | | | | | | | | | termcap and tabset are currently in runtime, but since ncurses is the only thing which uses them, they belong in the ncurses package. curses without termcap is not very useful, so put them in the -lib subpackage rather than ncurses itself, so that installing ncurses-lib provides a working curses. This change moves files between packages so, until we have a proper policy on how to handle this in release/stable branches, it should not be MFC'd. MFC after: never Discussed with: kevans Reviewed by: manu, kevans Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53610
* Revert "kern: RACCT: Keep process credentials alive via references"Mark Johnston2025-11-064-56/+20
| | | | | | | | | The change causes a panic on boot with INVARIANTS kernels. Revert for now. This reverts commit a5d1a0c9bfcca38528b861c5afb51ea9b1696b65. Reported by: syzbot+74624c6fcbb384ea0113@syzkaller.appspotmail.com
* mixer(8): Update FILES sectionChristos Margiolis2025-11-061-26/+18
| | | | | | | | | While here, change "N" to "X" to match sndctl.8's notation. Sponsored by: The FreeBSD Foundation MFC after: 4 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D53503
* etc/mtree/BSD.include.dist: Remove libipt-devLexi Winter2025-11-061-1/+1
| | | | | | | | | | | | | | This package only exists on amd64, which means on other platforms we produce an empty package containing nothing but this directory, and without a base package (libipt) that package fails to install due to a missing dependency. For now, fix this by removing the libipt-dev package tag, which moves this directory to clibs. Fixes: 436618a427b4 ("etc/mtree: Add package tags for /usr/include") Reported by: cperciva MFC after: 3 seconds
* kern: RACCT: Keep process credentials alive via referencesOlivier Certner2025-11-064-20/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In system calls changing process credentials, on RACCT, calls to racct_proc_ucred_changed() must be issued on the new credentials. Currently, this is done after the new credentials have been installed on the process via proc_set_cred() or proc_set_cred_enforce_proc_lim(), which modifies 'p_ucred'. Only the process lock guarantees that the new credentials pointed to by 'p_ucred' cannot themselves be concurrently modified, which would cause their 'struct ucred' to potentially lose its last reference from the process before the call to racct_proc_ucred_changed(), which needs one. For better code understandability and to avoid errors in future modifications, stop relying on proc_set_cred*() storing the passed 'struct ucred' in the process 'p_ucred' and on the process lock to avoid the reference taken by proc_set_cred*() to vanish. Instead, ensure that a reference is held when racct_proc_ucred_changed() is called. As racct_proc_ucred_changed() is actually passed explicit pointers to the old and new credentials, there is in fact no need to call it after proc_set_cred(). Instead, call it before proc_set_cred() and its taking over the reference. Since setcred() uses proc_set_cred_enforce_proc_lim(), which can fail, instead of proc_set_cred(), we instead take an additional reference with crhold(). Indeed, racct_proc_ucred_changed() should update resource accounting only if proc_set_cred_enforce_proc_lim() succeeds (an alternative would be to call it in advance and then in case of failure of the latter to call it again in order to backpedal the updated accounting, but we don't see a compelling reason to do that instead of taking an additional reference). While here, add to the documentation of proc_set_cred_enforce_proc_lim() that it does not take over the credentials reference in case of failure. While here, in racct_proc_ucred_changed()'s herald comment, add the precise condition in which this function must be called. No functional change intended. Reviewed by: kib MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53563
* mpr.4: Add Broadcom LSI 3808 to HARDWAREJiacong Fang2025-11-061-1/+5
| | | | | | | | | | | The product brief "MegaRAID 9500 PCIe Gen 4.0 Tri-Mode Storage Adapters" confirms that the LSI 3808 are supported in FreeBSD. https://docs.broadcom.com/doc/MegaRAID-9500-Tri-Mode-Storage-Adapters MFC after: 3 days Reviewed by: imp, ziaee Differential Revision: https://reviews.freebsd.org/D52760
* ktrace: Only enable EXTERROR traces for 'x'John Baldwin2025-11-061-0/+1
| | | | | | | Add a missing break statement to avoid falling through to the '+' case. Fixes: 96f4be881e8e ("ktrace(1): teach about KTR_EXTERR")
* mlx5: Preallocate ktls tags asynchronouslyAndrew Gallatin2025-11-053-9/+50
| | | | | | | | | | | | | | | | | | | | | | | | Change tag preallocation to happen asynchronously when an interface is brought up, so as to reduce boot times when preallocating tags. - A new mlx5-tls-prealloc_wq is allocated when preallocation is desired, and started when an interface is opened - The bulk of the prealloc code remains the same, except the allocations are now M_NOWAIT. M_NOWAIT is needed because, since the preallocation is done asynchronously, and since tag allocation is not instant, we could race with a real TLS session trying to allocate a tag. Note that in this case, we take allocation failure as a sign that we were unable to obtain the entire zone due to there being other consumers. This was suggested by @markj as a way to keep things simple, after discussing why uma_zone_get_cur() didn't immediately report a fully allocated zone. If this turns out to be problematic, we could use uma_zone_set_maxaction() to stop pre-allocations (also suggested by Mark) Reviewed by: glebius, kib, markj Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D53570
* inetd.8: Remove the enumeration of examplesLexi Winter2025-11-051-39/+1
| | | | | | | | | | | The user can trivially see the list of examples in /etc/inetd.conf by looking at the file, so there's no need to include an entire paragraph in the manual enumerating the examples which are provided. MFC after: 3 days Reviewed by: 0mp Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52740
* ice.4: Add ToC and E835 and editorial passAlexander Ziaee2025-11-051-148/+224
| | | | | | | | | | | | | | | | | | | | | | | | | This manual is large enough and well structured enough that we can have a clickable table of contents. Use that to move some subsections which should not appear in Hardware Release Note to the description section. Adjust subsection names so this will work, preserving parentheticals for search by moving them to the bodies just below. Strip unnecessary copyright symbols and escaped hyphens. Copyright symbols never appear in the content of manual pages, including other Intel manual pages, and appear to break the Hardware Release Notes. Escaped hyphens were necessary decades ago for manual pages written in man(7), but this page is written in mdoc(7). Also misc touchups. Add the recently added E835 devices to the supported HARDWARE list. Add the speed ranges to description like the other ethernet drivers. PR: 290778 MFC after: 1 day Fixes: 09b48f811b4b (Add support for E835-XXV-4 adapter) Fixes: b202176dc76d (Add PCI IDs for E835 devices) Reviewed by: kgalazka (previous version) Reported by: kgalazka (additional hardware has been added) Reported by: bigsneaky@duck.com (HW Relnote is truncating)
* libdtrace: Update io.d to chase changes to struct bio layoutMark Johnston2025-11-051-1/+1
| | | | Fixes: 6c406b5b9312 ("exterror(9): add infra for bufs and bios")
* libcrypto: Install tests in the tests packageLexi Winter2025-11-051-1/+1
| | | | | | | | | | | | libcrypto's Makefile.inc used PACKAGE=openssl, which overrides the PACKAGE=tests in libcrypto/tests/Makefile. Use PACKAGE?=openssl instead to avoid this. This puts the OpenSSL tests in the tests package where they belong. MFC after: 1 day Reviewed by: manu, ngie Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53595
* atf: Move the tests back to the tests packageLexi Winter2025-11-059-2/+18
| | | | | | | | | | | Commit 9065390ddc7b moved atf to its own package, but mistakenly moved the tests as well. Put the tests back into the test package. Fixes: 9065390ddc7b ("packages: Remove the tests-dev package") MFC after: 1 day Reviewed by: emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53594
* ipfilter: Don't trust userland supplied iph_sizeCy Schubert2025-11-052-0/+11
| | | | | | | | | | | | | | | | | | | ipf_htable_create() trusts a user-supplied iph_size from iphtable_t and computes the allocation size as iph->iph_size * sizeof(*iph->iph_table) without checking for integer overflow. A sufficiently large iph_size causes the multiplication to wrap, resulting in an under-sized allocation for the table pointer array. Subsequent code (e.g., in ipf_htent_insert()) can then write past the end of the allocated buffer, corrupting kernel memory and causing DoS or potential privilege escalation. This is not typically a problem when using the ipfilter provided userland tools as calculate the correct lengths. This mitigates a rogue actor calling ipfilter ioctls directly. Reported by: Ilja Van Sprundel <ivansprundel@ioactive.com> Reviewed by: markj MFC after: 1 week Differential revision: https://reviews.freebsd.org/D53286