• FreeBSD Status Report - Second Quarter 2023 (1/4)

    From Lorenzo Salvadore@21:1/5 to All on Fri Jul 28 00:00:06 2023
    FreeBSD Status Report Second Quarter 2023

    Here is the second 2023 status report, with 37 entries.

    As you might notice, we have several more reports than last quarter. This is a great news and shows how much the FreeBSD community is active and always working on providing high quality software.

    In particular, please note that Summer has started and do not miss the amazing projects shared by our Google Summer of Code students.

    Have a nice read.

    Lorenzo Salvadore, on behalf of the Status Team.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    A rendered version of this report is available here: https://www.freebsd.org/status/report-2023-04-2023-06/

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    Table of Contents

    • FreeBSD Team Reports
    □ FreeBSD Core Team
    □ FreeBSD Foundation
    □ FreeBSD Release Engineering Team
    □ Cluster Administration Team
    □ Continuous Integration
    □ Ports Collection
    • Projects
    □ Cirrus-CI
    □ BATMAN support in the FreeBSD kernel
    □ FreeBSD support on LinuxBoot
    • Userland
    □ OpenSSL 3 in base
    □ Linux compatibility layer update
    □ Service Jails — automatic jailing of rc.d services
    □ Security Sandboxing Using ktrace(1)
    □ NVMe over Fabrics
    • Kernel
    □ Boot Performance Improvements
    □ CI Test Harness For Bootloader
    □ Physical memory compaction for the FreeBSD kernel
    □ Increasing MAXCPU
    □ SquashFS port for FreeBSD kernel
    □ Pf Improvements
    □ Network Interface API (IfAPI)
    □ Making Netgraph Lock-Free
    • Architectures
    □ SIMD enhancements for amd64
    □ Integrate mfsBSD into the release building tools
    • Cloud
    □ FreeBSD as a Tier 1 cloud-init Platform
    □ OpenStack on FreeBSD
    □ FreeBSD on Microsoft HyperV and Azure
    □ FreeBSD on EC2
    • Documentation
    □ Documentation Engineering Team
    • Ports
    □ KDE on FreeBSD
    □ GCC on FreeBSD
    □ Puppet
    □ MITRE Caldera on FreeBSD
    □ Wazuh on FreeBSD
    • Third Party Projects
    □ PkgBase.live
    □ Containers and FreeBSD: Pot, Potluck and Potman

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    FreeBSD Team Reports

    Entries from the various official and semi-official teams, as found in the Administration Page.

    FreeBSD Core Team

    Contact: FreeBSD Core Team <core@FreeBSD.org>

    The FreeBSD Core Team is the governing body of FreeBSD.

    DevSummit 202305

    The Core Team has presented the status update at the FreeBSD Developer Summit, 17th–18th May. Slides are available at https://wiki.freebsd.org/DevSummit/ 202305.

    FreeBSD 14

    The Core Team is working with other teams to ensure that FreeBSD 14.0-RELEASE will be of the highest quality.

    The Core Team has no objection to mark riscv64sf (64-bit RISC-V soft-float) as unsupported in 14.

    Meetings with The FreeBSD Foundation

    The Core Team and The FreeBSD Foundation continue to meet regularly to discuss the next steps to take for the management, development, and future of FreeBSD. The Core Team had two meetings with the Board of Directors of, and employees of, the Foundation. They discussed how the Foundation can help the Core Team and the Project in general.

    Matrix IM solution

    One of the major items in the Core Team updates in DevSummit 202305 was proposing a new project communication solution.

    There is currently a testing instance at matrix-dev.FreeBSD.org setup by clusteradm. All developers can access the instance with their kerberos credentials, and some public rooms can be joined through Matrix’s federation feature. Please note this instance is for testing and evaluating so no backup or availability is guaranteed.

    The Core Team is still discussing the scope and administration of this service, and collecting feedback from the community.

    Code of Conduct Committee

    Code of Conduct Committee (conduct@) is managed by the Core Team now.

    Commit bits

    Core approved the src commit bit for Christos Margiolis (christos@).

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    FreeBSD Foundation

    Links:
    FreeBSD Foundation URL: https://www.freebsdfoundation.org
    Technology Roadmap URL: https://freebsdfoundation.org/blog/technology-roadmap/ Donate URL: https://www.freebsdfoundation.org/donate/
    Foundation Partnership Program URL: https://freebsdfoundation.org/our-donors/ freebsd-foundation-partnership-program/
    FreeBSD Journal URL: https://www.freebsdfoundation.org/journal/
    Foundation News and Events URL: https://www.freebsdfoundation.org/ news-and-events/

    Contact: Deb Goodkin <deb@FreeBSDFoundation.org>

    The FreeBSD Foundation is a 501(c)(3) non-profit organization dedicated to supporting and promoting the FreeBSD Project and community worldwide. Donations from individuals and corporations are used to fund and manage software development projects, conferences, and developer summits. We also provide travel grants to FreeBSD contributors, purchase and support hardware to improve and maintain FreeBSD infrastructure, and provide resources to improve security, quality assurance, and release engineering efforts. We publish marketing material to promote, educate, and advocate for the FreeBSD Project, facilitate collaboration between commercial vendors and FreeBSD developers, and finally, represent the FreeBSD Project in executing contracts, license agreements, and other legal arrangements that require a recognized legal entity.

    Happy 30th birthday, FreeBSD!

    For more than 23 years, we have proudly backed this remarkable operating system and its vibrant community, and we eagerly anticipate supporting them for many more years. In this update, we will outline our contributions to FreeBSD across multiple domains. We will touch upon project development initiatives, some of which have detailed reports of their own. Additionally, we will showcase our advocacy for FreeBSD, our efforts to foster community engagement, and our expansion of partnership endeavors. Lastly, we will delve into our ongoing work to secure increased funding, enabling us to allocate additional resources to address any gaps within the Project.

    Fundraising

    During this quarter, we made significant progress in engaging with commercial FreeBSD users. To enhance our partnerships with existing and potential commercial users, we hired Greg Wallace as the Director of Partnerships and Research. His primary objective is to expand our collaborations with commercial users. Since assuming this position, Greg has hit the ground running, meeting with numerous companies in just one quarter. These interactions have provided valuable insights into how FreeBSD is being utilized, the challenges faced by users, and areas where the Project can improve. By understanding these aspects, we can make informed decisions on where to allocate our funding and recognize FreeBSD’s unique strengths. Additionally, the role involves conducting research
    to identify target markets, explore new opportunities for FreeBSD, and ensure our voice is heard in relevant discussions. For more details on Greg’s objectives and accomplishments, you can refer to his status update below.

    The Foundation extends its heartfelt gratitude to everyone who made financial contributions to support our work. Besides many individual contributions, we were pleased to receive larger donations from NetApp and Blackberry. In addition, we received FreeBSD Developer Summit sponsorships from Tarsnap, iXsystems, and LPI. These sponsorships greatly assist in offsetting our expenses and enable us to offer affordable registration fees to attendees.

    This year our budget is around $2,230,000, which includes increased spending toward FreeBSD advocacy and software development. More than half of our budget is allocated toward work directly related to improving FreeBSD and keeping it secure.

    By having a dedicated individual focused on partnerships, we can effectively emphasize the significance of investing in our efforts and underscore the long-term viability of the Project to companies.

    Your support plays a crucial role in our mission, and we deeply appreciate your commitment to the FreeBSD community. Please consider making a donation toward our 2023 fundraising campaign! https://www.freebsdfoundation.org/donate/

    For more prominent commercial donors we have the FreeBSD Foundation Partnership Program, which was established in 2017.

    Partnership Program

    Hello FreeBSD community. My name is Greg Wallace. I joined the Foundation as Director of Partnerships and Research in early April. This blog introduced me and the role. For Partnerships, I am focused on building connections with companies that use FreeBSD. I have met with several companies to learn about how they use FreeBSD. Some of these meetings have generated discussions about potential partnership. I continue to find out about interesting companies using FreeBSD and I am reaching out to them.

    My objective is to get in touch with every company building with and using FreeBSD to listen to their stories. If this is you and we have not yet connected, please schedule a call on my calendar.

    Some other partnership-related activities this quarter:

    • I created these slides about how partnering with the Foundation helps
    advance FreeBSD. If you have ideas for how I can improve these slides, or
    would like me to present them to your organization, please send me an email
    , or schedule a call. And please feel free to share the presentation
    liberally, in whole or in part.

    • I worked with my Foundation colleagues to create a number of
    industry-specific use case slides for a presentation to an industry
    analyst.

    • I am also pursuing grant opportunities with bodies including:

    □ NSF Secure and Trustworthy Cyberspace (SaTC)

    □ Sovereign Tech Fund

    □ NGI.

    In terms of research, my broad aim is to make sure that all of the expertise in this community is reflected in the global conversations on computing performance, security, and energy efficiency. As a community, we have much to bring to this work.

    So far, I have been tracking and plugging into the following threads:

    • Open Forum Europe

    • CHIPS Research and Development.

    If you have research ideas or are interested in working together in this area, please send me an email, or schedule a call.

    OS Improvements

    During the second quarter of 2023, 339 src, 155 ports, and 20 doc tree commits identified The FreeBSD Foundation as a sponsor. Some of this and other Foundation-sponsored work is described in separate report entries:

    • Continuous Integration

    • FreeBSD as a Tier 1 cloud-init Platform

    • OpenSSL 3 in base

    • OpenStack on FreeBSD

    • Security Sandboxing Using ktrace(1)

    • SIMD enhancements for amd64

    Here is a sampling of other Foundation-sponsored work:

    • Bug fixes for fsck_ffs(8)

    • Bug fixes for killpg(2)

    • Improvements to hwpmc

    • Improvements to vmm

    • Port fixes and workarounds for LLVM 16 and OpenSSL 3.0

    • Port kinst to RISC-V and related DTrace work

    • Update of libfido2 to version 1.9.0

    • Various LinuxKPI 802.11 improvements

    • Various RISC-V improvements

    • Vendor import and update of tcpdump from version 4.9.3 to version 4.99.4.

    The status of current and past Foundation-contracted work can be viewed on the Foundation Projects page.

    Members of the Foundation’s technology team presented at the Developer Summit held in Ottawa, Canada from May 17-18. This included hosting the GSoC, FreeBSD Foundation Technical Review, and Workflow working group sessions. Pierre Pronchery spoke about driver harmony between the BSDs and En-Wei Wu discussed wtap work completed under contract with the Foundation.

    Continuous Integration and Quality Assurance

    The Foundation provides a full-time staff member and funds projects to improve continuous integration, automated testing, and overall quality assurance efforts for the FreeBSD project. You can read more about CI work in a dedicated report entry.

    Advocacy

    Much of our effort is dedicated to the FreeBSD Project advocacy. This may involve highlighting interesting FreeBSD work, producing literature and video tutorials, attending events, or giving presentations. The goal of the literature we produce is to teach people FreeBSD basics and help make their path to adoption or contribution easier. Other than attending and presenting at events, we encourage and help community members run their own FreeBSD events, give presentations, or staff FreeBSD tables.

    The FreeBSD Foundation sponsors many conferences, events, and summits around the globe. These events can be BSD-related, open source, or technology events geared towards underrepresented groups. We support the FreeBSD-focused events to help provide a venue for sharing knowledge, working together on projects, and facilitating collaboration between developers and commercial users. This all helps provide a healthy ecosystem. We support the non-FreeBSD events to promote and raise awareness of FreeBSD, to increase the use of FreeBSD in different applications, and to recruit more contributors to the Project. We are grateful to be back to attending events mostly in person. In addition to attending and planning events, we are continually working on new training initiatives and updating our selection of how-to guides to facilitate getting more folks to try out FreeBSD.

    Check out some of the advocacy and education work we did:

    • Helped to organize and attended the May 2023 Developer Summit which took
    place May 17-18, 2023 in Ottawa, Ontario

    • Hosted a table and was the Tote Bag Sponsor of BSDCan, May 17-20, 2023 in
    Ottawa, Ontario

    □ Trip reports can be found on the blog

    • Celebrated the Project’s 30th Birthday at BSDCan with cake and printed
    copies of the special 30th Anniversary Edition of the FreeBSD Journal

    • Secured a FreeBSD Workshop and Talk at FOSSY, July 13-16, 2023, in
    Portland, Oregon

    • Secured our Silver Sponsorship for EuroBSDCon 2023 taking place September
    14-17, 2023 in Coimbra, Portugal

    • Secured our booth for All Things Open, October 15-17, 2023 in Raleigh,
    North Carolina

    • Began planning the FreeBSD Fall Vendor Summit

    • Welcomed two New Team Members: Greg Wallace and Pierre Pronchery

    • Published April and June Newsletters

    • Celebrated the FreeBSD Day and the Project’s 30th Anniversary on June 19
    and through the week with special videos and blog posts

    • Additional Blog Posts:

    □ EuroBSDcon 2023 Travel Grant Application Now Open - Note: Applications
    close August 2, 2023

    □ AsiaBSDcon Trip Report

    • FreeBSD in the News:

    □ InfoWorld: Happy 30th FreeBSD!.

    We help educate the world about FreeBSD by publishing the professionally produced FreeBSD Journal. As we mentioned previously, the FreeBSD Journal is now a free publication. Find out more and access the latest issues at https:// www.freebsdfoundation.org/journal/.

    You can find out more about events we attended and upcoming events at https:// www.FreeBSDfoundation.org/news-and-events/.

    Legal/FreeBSD IP

    The Foundation owns the FreeBSD trademarks, and it is our responsibility to protect them. We also provide legal support for the core team to investigate questions that arise.

    Go to https://www.freebsdfoundation.org to find more about how we support FreeBSD and how we can help you!

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    FreeBSD Release Engineering Team

    Links:
    FreeBSD 13.2-RELEASE schedule URL: https://www.freebsd.org/releases/13.2R/ schedule/
    FreeBSD 14.0-RELEASE schedule URL: https://www.freebsd.org/releases/14.0R/ schedule/
    FreeBSD releases URL: https://download.freebsd.org/releases/ISO-IMAGES/
    FreeBSD development snapshots URL: https://download.freebsd.org/snapshots/ ISO-IMAGES/

    Contact: FreeBSD Release Engineering Team <re@FreeBSD.org>

    The FreeBSD Release Engineering Team is responsible for setting and publishing release schedules for official project releases of FreeBSD, announcing code freezes and maintaining the respective branches, among other things.

    During the second quarter of 2023, the Team continued work on 13.2-RELEASE. The 13.2 cycle had closely followed the set schedule, with the addition of three additional RC builds at the end, and the final RELEASE build and announcement in mid-April.

    In coordination with various teams within the Project management, the FreeBSD Release Engineering Team reconsidered the original schedule for the upcoming 14.0-RELEASE, primarily due to work that was in progress. The updated schedule was discussed and adjusted slightly to account for some concerns, and ultimately published on the FreeBSD Project website. The new schedule targets 14.0-RELEASE for October, 2023.

    The Team continued providing weekly development snapshot builds for the main, stable/13, and stable/12 branches. Note, there will no longer be snapshot builds against stable/12 moving forward.

    Sponsor: Tarsnap Sponsor: The FreeBSD Foundation

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    Cluster Administration Team

    Links:
    Cluster Administration Team members URL: https://www.freebsd.org/administration /#t-clusteradm

    Contact: Cluster Administration Team <clusteradm@FreeBSD.org>

    FreeBSD Cluster Administration Team members are responsible for managing the machines the Project relies on to synchronise its distributed work and communications.

    In this quarter, the team has worked on the following:

    • Regular support for FreeBSD.org user accounts.

    • Regular disk and parts support (and replacement) for all physical hosts and
    mirrors.

    • Enable mirroring of https://www.FreeBSD.org and https://docs.FreeBSD.org in
    the FreeBSD project-managed mirrors.

    • Cluster refresh, upgrading all hosts and jails to the most recent versions
    of 14-CURRENT, 13-STABLE, and 12-STABLE.

    Work in progress

    • Large-scale network upgrade at our primary site.

    □ New Juniper switches arrived at our primary site to replace the former
    ones. We thank Juniper for the donation.

    • Replace old servers in our primary site and a few mirrors.

    □ Besides the broken CI servers, we have a few old servers with broken
    disks and faulty PSUs. This task is in conjunction with The FreeBSD
    Foundation and donors/sponsors.

    • Install new CI (Continuous Integration) machines repurposed from the
    package builders.

    • Review the backup configuration of the services running in the FreeBSD
    cluster.

    FreeBSD Official Mirrors Overview

    Current locations are Australia, Brazil, Germany, Japan (two full mirror sites), Malaysia, South Africa, Taiwan, United Kingdom (full mirror site), United States of America — California, New Jersey (primary site), and Washington.

    The hardware and network connection have been generously provided by:

    • Bytemark Hosting

    • Cloud and SDN Laboratory at BroadBand Tower, Inc

    • Department of Computer Science, National Yang Ming Chiao Tung University

    • Equinix

    • Internet Association of Australia

    • Internet Systems Consortium

    • INX-ZA

    • KDDI Web Communications Inc

    • Malaysian Research & Education Network

    • Metapeer

    • NIC.br

    • Your.Org

    • 365 Data Centers

    The Frankfurt single server mirror is the primary Europe mirror in bandwidth and usage.

    We are still looking for an additional full mirror site (five servers) in Europe to replace old servers in the United Kingdom full mirror site.

    We see a good pattern in having single mirrors in Internet Exchange Points worldwide (Australia, Brazil, and South Africa); if you know or work for some of them that could sponsor a single mirror server, please get in touch. United States (West Coast) and Europe (anywhere) are preferable places.

    See generic mirrored layout for full mirror site specs and tiny-mirror for a single mirror site.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    Continuous Integration

    Links:
    FreeBSD Jenkins Instance URL: https://ci.FreeBSD.org
    FreeBSD CI artifact archive URL: https://artifact.ci.FreeBSD.org
    FreeBSD Jenkins wiki URL: https://wiki.FreeBSD.org/Jenkins
    Hosted CI wiki URL: https://wiki.FreeBSD.org/HostedCI
    3rd Party Software CI URL: https://wiki.FreeBSD.org/3rdPartySoftwareCI
    Tickets related to freebsd-testing@ URL: https://bugs.freebsd.org/bugzilla/ buglist.cgi?bug_status=open&email1=testing%40FreeBSD.org&emailassigned_to1=1& emailcc1=1&emailtype1=equals
    FreeBSD CI Repository URL: https://github.com/freebsd/freebsd-ci
    dev-ci Mailing List URL: https://lists.FreeBSD.org/subscription/dev-ci

    Contact: Jenkins Admin <jenkins-admin@FreeBSD.org>
    Contact: Li-Wen Hsu <lwhsu@FreeBSD.org>
    Contact: freebsd-testing Mailing List
    Contact: IRC #freebsd-ci channel on EFNet

    In the second quarter of 2023, we worked with the project contributors and developers to address their testing requirements. Concurrently, we collaborated with external projects and companies to enhance their products by testing more on FreeBSD.

    Important completed tasks:

    • FreeBSD-stable-13-amd64-gcc12_build job has been added.

    • Build environment of main and stable/13 branches has been changed to
    13.2-RELEASE, and stable/12 has been changed to 12.4-RELEASE.

    • *-build jobs using gcc12 are sending failure reports to dev-ci Mailing List
    .

    • Present Testing/CI Status Update in BSDCan 2023 Developer Summit

    Work in progress tasks:

    • Designing and implementing pre-commit CI building and testing (to support
    the workflow working group)

    • Designing and implementing use of CI cluster to build release artifacts as
    release engineering does

    • Simplifying CI/test environment setting up for contributors and developers

    • Setting up the CI stage environment and putting the experimental jobs on it

    • Organizing the scripts in freebsd-ci repository to prepare for merging to
    src repository

    • Improving the hardware test lab and adding more hardware for testing

    • Merge https://reviews.freebsd.org/D38815

    • Merge https://reviews.freebsd.org/D36257

    Open or queued tasks:

    • Collecting and sorting CI tasks and ideas

    • Setting up public network access for the VM guest running tests

    • Implementing use of bare-metal hardware to run test suites

    • Adding drm ports building tests against -CURRENT

    • Planning to run ztest tests

    • Helping more software get FreeBSD support in its CI pipeline (Wiki pages:
    3rdPartySoftwareCI, HostedCI)

    • Working with hosted CI providers to have better FreeBSD support

    Please see freebsd-testing@ related tickets for more WIP information, and do not hesitate to join the effort!

    Sponsor: The FreeBSD Foundation

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    Ports Collection

    Links:
    About FreeBSD Ports URL:https://www.FreeBSD.org/ports/
    Contributing to Ports URL: https://docs.freebsd.org/en/articles/contributing/# ports-contributing
    FreeBSD Ports Monitoring URL: http://portsmon.freebsd.org/
    Ports Management Team URL: https://www.freebsd.org/portmgr/
    Ports Tarball URL: http://ftp.freebsd.org/pub/FreeBSD/ports/ports/

    Contact: René Ladan <portmgr-secretary@FreeBSD.org>
    Contact: FreeBSD Ports Management Team <portmgr@FreeBSD.org>

    The Ports Management Team is responsible for overseeing the overall direction of the Ports Tree, building packages, and personnel matters. Below is what happened in the last quarter.

    Currently there are just over 34,400 ports in the Ports Tree. There are currently 3,019 open ports PRs of which 746 are unassigned. The last quarter saw 10,439 commits on the main branch by 151 committers and 745 commits on the 2023Q2 branch by 55 committers. Compared to the previous quarter, this means a slight increase in the number of ports, a tiny decrease in the number of open PRs, and a fair increase in the number of ports commits.

    During this quarter, we welcomed back Tom Judge (tj@) and said goodbye to Steve Wills (swills@). Steve was also on portmgr. As part of the portmgr lurker program, we welcomed Ronald Klop (ronald@), Renato Botelho (garga@), and Matthias Andree (mandree@).

    Portmgr has resumed work on introducing sub-packages into the Tree, but various things still needs to be fleshed out.

    On the software side, pkg was updated to 1.19.2, Firefox to 114.0.2, Chromium to 114.0.5735.198, and KDE Gear to 23.04.2. During the last quarter, antoine@ ran 23 exp-runs to test package updates, bump CPU_MAXSIZE to 1024, fix armv7 failures for devel/cmake-core and add --auto-features=enabled to USES=meson Lastly, the Ports Tree was updated to support LLVM 16 and OpenSSL 3 in FreeBSD-CURRENT.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    Projects

    Projects that span multiple categories, from the kernel and userspace to the Ports Collection or external projects.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    Cirrus-CI

    Links:
    FreeBSD Cirrus-CI Repositories URL: https://cirrus-ci.com/github/freebsd/ FreeBSD src CI URL: https://cirrus-ci.com/github/freebsd/freebsd-src FreeBSD doc CI URL: https://cirrus-ci.com/github/freebsd/freebsd-doc

    Contact: Brooks Davis <brooks@FreeBSD.org> Contact: Ed Maste < emaste@FreeBSD.org> Contact: Li-Wen Hsu <lwhsu@FreeBSD.org>

    Cirrus-CI is a hosted continuous integration service that supports open source projects with CI services on Linux, Windows, macOS, and FreeBSD. It complements our own Jenkins CI infrastructure by supporting other use cases, including testing GitHub pull requests and FreeBSD forks. We added Cirrus-CI configuration to the FreeBSD src tree in 2019 and to doc in 2020. A number of additional FreeBSD projects hosted on GitHub (such as drm-kmod, kyua, pkg, and poudriere) also make use of Cirrus-CI.

    Over the last quarter Cirrus-CI configs received ongoing maintenance updates (moving to the most recent FreeBSD release images). In the src tree we have added some additional checks. These ensure that generated files are updated when needed (make sysent and make makeman) and check for missing directories. We have added jobs that build using the Clang/LLVM 16 toolchain package, mirroring the Clang version now in the base system. The GCC job is now run on the GitHub mirror by default, for all commits.

    Sponsor: DARPA Sponsor: The FreeBSD Foundation

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    BATMAN support in the FreeBSD kernel

    Links:
    Wiki page URL: https://wiki.freebsd.org/SummerOfCode2023Projects/ CallingTheBatmanFreeNetworksOnFreeBSD
    Source code (Pull Request) URL: https://github.com/obiwac/freebsd-gsoc/pull/1

    Contact: Aymeric Wibo <obiwac@FreeBSD.org>

    BATMAN (Better Approach to Mobile Ad-hoc Networking), as developed and used by the Freifunk project, is a routing protocol for (primarily wireless) multi-hop ad-hoc networks. Freifunk is a German initiative to build an open Wi-Fi network at city-scale, based on the principles of net-neutrality. BATMAN’s motive is to
    be a completely decentralized protocol; no one node in the network knows or has to care about the topology of the whole network.

    Support for this protocol is provided by the batman-adv kernel module on Linux, and this project aims to bring that to FreeBSD. This includes the kernel module itself, but also userland networking libraries and tools necessary to create BATMAN networks.

    Currently, creating interfaces and interacting with them works (with both Linux and FreeBSD userspaces), and packet transmission (kind of) works, although it is incomplete as of yet. Support for batadv interfaces has been added to ifconfig(8) too.

    Mentor: Mahdi Mokhtari

    Sponsor: The Google Summer of Code '23 program

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    FreeBSD support on LinuxBoot

    Contact: Warner Losh <imp@bsdimp.com>

    Links:
    LinuxBoot Project URL: https://www.linuxboot.org/+ BSDCan 2023 kboot talk slides URL: https://docs.google.com/presentation/d/ 1N5Jp6XzYWv9Z9RhhETC-e6tFkqRHvp-ldRDW_9h2JCw/edit?usp=sharing

    LinuxBoot is an effort to create a clean, robust, auditable and repeatable boot firmware. What originally started as a specific project at Google has grown to encompass any boot environment that uses Linux to launch the final operating system. Many platforms now support this environment, and in some cases it is the only available boot environment. In addition, some embedded boxes have a LinuxBoot environment hard-coded that is quite hard to change, and being able to reboot into FreeBSD is desirable.

    The old Sony PlayStation 3 port used a boot loader called 'kboot' to boot the FreeBSD port from its Linux kernel (all predating the LinuxBoot project). That code has been greatly expanded, made generic with easily replaceable per-architecture plug ins. The normal FreeBSD /boot/loader is built as a Linux binary that reads in the FreeBSD kernel, modules and tunables. It places them into memory as if it were running in a pre-boot environment, then loads that image into the Linux kernel with kexec_load(2) and does a special reboot to that image. For UEFI-enabled systems, it passes the UEFI memory table and pointer to UEFI runtime services to the new kernel.

    It supports loading files from the host’s filesystem, from any loader(8) -supported filesystem on the host’s block devices (including pools that span multiple devices), from ram disk images and from files downloaded over the network. Any mix of these is available. So, for example, configuration overrides can be loaded from the host’s filesystem whilst the kernel loads from

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)