FreeBSD projects are funded entirely through generous donations from FreeBSD community members and outside businesses interested in our mission.

The projects listed on this page are funded by donations given to The FreeBSD Foundation. There are many on-going projects being worked on by volunteers, companies, etc. for the FreeBSD Project. To find out more about these projects please visit the FreeBSD Project’s website.

To help fund future projects please consider making a donation to the foundation. 

Submit a Project Proposal

The FreeBSD Foundation is soliciting the submission of proposals for work relating to any of the major subsystems or infrastructure within the FreeBSD operating system. Proposals will be evaluated based on desirability, technical merit and cost-effectiveness.  

Please see the Project Proposal Overview for a short review of the process. For more in-depth information, please see the Submission Guidelines.

In Progress

ZStd integration into OpenZFS

This project will update and enhance Allan Jude’s original prototype implementation in collaboration with other OpenZFS developers, to prepare it for merging into OpenZFS proper. Work will also include additional tests, backwards compatibility improvements, documentation, and performance analysis. The project is expected to be complete in early fall, 2020.

Read more

In Progress

Broadcom FullMAC WiFi integration

This project aims to implement WiFi support for the Broadcom FullMAC WiFi devices, as used on the Raspberry Pi.

Read more

In Progress

Development of the “RAID-Z Expansion” Feature for ZFS

The Zettabyte File System (ZFS) is a combined file system and logical volume manager designed to protect against data corruption and support high storage capacities.

The Foundation is sponsoring Matthew Ahrens to develop a “RAID-Z Expansion” feature. This will allow adding an extra disk to an existing RAID-Z group, allowing the expansion from a 4-wide RAID-Z1 group into a 5-wide RAID-Z1 group.

Read more

Complete

if_bridge Performance Improvement

The current if_bridge implementation contends heavily on a single BRIDGE_LOCK mutex. As a result it's limited to a little over 1 million packets per second, regardless of the number of cores in the system. This means, for small packets, it can just about saturate a 1Gbps link, but little more than that. The overall idea is to replace the single mutex by two read-mostly locks, one protecting the overall bridge, and a second to protect the forwarding table. The vast majority of packets will only require read locks, allowing multiple cores to pass packets over the bridge simultaneously.

Read more

Complete

Scalability and Performance Improvements

Each year CPUs are made with larger core and thread counts, and running FreeBSD on these new CPUs often demonstrates new scalability bottlenecks. This project will use a number of motivating use cases, such as "poudriere -j 128" package builds and "will-it-scale".

Read more

Complete

Linuxulator Diagnostics Improvements

This project will provide solid foundations for debugging failures encountered when running modern Linux binaries, and improving the Linux compatibility at both binary and source-level levels. It will also clean up the existing Linuxulator implementation and make it easier and quicker to port software originally written for, and maintained primarily under, Linux.

Read more

Complete

FUSE Userspace File System update

FreeBSD's fuse(4) driver is buggy and out-of-date. It's essentially unusable for any networked filesystem like CephFS, MooseFS, or Tahoe-LAFS. This project will fix all of fuse's known bugs, update the kernel API, and add a new test suite.

Read more

Complete

SDIO Integration

This project aims to integrate SDIO support as an initial step towards supporting SDIO-conected WiFi modules, as on the Raspberry Pi and others.

Read more

Complete

USB Mass Storage Target

This project provides a USB mass storage target, making it possible to have FreeBSD running on an embedded device appear as a USB flash key, providing the user with documentation and drivers necessary to fully use the embedded target. This is invaluable in both teaching and product environments as one part of an excellent "out-of- the-box" experience.

Read more

Complete

Broadcom Wi-Fi Modernization

The Foundation sponsored Landon Fuller's work to modernize FreeBSD support for Broadcom Wi-Fi adaptors, laying the groundwork for comprehensive Broadcom Wi-Fi support on FreeBSD, including enabling the adoption of additional softmac PHY and fullmac device support from Broadcom’s ISC-licensed Linux drivers.

Read more

Complete

Headless Mode Out of The Box

This project aimed to add out-of-box USB OTG support, making FreeBSD a much more attractive option for both newbies lacking the equipment to set up headless operation and companies looking for a more user friendly option.

Read more

Complete

Port 'blacklistd' daemon to FreeBSD

This provides a lightweight daemon that can notified in realtime of attempted "bad behavior" from various daemons. The daemon stores the data about the attack in a persistent database, and can update a packet filter to block access from the network addresses of the attacker.

Read more

Complete

Integration of VIMAGE support in FreeBSD

This project aims to finalize the work done to make the VIMAGE network stack code production ready. Starting with an update of the previously reviewed work sitting in a perforce repository, incremental patches will be tested, presented to the community, and included in the FreeBSD SVN base system repository head/ branch.

Read more

Complete

Enhanced Network Stack Virtualization Project

The virtualized network stack will significantly enhance FreeBSD's jail functionality, allowing jails to have their own complete and locally administered network stacks, including firewalls, routing, and IPsec configurations.

Read more

Complete

Multipath TCP for FreeBSD

TCP Extensions for Multipath Operation with Multiple Addresses (MPTCP) allows a mutli-homed host to utilize multiple network interfaces or paths on a single TCP session. The protocol is currently being standardized by the IETF in RFC 6824.

Read more

Complete

FreeBSD ARMv8 64-bit ARM port

Officially known as AArch64, the 64-bit ARM architecture is also known as ARMv8 and arm64. The 64-bit ARM architecture is expected to find use in traditional server markets, in contrast to the embedded and mobile markets where 32-bit ARM is widely adopted.

Read more

Complete

Newcons console driver integration

The Newcons project will deliver an updated FreeBSD console driver with Unicode support and improved support for graphics modes. This will improve interoperability with X11 and Kernel Mode Setting (KMS) graphics drivers.

Read more

Complete

Improving the Hardware Performance Counter Support

The FreeBSD Foundation, with a generous grant from Google, teamed up to sponsor Joseph Koshy in improving the hardware performance counter support in FreeBSD. The goal of the project was the addition of callgraph support in the hwpmc driver.

Read more

Complete

Make removing disk devices with mounted filesystems on them safe.

The project is to make FreeBSD tolerate the removal of active disk devices, such as when a USB flash device with a mounted filesystems is physically detached by a user. Currently the system may panic in this situation.

Read more

Complete

Improvements to the FreeBSD TCP Stack.

This three-part project will include implementing Appropriate Byte Counting (ABC) RFC3465 support, adapting and merging CAIA's Statistical Information for TCP Research (SIFTR) TCP analysis tool into FreeBSD, and making improvements to the TCP reassembly queue.

Read more

Complete

Wireless Mesh Support

Rui Paulo will be implementing the forthcoming IEEE 802.11s wireless mesh standard for FreeBSD. Wireless mesh networks are expected to become widespread as routers and network appliances deploy them, allowing wireless networks to be built and extended dynamically.

Read more

Complete

Flattened Device Tree Project

Rafal Jaworowski and Semihalf has been awarded a grant to provide FreeBSD with support for the flattened device tree (FDT) technology. This project allows for describing hardware resources of a computer system and their dependencies in a platform-neutral and portable way.

Read more

Complete

High Available Storage Project

Pawel Jakub Dawidek has been awarded a grant to implement storage replication software that will enable users to use the FreeBSD operating system for highly available configurations where data has to be shared across the cluster nodes.

Read more

Complete

Network Stack Virtualization Project

The network stack virtualization project aims at extending the FreeBSD kernel to maintain multiple independent instances of networking state. This will allow for complete networking independence between jails on a system, including giving each jail its own firewall, virtual network interfaces, rate limiting, routing tables, and IPSEC configuration.

Read more

Complete

FreeBSD Jail Based Virtualization Project

Bjoern A. Zeeb has been awarded a grant to improve FreeBSD's jail based virtualization infrastructure and to continue to work on the virtual network stack. His employer, CK Software GmbH is matching the Foundation's funding with hours.

Read more

Complete

DTrace Userland Project

DTrace is a general purpose and lightweight tracing framework that allows administrators, developers and users to investigate causes of system failure or performance bottlenecks. The FreeBSD operating system has had support for kernel-only DTrace since FreeBSD 8.0, but DTrace userland support was missing.

Read more

Complete

DAHDI FreeBSD driver port

Max Khon has been awarded a grant to finish the DAHDI FreeBSD driver port. The purpose of DAHDI/FreeBSD project is to make it possible to use FreeBSD as a base system for software PBX solutions.

Read more

Complete

Resource Containers Project

Edward Tomasz Napierala has been awarded a grant to implement resource containers and a simple per-jail resource limits mechanism.

Read more

Complete

BSNMP Improvements Project

The FreeBSD Foundation is pleased to announce that Shteryana Shopova has been awarded a grant to make improvements to BSNMP.

Read more

Complete

IPv6 Support in FreeBSD and PC-BSD

The FreeBSD Foundation is pleased to announce that it has awarded Bjoern Zeeb a grant to improve the maturity of IPv6 support in FreeBSD and PC-BSD. This project is jointly sponsored with iXsystems.

Read more

Complete

GEM, KMS, and DRI Support for Intel Drivers

The FreeBSD Foundation is pleased to announce that Konstantin Belousov has been awarded a grant to implement support of GEM, KMS, and DRI for Intel Drivers. This project is being co-sponsored by iXsystems.

Read more

Complete

Five New TCP Congestion Control Algorithms

The FreeBSD Foundation is pleased to announce that Swinburne University of Technology's Centre for Advanced Internet Architectures has been awarded a grant to implement Five new TCP Congestion Control Algorithms in FreeBSD.

Read more

Complete

Feed-Forward Clock Synchronization Algorithms

The FreeBSD Foundation is pleased to announce that Julien Ridoux and Darryl Veitch at the University of Melbourne have been awarded a grant to implement support of feed-forward clock synchronization algorithms.

Read more

Complete

Implementing xlocale APIs

The C standard library (libc) is one of the most important parts of a UNIX system as most programs interact with the kernel through interfaces written in C. Porting code between platforms with similar libc implementations is trivial and if something is supported by libc, higher-level languages can use it without being reimplemented.

Read more

Complete

Analyzing the Performance of FreeBSD's IPv6 Stack

The FreeBSD Foundation is pleased to announce that it has awarded Bjoern Zeeb a grant to analyze the performance of FreeBSD's IPv6 stack. This project is jointly sponsored with iXsystems.

Read more

Complete

Implementing auditdistd daemon

The FreeBSD audit facility provides fine-grained, configurable logging of security-relevant events. One of the key purposes of logging security events is postmortem analysis in case of system compromise.

Read more

Complete

Growfs for mounted filesystems

This project makes it possible to grow a UFS or ZFS file system while mounted read-write. This includes changes to both file systems, GEOM infrastructure, and drivers.

Read more

Complete

Documentation project infrastructure enhancements

The FreeBSD Documentation Project relied on outdated and obsolete tools for producing the FreeBSD Handbook and other documentation.

Read more

Complete

Superpages for ARMv7

The ARM architecture is expanding into higher-end server computing markets, and supporting sophisticated features of the platform is key to FreeBSD's success in these new areas.

Read more

Complete

Native iSCSI kernel stack

This project delivered a native in-kernel iSCSI stack (both target and initiator) for the increasingly popular block storage protocol.

Read more

Complete

Capsicum integration

This project continued the integration of Capsicum and the Casper daemon into FreeBSD. A new structure for capability rights increased the number of possible capability rights to around 1000, allowing for future development while maintaining API/ABI compatibility.

Read more

Complete

Autofs-based Automounter

Limitations of the amd(8) automounter are a recurring problem reported by many FreeBSD users. The new automounter project intends to address these concerns.

Read more

Complete

UEFI Boot Integration

The Unified Extensible Firmware Interface (UEFI) provides boot- and run-time services for x86 computers, and is a replacement for the legacy BIOS. This project will adapt the FreeBSD loader and kernel boot process for compatibility with UEFI firmware, found on contemporary servers, desktops, and laptops.

Read more

Complete

Updated AES modes for OpenCrypto

This project adds modern AES modes to FreeBSD's OpenCrypto cryptographic framework, for use by IPsec and other consumers. This project is co-sponsored by the FreeBSD Foundation and Netgate, a leading vendor of BSD-based firewalls and networking gear.

Read more