FreeBSD and AMD collaborating on FreeBSD IOMMU driver

The FreeBSD project has published its latest quarterly status report, and there’s a lot in there. The most prominent effort listed in the report is a close collaboration between FreeBSD and AMD on an IOMMU driver for AMD’s server processors.

Work continued on a joint project between Advanced Micro Devices (AMD) and The FreeBSD Foundation to develop a complete FreeBSD AMD IOMMU driver. This work will allow FreeBSD to fully support greater than 256 cores with features such as CPU mapping and will also include bhyve integration. Konstantin Belousov has been working on various parts of the project, including driver attachment, register definitions, an ACPI table parser, and utility functions. Two key components that need to be completed are context handling, which is mostly a generalization of Intel DMAR code, and page table creation. After this, the AMD driver’s enable bit can be turned on for testing.

↫ FreeBSD status report page

It’s great to see AMD and FreeBSD working together like this, and it highlights that FreeBSD is a serious player in the server space.

Other things mentioned in the status report are continued work in improving the audio experience, wireless networking, RISC-V support, OpenZFS, and more. Through the work of Tom Jones, FreeBSD is also getting the Vector Packet Processor, a userspace networking stack that delivers fast packet processing suitable for software-defined networking and network function virtualization applications. Of course, this is just a selection, and there’s way more listed in the report.

I would also like to highlight the ongoing, neverending work of improving the experience of using KDE on FreeBSD. The FreeBSD KDE team notes that due to the massive release of KDE 6, and the associated flurry of follow-up releases, requiring a lot of work and testing, KDE on FreeBSD still hasn’t fully caught up with the latest releases. KDE Frameworks is currently at 6.3.0 (6.5.0 is current), KDE Plasma Desktop is currently 6.0.3 (6.1.4 is current), and KDE Gear 6 hasn’t been ported at all yet. In other words, while progress is being made, it’s clear the team could use a hand, too.