index | | raw e-mail
As of late, I have upstreamed changes to AMD’s LLVM fork allowing the compilation of their fork on FreeBSD so you can build their ROCm toolchain. Beyond that, I have worked on getting a series of patches into LinuxKPI to slowly bring in amdkfd support. Sponsor: The FreeBSD Foundation ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Cloud Updating cloud-specific features and bringing in support for new cloud platforms. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ FreeBSD on EC2 Contact: Colin Percival <cperciva@FreeBSD.org> FreeBSD is available on both amd64 (Intel and AMD) and arm64 (Graviton) EC2 instances. An issue causing the ena(4) driver to drop packets when receiving jumbograms has been fixed. The fix was present in 15.1-RELEASE (June) and will be present in 14.5-RELEASE (September). This fix improved single-TCP-stream network performance on some EC2 instances from 110 Mbps to 9.5 Gbps and also significantly improved multiple-TCP-stream throughput. An issue causing the ena(4) driver to launch taskqueues on the wrong CPU(s) on NUMA systems has been identified. The fix should be present in 14.5-RELEASE (September) and produces a 2x increase in multiple-TCP-stream throughput on c8gn.48xlarge instances. Sponsor: Amazon Sponsor: https://www.patreon.com/cperciva ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ FreeBSD on Microsoft HyperV and Azure Links: Microsoft Azure article on FreeBSD wiki URL: https://wiki.freebsd.org/MicrosoftAzure Microsoft HyperV article on FreeBSD wiki URL: https://wiki.freebsd.org/HyperV Contact: Microsoft FreeBSD Integration Services Team <bsdic@microsoft.com> Contact: freebsd-cloud Mailing List Contact: The FreeBSD Azure Release Engineering Team <releng-azure@FreeBSD.org> Contact: Wei Hu <whu@FreeBSD.org>, <weh@microsoft.com> Contact: Li-Wen Hsu <lwhsu@FreeBSD.org> Publishing the 15.1-RELEASE image to Azure Marketplace is in progress. It is expected to become publicly available early in the third quarter. Li-Wen is investigating the technical details needed to support Azure Trusted Launch. Wei and Li-Wen, together with other Microsoft engineers, are investigating an issue preventing mana(4) from working correctly on AMD-based Azure VMs. The mana(4) device is present on the latest v7-generation Azure VMs. Work in progress tasks: • Automating the image publishing process and merging it into src/release/. • Making the process of publishing to Azure Marketplace smoother. • Supporting FreeBSD in Azure VM utilities. Open tasks: • Update FreeBSD-related documentation at Microsoft Learn. • Update sysutils/azure-agent to the latest version. • Upstream local modifications of Azure agent. • Port Linux Virtual Machine Extensions for Azure. • Add FreeBSD support in Azure Pipelines. □ https://github.com/microsoft/azure-pipelines-agent/pull/3266 □ Build and publish snapshot builds to Azure community gallery. Sponsor: Microsoft for people in Microsoft, and for resources for the rest Sponsor: The FreeBSD Foundation for everything else ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Documentation Noteworthy changes in the documentation tree, manual pages, or new external books/documents. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ The FreeBSD Russian Documentation Project Links: The FreeBSD Official Website in Russian URL: https://www.freebsd.org/ru/ FAQ URL: https://docs.freebsd.org/ru/books/faq/ The FreeBSD Russian Documentation Project site URL: https://github.com/freebsd-doc-ru/freebsd-doc/discussions Contact: Andrey Zakhvatov <andy@FreeBSD.org> Contact: Vladlen Popolitov <vladlen@FreeBSD.org> The FreeBSD Russian Documentation Project’s current goal is to provide up-to-date Russian translations of the most important parts of the FreeBSD documentation (FAQ, Handbook, website content). It is essential to support Russian-speaking users with high-quality official technical materials and to increase the adoption of the operating system worldwide. We hope this initiative will gain support within the Russian-speaking FreeBSD community and lead to an increase in translated materials. During the last quarter: • 100% of the text in Weblate has been translated. • The Russian language section of www.FreeBSD.org/ru has been fully translated, with 100% of its pages now available in Russian. • For the FreeBSD 15.1 release, the complete set of release documentation (release notes, errata, etc.) has been translated into Russian in a timely manner alongside the English originals. • The project to translate FreeBSD man pages has been initiated and is in its very early stages. Preliminary examples can be found at GitHub. Plan for the next quarter: • Continue the ongoing efforts to translate FreeBSD man pages. Check the official translation guide if you would like to help. We would appreciate your assistance with translating the following materials: • Web pages • Man pages ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Ports Changes affecting the Ports Collection, whether sweeping changes that touch most of the tree, or individual ports themselves. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Dockerbox Links: freebsd-dockerbox GitHub URL: https://github.com/leafoliage/freebsd-dockerbox dockerbox-broker GitHub URL: https://github.com/leafoliage/dockerbox-broker freebsd-dockerbox-debian GitHub URL: https://github.com/leafoliage/freebsd-dockerbox-debian Contact: Chun-Cheng Yeh <leafoliage@FreeBSD.org> Dockerbox is a virtualized Docker daemon. Although the Docker daemon is not natively available on FreeBSD, Dockerbox runs it inside a Debian Bhyve virtual machine to provide access to it. Dockerbox supports common Docker features such as Docker Compose, port publishing, and bind mounts. This project aims to facilitate non-production Docker usage on FreeBSD. Related Ports and Repositories • freebsd-dockerbox Provides Docker on FreeBSD by running dockerd inside a Linux Bhyve VM. This service manages the lifecycle of the Dockerbox guest, along with its network and storage settings. v0.2.5 — ported. • dockerbox-broker A child service of Dockerbox that handles port forwarding from the host to the Dockerbox guest when a container requests port publishing. Not yet ported. • freebsd-dockerbox-debian Codebase used to generate Dockerbox’s disk image. Not ported. • docker-cli The Docker CLI tool. v29.4.2 — ported. • docker-compose A Docker CLI plugin for defining and running multi-container applications. v5.1.3 — ported. • docker-buildx A Docker CLI plugin providing extended build capabilities via BuildKit. v0.34.1 — ported. sysutils/dockerbox, sysutlis/docker-cli, sysutils/docker-compose, and sysutils/ docker-buildx are now available in the FreeBSD Ports Collection and via pkg. Sponsor: The FreeBSD Foundation ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ KDE on FreeBSD Links: KDE/FreeBSD initiative URL: https://freebsd.kde.org/ FreeBSD — KDE Community Wiki URL: https://community.kde.org/FreeBSD Contact: KDE on FreeBSD Mailing List <kde@FreeBSD.org> The KDE on FreeBSD project packages CMake, Qt, and software from the KDE Community, for the FreeBSD ports tree. The software includes a full desktop environment called KDE Plasma (for both X11 and Wayland) and hundreds of applications that can be used on any FreeBSD machine. The KDE team is part of desktop@, building the software stack to make FreeBSD beautiful and usable as a daily driver graphical desktop workstation. Infrastructure CMake was updated to 3.31.12. Qt6 and PySide6 were updated to 6.11.1. PyQt6 was updated to 6.11.0. Qt5 and PySide2 were updated to 5.15.19 KDE patch collection. Upstream standard support for Qt5 is officially over. This is the final update for Qt5. KDE Stack KDE Frameworks, Plasma, and Gear release happen very regularly. KDE team lands these updates shortly after their upstream release. • KDE Frameworks ports were updated to 6.28.0. • KDE Plasma Desktop was updated to 6.6.6. • KDE Gear was updated to 26.04.3. Related Ports A number of new KDE ports have been added. Amarok, the classic KDE music player, has been reinstated and updated to 3.3.3. Sunsetting Qt5 ports Qt5 is still used by approximately 350 ports. Although Qt5 is deprecated there is no definite date for its removal from the ports tree yet. Still, the port for Qt5WebEngine which is based on very old Chromium with multiple vulnerabilities is scheduled for removal just before 2026Q4. KDE team encourages maintainers to migrate their ports to Qt6, remove Qt5 flavors, and remove abandoned Qt5 software. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ GCC on FreeBSD Links: GCC Project URL: https://gcc.gnu.org/ GCC 13 release series URL: https://gcc.gnu.org/gcc-13/ GCC 14 release series URL: https://gcc.gnu.org/gcc-14/ GCC 15 release series URL: https://gcc.gnu.org/gcc-15/ GCC 16 release series URL: https://gcc.gnu.org/gcc-16/ GCC 17 release series URL: https://gcc.gnu.org/gcc-17/ Contact: Lorenzo Salvadore <salvadore@FreeBSD.org> Two new ports have been created: lang/gcc16 and lang/gcc17-devel. PR 294062 about arm64 build failures has been fixed. More precisely, in 2026Q2 lang/gcc16-devel and lang/gcc17-devel have been fixed, while lang/gcc16 has been fixed in the beginning of 2026Q3 (at the time this report is written the patch still needs to be forwarded to the ports quarterly branch). Unfortunately, the solution is local to the FreeBSD ports tree and cannot be upstreamed directly. Discussion for an upstream solution can be found in the upstream bugzilla. Thanks to all those who have helped, in particular to Mark Millard. I have not worked personally on the process to get GCC_DEFAULT=15 this quarter, but some work is being done in the associated PRs, so this is getting forward as well. Moreover, minor version updates to lang/gcc13, lang/gcc14 and lang/ gcc15 are planned. As I continue to work on the GCC ports, I realize that I am having less time and less energy to put into them. These ports are important, I prefer not to leave them unmaintained at least until I am able to deal with them, even if slowly. But if there is someone who would like to take them, please stand up and I would be glad to transfer maintainership. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Improve OpenJDK on FreeBSD Links: Project description URL: https://freebsdfoundation.org/project/improving-openjdk-on-freebsd/ Project repository URL: https://github.com/freebsd/openjdk Upstream BSD port repo URL: https://github.com/openjdk/bsd-port Contact: Harald Eilertsen <haraldei@FreeBSD.org> FreeBSD Java mailing list <freebsd-java@lists.freebsd.org> The goal of this project is to improve OpenJDK support for FreeBSD/amd64 and FreeBSD/arm64. Java is an important runtime environment for many high performance, critical enterprise systems. Making sure Java based applications run correctly and efficiently on FreeBSD is important to ensure that FreeBSD will continue to be a viable and attractive platform for enterprises, as well as businesses and organizations of all sizes. This quarter has been spent mostly on getting the upstreaming process properly going. We submit patches to a separate repository under the OpenJDK org on GitHub, and make sure that each PR is reviewed by at least one upstream reviewer. This way, when we get to the point where we want to merge our port into the upstream mainline, all commits should already be reviewed by someone in the project. This is a fairly slow process, as we depend on upstream reviewers having time. We also encounter that some of the changes that has been living in our port for a long time is rejected. Then we have to rework them, or if not strictly needed, just throw them out. I feel this is a useful correction, but sometimes causes quite a bit of work. In this quarter the following issues/milestones were reached: • OpenJDK 25 port was updated to version 25.0.3. • Upstream mainline changes and bugfixes: □ 8382614: Consolidate implementation of current_stack_base_and_size on BSD □ 8384085: Make os::Bsd::dlopen_helper private, and drop unused arg □ 8384088: osThread _thread_id should be an int on all BSD’s □ 8384946: os::Bsd::gettid misses the return value □ 8386344: runtime/StackGuardPages/TestStackGuardPages build failure after JDK-8303612 • Upstream BSD Port: □ Fix conditional sections for BSD in hotspot/cpu □ Port hotspot/os/posix for BSD □ Merged changes accepted for mainline. • Current (out-of-tree) BSD port: □ Merge + Remove VFORK for BSD + rebase GHA workflow on OpenJDK26 □ Merge + Fix usage of FREE_C_HEAP_ARRAY macro on BSD □ Sync aarch64 cpuinfo impl for *BSD with Linux □ Remove duplicate include in global defs for zero □ Remove ThreadWXEnable from BSD code □ Backported changes accepted for mainline upstream BSD port. • Ports: □ java/javavmwrapper: JAVA_VERSION does not work with openjdk25 In addition, these tasks are still ongoing, or waiting for review: • Upstream BSD port: □ Port hotspot/os/bsd/os_perf_bsd.cpp to BSD (Waiting for refactor, see WIP: Split os_perf impl for macOS and BSD) □ os::get_process_uid and os::rss for BSD (Still ongoing) Other notes: • Started preparing for OpenJDK 27 port. • Presented the project at Foss North 2026. Sponsor: The FreeBSD Foundation ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ FreeBSD HPC Ports Modernization: Slurm 26.05, UCX 1.20 Upstreaming, and MPI-Parallel File Utilities Links: sysutils/slurm-wlm URL: https://cgit.freebsd.org/ports/tree/sysutils/slurm-wlm/ net/ucx URL: https://cgit.freebsd.org/ports/tree/net/ucx/ sysutils/mpifileutils URL: https://cgit.freebsd.org/ports/tree/sysutils/ mpifileutils/ devel/libcircle URL: https://cgit.freebsd.org/ports/tree/devel/libcircle/ devel/lwgrp URL: https://cgit.freebsd.org/ports/tree/devel/lwgrp/ devel/dtcmp URL: https://cgit.freebsd.org/ports/tree/devel/dtcmp/ benchmarks/py-reframe-hpc URL: https://cgit.freebsd.org/ports/tree/benchmarks/py-reframe-hpc/ openucx/ucx#11354: UCS/TYPE portability fixes for non-glibc/Clang environments (merged) URL: https://github.com/openucx/ucx/pull/11354 openucx/ucx#11549: UCS/SYS portability fixes for non-Linux platforms (in review) URL: https://github.com/openucx/ucx/pull/11549 hpc/mpifileutils#664: Portability fixes for FreeBSD/non-Linux builds (in review) URL: https://github.com/hpc/mpifileutils/pull/664 Kavocado Monthly Status Reports – FreeBSD HPC notes URL: https://kavocado.net/reports/ Contact: Generic Rikka <rikka.goering@outlook.de> This report continues the FreeBSD HPC Ports Modernization initiative. Previous quarters focused on bringing the Slurm + PMIx + PRRTE + UCX stack up to date and filling gaps in the surrounding ecosystem. This quarter’s work centered on three things: keeping the core scheduler and communication libraries current against fast-moving upstream releases, upstreaming the FreeBSD portability fixes accumulated while maintaining these ports so the local patchsets keep shrinking, and adding a new port for MPI-parallel file utilities that are common on large HPC filesystems. Work completed • Updated sysutils/slurm-wlm twice this quarter, from 25.11.4 to 25.11.5 and then from 25.11.5 to 26.05.1, tracking the latest upstream releases. • Fixed several FreeBSD-specific runtime issues in net/ucx: hardened async thread state handling, corrected UCM relocation handling, fixed mm signal socket binding, and resolved other FreeBSD runtime portability issues. • Updated net/ucx from 1.20.0 to 1.20.1, and separately fixed a libucm early-init panic together with several gtest suite failures uncovered while validating the update. • Added sysutils/mpifileutils as a new port, along with its dependency stack: devel/libcircle, devel/lwgrp, and devel/dtcmp. These provide MPI-parallel file utilities (copy, remove, checksum, etc.) commonly used on large HPC filesystems. • Updated benchmarks/py-reframe-hpc twice this quarter to track upstream releases of the regression testing framework. • Upstreamed "UCS/TYPE: Portability fixes for non-glibc/Clang environments" to UCX, which was reviewed and merged. • Opened "UCS/SYS: portability fixes for non-Linux platforms" against UCX, covering hostname buffer sizing, MAC address retrieval via getifaddrs()/ AF_LINK, shared-memory error reporting, mmap/munmap-based reallocation, and cpuset_getaffinity()-based thread affinity queries; currently addressing review feedback. • Opened a portability PR against mpifileutils guarding Linux-only APIs for FreeBSD and other non-Linux builds; currently in review. • Collaborated with SchedMD on a Slurm configure-time probe for H5PTopen, used to detect the HDF5 high-level library, which was merged upstream. Work in progress • Addressing reviewer feedback on the open UCX and mpifileutils portability pull requests to get them merged upstream and reduce the FreeBSD ports' local patchsets further. • Continuing collaboration with SchedMD to upstream additional portability fixes discovered while maintaining sysutils/slurm-wlm on FreeBSD, including BSD socket-handling improvements. • Evaluating a proctrack/freebsd_reaper Slurm plugin design, made possible by recently landed FreeBSD kernel support for exposing reaper metadata in process information. • Continuing to track upstream Slurm, UCX, and PMIx/PRRTE releases closely to keep the FreeBSD ports current with minimal local patching. Future plans • Land the outstanding UCX and mpifileutils upstream pull requests, and continue identifying further portability issues to upstream rather than patch locally. • Prototype and submit the Slurm proctrack/freebsd_reaper plugin once the underlying kernel interface work is finalized. • Continue expanding the HPC software ecosystem available in the FreeBSD Ports Collection and reduce local patchsets across the stack wherever upstream acceptance is possible. • Document a reference Slurm + OpenMPI + PMIx + PRRTE + UCX deployment on FreeBSD to lower the barrier for new sites experimenting with FreeBSD in an HPC context. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Improve libvirt support for bhyve hypervisor Links: libvirt: Bhyve driver URL: https://libvirt.org/drvbhyve.html Contact: Roman Bogorodskiy <novel@FreeBSD.org> Completed work • libvirt/bhyve driver: □ virtio-console device support added. □ QEMU Guest Agent support added. □ Implemented a few features based on the QEMU Guest Agent, such as graceful reboot and shutdown, managing guest OS time, SSH keys, users passwords, etc. □ Added memory tuning and block I/O tuning based on rctl(8). • Work in progress on extend libvirt CI to test against FreeBSD-CURRENT snapshot VM images. Plans for the next quarter • Add support for boot order configuration. • Add support for TPM devices. • Complete suspend/resume support. • Continue implementing features based on the QEMU Guest Agent. • Continue extending CI, cover the new guest agent based features with new tests. Sponsor: The FreeBSD Foundationhome | help
