FreeBSD 13.3 with better WiFi support and OpenZFS 2.1.14

For those who have not yet updated to FreeBSD 14.0, the FreeBSD developers are providing a new point release of the 13 branch. According to the guidelines established in 2015, each major release is maintained for at least five years, and a point release comes out approximately once a year. The superseded version – FreeBSD 13.2 – will be supported for another three months.

Advertisement

When it comes to WiFi drivers, FreeBSD still lags behind other systems such as GNU/Linux or Windows. The FreeBSD developers are not allowed to simply adopt the source code of Linux drivers because of the more restrictive licenses (usually GPLv2). The LinuxKPI layer provides a solution here, allowing native Linux drivers to run under FreeBSD with just a few modifications. A look at the LinuxKPI source code (sys/compat/linuxkpi) shows that it is a collection of Linux header files and source code extensions that basically just map special Linux functions to their FreeBSD counterparts. FreeBSD does the same with graphics card drivers and doesn’t have to reinvent the wheel in either case. LinuxKPI is not to be confused with the Linuxulator (Linux Emulation) in FreeBSD. Both subsystems offer Linux compatibility, with LinuxKPI representing a programming interface for kernel drivers, while the Linuxulator can run Linux binaries without modifications.

There have been some improvements to the WiFi drivers themselves. Among other things, the Intel IEEE 802.11a/b/g/n/ac/ax wireless network driver iwlwifi(4) has been expanded to include models up to the BE200 series. This driver is intended to replace iwm(4), older WiFi chips will also be supported by iwn(4) in the future. The RealTek drivers have also been updated.

The Google Virtual NIC driver gve(4) is new. It is designed specifically for the Google Compute Engine (GCE) and is a requirement for Google’s Tier 1 network support.

OpenZFS was updated to version 2.1.14 in FreeBSD 13.3. Included in it the important fixes to errors that can lead to data loss. Since around 2009, FreeBSD used the original ZFS code from the Sun/Nexenta project. The development was repeatedly criticized as being too slow, although perhaps this is precisely why there were never any data losses in new versions. With FreeBSD 12.0 they switched to OpenZFS code and have been enjoying the rapid development and many new functions ever since. It is only with OpenZFS 2.2.2 that the possible data losses in connection with “block cloning” are said to have been defused.

As a toolchain, FreeBSD 13.2 uses LLVM together with the Clang compiler in version 17.0.6. OpenSSH is now in version 9.6p1 and sendmail has been updated to version 8.18.1. This version defaults to stricter RFC compliance, particularly with regards to line endings. This can cause problems receiving messages from non-compliant MTAs. You should take a look at this the release notes of version 8.18.1 throw.

The NFS server (nfsd(8), nfsuserd(8), mountd(8), gssd(8) and rpc.tlsservd(8)) can be run in a correspondingly configured vnet jail from FreeBSD 13.3. To do this, the vnet jail must be on a separate file system, the allow.nfsd parameter must be set for the jail and enforce_statfs must not be set to 0. The use of UDP and pNFS server configurations is not allowed.

When supporting Single Board Computers (SBCs), the BeagleBone Black (armv7) is no longer supported because problems may occur with the current boot files (Device Tree Blob, DTB). Raspberry Pis run even more energy-efficiently under FreeBSD 13.3 because the powerd daemon is now activated by default in the corresponding images.

In addition to the current FreeBSD 14.0, FreeBSD 13.3 is now available for many architectures on the FreeBSD project page available for free download.


(fo)

To home page

source site