Commit Graph
6344 Commits
Author SHA1 Message Date
Ahmad Khalifa 7324487562 universe.sh: don't overwrite no_zfs's build log
Give the WITHOUT_LOADER_BIOS_TEXTONLY build its own log file.
2026-09-09 16:59:52 +03:00
Ahmad Khalifa 1de79e73a8 universe.sh: add MK_BEARSSL build
BEARSSL is disabled by default, add this here to make sure it doesn't
break.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D59516
2026-09-09 06:41:14 +03:00
Ahmad Khalifa bac0daa9cb universe.sh: build with 1.5 * ncpu jobs
Build with 1.5 * ncpu jobs instead of hardcoding 40.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D59515
2026-09-09 06:41:05 +03:00
Robert Clausecker d1c07141dc manpages: Fix author e-mail address formatting
- consistently use Mt request within Aq.  This makes author
   e-mail addresses clickable in many frontends.
 - @freebsd.org -> @FreeBSD.org
 - ([email protected]) -> Aq Mt [email protected]

Event:		Berlin Hackathon 202609
MFC after:	3 days
Reviewed by:	ziaee
Differential Revision:	https://reviews.freebsd.org/D59410
2026-09-04 21:46:20 +02:00
Devin Teske 4aeab132f6 git-arc: SC2223 DoS-via-glob hardening
Quote LOCALBASE and ARC_CMD default assignments so a poisoned
value cannot glob into :'s argv.

Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D59130
2026-09-01 18:38:44 -07:00
Devin Teske 6217c9c6f3 git-arc: Fix locals
Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D59162
2026-09-01 18:37:55 -07:00
Oskar Holmlund 533918ced2 nanobsd: Remove pandaboard.cfg
Pandaboard (sys/arm/ti/omap4) is removed due to lack of HW.
Remove the pandaboard config file for nanobsd aswell.

Approved by: imp, jlduran, manu(mentor)
Diffrential revision: https://reviews.freebsd.org/D54319
2026-09-01 00:27:05 +02:00
Christos Longros ef03c60246 kern_mib: remove kern.fallback_elf_brand compat sysctl
This compatibility alias for kern.elf{32,64}.fallback_brand has been
marked for removal since FreeBSD 6.0.

Signed-off-by: Christos Longros <[email protected]>

Reviewed by:	kib, emaste
Differential Revision:	https://reviews.freebsd.org/D56085
2026-08-31 13:23:53 -04:00
Peter Holm 2b93d98aab stress2: Use the new version of fsx in ports instead of the older one in tools/regression
Suggested by:	 asomers
2026-08-27 10:28:45 +02:00
Devin Teske f86c3e6de4 git-arc: Handle -h on subcommands and align usage with the man page
git-sh-setup treats -h as help against an empty USAGE, so
"git arc create -h" prints "usage: git arc". Handle -h before
sourcing it so every subcommand prints the real synopsis.

The create, stage, and update synopses showed optional commit-refs
while git-arc(1) and the code require them. Advertise -p parent on
create; the option was already implemented and documented.

Sort create sub-command option-arguments alphabetically in three
places: (1) synopsis from tool, (2) man-page synopsis, and (3)
man-page description.

Check for jq(1) / arc after checking for usage so -h always works.

While here, fix missing "local o" in gitarc__stage().

Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D59129
2026-08-25 13:46:32 -07:00
Devin Teske 90ed365277 git-arc: Fix inconsistent whitespace
Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D59161
2026-08-25 13:31:54 -07:00
Devin Teske 067ae9850f git-arc: -t tag support for create to set Phabricator project tags
Add -t tag[,...] so a review can be tagged at creation instead of
needing the web UI. Spaces in tag names are written as underscores;
a leading # is optional.

Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D59019
2026-08-24 14:02:41 -07:00
Jason A. Harmening d7033e3b20 unionfs7.sh: eliminate stderr redirection
The bash-ism here results in an "ambiguous output redirect"
error when run under tcsh.  Similar unionfs stress2 tests don't
do this, and unionfs7 doesn't seem to generate spurious output
when run locally, so just delete it.

Reviewed by:		pho
Differential Revision:	https://reviews.freebsd.org/D58856
2026-08-21 20:23:15 -05:00
Peter Holm d58ca84152 Fix zombie leak in test using pdfork() 2026-08-20 10:59:58 +02:00
Peter Holm 8eb77a5aab stress2: Enable two hwpmc tests that now run as expected 2026-08-20 10:55:16 +02:00
Abhijeet Sharma 805c5004fa tools/build: stage stdckdint.h's dependencies for non-FreeBSD hosts
37bd69d43c gave stdckdint.h two new includes, <sys/_visible.h> and
<sys/ckdint.h>.  Neither reaches a non-FreeBSD host: _visible.h is
staged only under ${.MAKE.OS} == "FreeBSD" and ckdint.h is not staged at
all, so the libc bootstrap fails on reallocarray.o when cross-building
from macOS.  Both headers are self-contained; stage them alongside
stdckdint.h.

Fixes:		37bd69d43c ("sys: Add sys/ckdint.h")
Reviewed by:	rpaulo, markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D58943
2026-08-19 12:19:38 +00:00
Mark Johnston ba120b8d38 mfc-candidates: Annotate variables as local
And clean up luacheck warnings.

Sponsored by:	Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D48950
2026-08-17 09:43:25 -04:00
ShengYi Hung 749318f2ae libusb: capsicumize libusb
FreeBSD's libusb has three components: libusb01, libusb10, and libusb20.

libusb20 handles communication with character devices. We now requires a
backend context for libusb20. The backend context contains contains the
capsicumized usbctrl fd and usb directory (/dev/usb) fd so that the
library user can enter the capiblity mode safely while using libusb.

libusb10 is updated to support capabilities via a context option. Since
libusb allows general read/write access, we preserve all possible
capabilities when passing backend context to libusb20. It is the
responsibility of the libusb user to call cap_enter() at an appropriate
time.

All base system tools using libusb and libusb20 have been updated to
support Capsicum.

Reviewed by:    adrian, markj
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D51865
2026-08-14 23:09:08 +08:00
Devin Teske a8347f4428 git-arc: Add a diff subcommand
Show the differences between local commits and their associated
Phabricator reviews, i.e., what "git arc update" would upload.  For
each commit, the review's current raw diff is applied to the commit's
parent in a temporary index and the resulting tree is compared against
the commit itself.  An empty diff means the commit and the review are
in sync.

This makes it easy to check whether local amendments have diverged
from the posted review before updating it, or to confirm that a
review is current before landing.

Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D58789
2026-08-13 13:31:36 -07:00
Dag-Erling Smørgrav 336b6d1192 build: Use -f when copying sources
If one of the source files we copy is non-writeable, cp will create a
non-writeable copy.  If the original is later modified, cp will fail to
overwrite the copy since it is not writeable.  Using cp -f ensures the
copy always succeeds, as long as the object directory is writeable.

MFC after:	1 week
Sponsored by:	Klara, Inc.
Sponsored by:	NetApp, Inc.
2026-08-13 14:31:54 +02:00
Mark Johnston e15d22609c mfc-candidates: Fix remote repo detection
In my repos the remote "freebsd" is [email protected]:src.git.
In particular, the last component is delimited by a colon, not a slash.

Sponsored by:	Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D48951
2026-08-12 14:29:48 -04:00
ShengYi Hung 527a82474c libusb: versioning symbols
Reviewed by:    bapt, kevans
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D55686
2026-08-12 22:49:35 +08:00
Mark Johnston b7b73d0fc1 git-mfc: Make --pending work with releng branches
There is no timeout period for merging from stable to releng branches,
so we should ignore "MFC after" tags.

While here, lift some uses of re.compile() out of loops.

Reported by:	des
2026-08-11 17:02:38 +00:00
Kevin Bowling a6999a1c94 net: Revert the ioctl SR-IOV VF status interface
A native route Netlink interface will replace this stack.

Requested by:	glebius

This reverts commit 1ccf543b21.

This reverts commit 2c04cfa148.

This reverts commit 2d6114f6d2.

This reverts commit d15f2551b2.

This reverts commit ceb282bbd6.

This reverts commit c30021fe0d.

This reverts commit fb1820d23a.

This reverts commit 8696cc600f.
2026-08-10 15:49:55 -07:00
Mark Johnston ba47678b30 git-arc: Use full names in reviewed-by lines
Phabricator user names are not useful identifiers outside of
phabricator, don't use them if we can avoid it.
2026-08-10 17:31:21 +00:00
Kevin Bowling fb1820d23a rescue: Satisfy libifconfig's libnv dependency in crunched links
libifconfig now calls nv(9) routines for the SR-IOV VF status query, so
crunched builds that link the static library must also provide libnv.

The per-program CRUNCH_LIBS_ifconfig hook cannot do this: crunchgen
partially links per-program libraries into the program object and
crunchide then localizes every symbol except the stub entry, so members
absorbed there cannot satisfy references from another archive on the
final link's library list.

List libnv globally next to libifconfig.a in rescue(8) and bsdbox. This
also makes the existing per-program libnv links redundant; remove them
to avoid embedding private localized copies in the crunched binary.

Fixes:	2d6114f6d2 ("libifconfig: Add an SR-IOV VF status query")
2026-08-09 00:53:12 -07:00
Justin Hibbits 7bc06551cc tools/cryptocheck: Fix allow_soft sysctl name 2026-08-06 23:00:02 -04:00
Mark Johnston 2c98dc4e5c git-mfc: Give a useful error message if a remote can't be found 2026-07-30 17:13:17 +00:00
Mark Johnston a7677a680f git-mfc: Add --abort and --continue flags
Instead of making the user run the underlying git-cherry-pick command
after a conflict.

Requested by:	des
Reviewed by:	des
Differential Revision:	https://reviews.freebsd.org/D58514
2026-07-30 17:09:51 +00:00
John Baldwin ee7258cfbb tools/tools/git: Add git-mfc to Makefile similar to git-arc
Reviewed by:	markj
Differential Revision:	https://reviews.freebsd.org/D58531
2026-07-29 14:38:22 -04:00
Mark Johnston b9ea73ceb3 git-arc: Make git arc patch -r smarter
- Make it work even when git arc isn't run from the root of the repo.
- If the patch fails to apply, let git partially apply the patch and
  generate rej files for inspection.

While here, remove the return value from apply_rev(), it's never
actually used.

Reviewed by:	jhb
Differential Revision:	https://reviews.freebsd.org/D58532
2026-07-29 18:22:29 +00:00
Jose Luis Duran 728b3b7c43 nanobsd: Restore boot0cfg functionality
The need for this step is fading, now is mostly used to allow the
selection of just the two code partitions in the boot0 boot manager,
instead of the default of allowing all four MBR slices (the other two
being cfg and data, which cannot boot).

Reviewed by:	imp
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D57311
2026-07-29 16:15:15 +00:00
Mark Johnston b86e364934 git-mfc: Improve handling of remotes
If we can't figure out which remote to use, print a useful error instead
of assuming that "freebsd" is the right remote to use.
2026-07-24 21:10:26 +00:00
Mark Johnston 7392dc9d26 git-mfc: Let the upstream for PRERELEASE branches be main
Such branches are in code slush but are the same as stable branches for
the purpose of MFCs.
2026-07-24 21:09:48 +00:00
Mark Johnston 4c1c2b9dab git-mfc: Slightly relax the regex used to search for reverts
Prompted by commit 9dfaf1cb37 in FreeBSD src.

Reported by:	des
2026-07-24 21:09:42 +00:00
Enji Cooper 4db3872aab Only build secure/libexec/ssh-sk-helper if MK_USB == no
The ssh-sk-helper utility only functions if/when MK_USB == yes.
Installing it on systems where MK_USB == no doesn't make sense.

Differential Revision:	https://reviews.freebsd.org/D58246
2026-07-22 12:33:44 -07:00
Peter Holm ff6574d250 stress2: Added a regression test 2026-07-21 09:53:24 +02:00
Peter Holm 4dc01fe70d stress2: Added a comment 2026-07-21 09:52:57 +02:00
Peter Holm b11a605ebe stress2: Updated the exclude file 2026-07-21 09:52:24 +02:00
Peter Holm 9c6ed9a88d stress2: Added new test scenarios 2026-07-14 09:27:42 +02:00
Warner Losh a7ebe2d436 boot-test.sh: Test many boot loader combinations.
This is a script that eventually will test boot with qemu all the
supproted combinations for the boot loader. There's several things that
could be done with gptboot or boot0sio (or not) that aren't tested. We
don't test the 10-odd hardware root devices we support, nor do we test
complex scenarios like RELAXED vs STRICT zfs efi booting.

However, the scenarios we do support are included here. We test aarch64,
amd64, armv7, powerpc64, powerpc64le, and riscv64 for BIOS, UEFI, and
Prep and OpenFirmware (as appropriate) crossed with CDROM, MBR and GPT
(and some hybrid) crossed with lua, 4th and simple loaders. Plus some
linuxboot and memdisk scenarios, including the recently added
compression for ram disk scenarios:

=== Results: 67 passed, 3 failed, 9 timed out (of 79) ===

The timeouts are well understood, usually failure to find the root
disk. The failures are bad console assumptions. netboot-bios fails
because TFTP with a single packet buffer in qemu gives horrible
throughput, so the test takes 18-20 minutes. Now that I have a
dashboard, I can fix the rest one by one.

There's also a powerpc architecture that you can request specifically,
but it's just for convenience and tests with the non-functional mac99
qemu machine. I will eventually eliminate this architecture. I added it
to make sure the FreeBSD version wasn't too hard coded since this
framework pulls from CD images to get the binaries for the minimal root
used in testing and there's no 15.x 32-bit powerpc images.

We need to add http and nfs root booting tests, but that's for the
future. Plus there's some other functional tests that we should also add
for different types of root (usb, sata, sas, nvme, ufs, emmc, sd, etc)
that would be useful to test, especailly the non-sata/non-nvme ones.
How we do that is still TBD.

I leaned on claude to iterate over the recipes that I've developed over
the years, collected off the internet or got on IRC recently to produce
this framework. Most of this code is fairly good, while a few parts,
especailly some of the comments, are detectable as AI produced. My plans
are to iteratively improve those.  Since this is just a test, and since
I've broken many scenarios w/o realizing, it's a good tradeoff. I've not
made it an ATF test since we test all the architectures, but I'm open to
feedback in this area.

Total time to test all the architectures is about 10 minutes. It assumes
you've built GENERIC* and the boot loader for all the architectures too.
In the future, I plan on moving to MINIMAL for all the boot testing, but
likely only after PCI devmatch is integrated into it. That would be
incrementally faster test times.

The man page is decent, but was also generated by Claude with only
trivial edits by me to date.... But at least there's a man page for it,
though neither it nor the script is installed onto the system.

Sponsored by: Netflix
Assisted-by: Claude Code (Opus 4.6, Opus 4.8(1M) and Sonet 5.0)
Differential Revision:	https://reviews.freebsd.org/D58008
2026-07-11 13:45:37 -06:00
Mark Johnston 9bb576da3f git-mfc: Update exception lists
This silences warnings when running git-mfc --pending against stable/13,
14 and 15.

Reviewed by:	des
Differential Revision:	https://reviews.freebsd.org/D58162
2026-07-10 21:21:59 +00:00
Mark Johnston 8ae306a1c8 git-mfc: Add an ignore-list feature
Commit hashes listed in ~/.git-mfc-ignore are not listed in output of
git-mfc --dangling or --pending.  This is handy for silencing output
about commits that are tagged for MFC or as fixing another commit, but
which were not MFCed for some reason or other.

Requested by:	des
Reviewed by:	des
Differential Revision:	https://reviews.freebsd.org/D58161
2026-07-10 21:21:59 +00:00
Ed Maste 513d3fde7c tools/build: Don't set RANLIB for non-FreeBSD builds
RANLIB is not used by our build, so there is no need to set it.

Reviewed by:	imp
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D58156
2026-07-10 14:16:49 -04:00
Ed Maste ae0a3632b5 build: Retire LLVM_COV src.conf knob
I introduced it in commit 1b49115a40 ("Promote llvm-cov to a
standalone option").  llvm-cov was previously enabled as part of the
CLANG_EXTRAS option.  I made it a standalone, default-enabled option for
parity with the tools provided by the GCC-based toolchain.

We no longer provide an in-tree GCC toolchain.  Now, just build llvm-cov
along with Clang to simplify build infrastructure.

Reviewed by:	dim
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D58155
2026-07-10 11:20:34 -04:00
Ed Maste 7fde3e6223 beinstall: Avoid chrooting into new world
The new world may use system calls that are not in the currently-running
kernel, so we cannot chroot into the new environment to run `make
installworld`, `etcupdate`, etc.  Partially revert commit 16702050ac
("beinstall: perform pre-installworld steps") and switch back to using
DESTDIR for installworld and so on.

Reported by:	olivier
Reviewed by:	olivier
Sponsored by:	The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D50682
2026-07-10 11:04:45 -04:00
Mark Johnston 59a4b6c2a0 git-mfc: Cherry-pick all commits in one git command
This allows one to resume from a conflict with a plain
`git cherry-pick --continue`, whereas before one would have to re-run
the original git-mfc command after resolving the conflict and running
`git cherry-pick --continue`.

Suggested by:	des
Reviewed by:	des
Differential Revision:	https://reviews.freebsd.org/D58129
2026-07-10 14:46:31 +00:00
Mark Johnston 1f091ad283 git-mfc: Filter pending and dangling commits by committer
Previously we searched commits based on the author email address, but
this isn't really right: if I commit something from a contributor, I'm
still responsible for MFCing it, so really we should be filtering on the
committer.

Add a new --committer option to filter results by committer email
address, defaulting to the user.email value in the git config.

Keep the --author option, but don't filter by author unless the option
is explicitly specified.

Reported by:	des
Reviewed by:	des
Differential Revision:	https://reviews.freebsd.org/D58126
2026-07-10 14:44:09 +00:00
Warner Losh bcb1b157fd loader: Add two new build knobs for x86 BIOS loaders
We have two sets of BIOS loaders: One that lives in stand/i386 and one
that lives in stand/userboot. Add knows to turn these on/off, with the
default being on. These often aren't needed when creating a minimal UEFI
system, so add knobs to turn them off.  Given light-weight VMs have
created a new use cases for these loaders, there's no plans at all to
eliminate them.

Sponsored by:		Netflix
Differential Revision:	https://reviews.freebsd.org/D58072
2026-07-09 22:13:07 -06:00
Dag-Erling Smørgrav af202a5052 Retire dialog
This is the last remaining piece of GPL software in the base system.
The installer transitioned to bsddialog four years ago, and the last
remaining dialog consumer, dpv, was turned off more than two years ago.
Retire dpv, libdpv, libfigpar (used only by dpv), and dialog itself.

Reviewed by:	dteske
Differential Revision:	https://reviews.freebsd.org/D55424
2026-07-07 08:47:36 +02:00