├── 2017q4 └── re.md ├── 2018q1 ├── portmgr.md └── re.md ├── 2018q2 └── re.md ├── 2018q3 ├── 00_REPORT.md ├── 00_REPORT.xml ├── 12perf.md ├── 4_4_i386.md ├── DTrace.md ├── NOTES.txt ├── NVDIMM.md ├── README.md ├── SMAP.md ├── abi_cleanup.md ├── allwinner.md ├── arm-efi.md ├── armada38x.md ├── bhyveSaveRestoreMigration.md ├── ci.md ├── core.md ├── crossbuilding.md ├── dts.md ├── ena.md ├── graphics.md ├── hardenedbsd.md ├── ifunc.md ├── intel.md ├── kde.md ├── llvm70.md ├── loader.md ├── mapped_BAR.md ├── otg.md ├── pine64-lts.md ├── pocketbeagle.md ├── portmgr.md ├── powernv.md ├── powerparity.md ├── proc.md ├── puppet.md ├── re.md ├── riscv.md ├── rpi.md ├── scarab.md ├── string.md └── wiki.md ├── 2018q4 ├── PAE.md ├── PKRU.md ├── README.md ├── arm64-rockchip.md ├── bcm58712.md ├── bhyve_migration.md ├── bhyve_save_restore.md ├── bsdpl.md ├── capsicum.md ├── ci.md ├── clonos.md ├── core.md ├── dts.md ├── ena.md ├── freebsdfndation.md ├── graphics.md ├── hardenedbsd.md ├── introduction.md ├── kde.md ├── libvdsk_qcow2.md ├── marvell.md ├── nosh.md ├── pfsync.md ├── pinebook.md ├── portmgr.md ├── powerparity.md ├── pwm.md ├── re.md ├── riscv.md ├── tpm.md └── vt-color-schemes.md ├── 2019q1 ├── ASLR.md ├── AXP803.md ├── README.md ├── bcm58712.md ├── capsicum.md ├── ci.md ├── core.md ├── cruntime.md ├── ena.md ├── foundation.md ├── fuse.md ├── gnome.md ├── kde.md ├── kernel-zlib.md ├── libsecureboot.md ├── lld-linker.md ├── mlx5.md ├── pcireset.md ├── pkgbase.md ├── portmgr.md ├── re.md ├── riscv.md ├── sysctlmibinfo.md ├── sysctlview.md ├── syzkaller.md ├── uw-coop.md └── wikimacmini.md ├── 2019q2 ├── Mellanox.md ├── README.md ├── aberdeenhackathon.md ├── bcm58712.md ├── bhyve_migration.md ├── bhyve_snapshot.md ├── ci.md ├── core.md ├── ena.md ├── freebsdfndation.md ├── fuse.md ├── graphics.md ├── irc.md ├── kernel-zlib.md ├── libvdsk_qcow2.md ├── linuxulator.md ├── lockless_di.md ├── ls1046.md ├── nfs42.md ├── nsysctl.md ├── numa.md ├── portmgr.md ├── re.md ├── sdio-wifi.md ├── securityintelligence.md ├── swaptrim.md ├── syzkaller.md └── writecount.md ├── 2019q3 ├── FreshPorts.md ├── README.md ├── bcm58712.md ├── ci.md ├── clonos.md ├── clusteradm.md ├── core.md ├── ena.md ├── foundation.md ├── fuse.md ├── gets.md ├── graphics.md ├── gsoc.md ├── java.md ├── kde.md ├── kernel-zlib.md ├── kernel_mapping_protections.md ├── laptop-support.md ├── llsc.md ├── ls1046.md ├── mac_ipacl.md ├── makefs-msdos.md ├── morello.md ├── nfs42.md ├── nomad-pot-driver.md ├── pf_sigs.md ├── portmgr.md ├── powerpc.md ├── prot_max.md ├── re.md ├── rk3399.md ├── secteam.md ├── stack_gap.md ├── sysctlinfo.md ├── syzkaller.md ├── tss2.md └── xfce.md ├── 2019q4 ├── 7-days-challenge.md ├── README.md ├── ausoc-audio.md ├── azure.md ├── bastille.md ├── ci.md ├── clusteradm.md ├── core.md ├── dts.md ├── ec2-arm.md ├── electronjs.md ├── ena.md ├── esn.md ├── foundation.md ├── intro.md ├── java.md ├── kde.md ├── linuxulator.md ├── ls1046.md ├── mkova.md ├── nfs42.md ├── nomad-pot-driver.md ├── nomadbsd.md ├── portmgr.md ├── powerpc.md ├── re.md ├── rockchip.md ├── sysctlbyname-improved.md ├── upt.md └── wine.md ├── 2020q1 ├── README.md ├── arm64lse.md ├── azure.md ├── bridge.md ├── ci.md ├── clusteradm.md ├── core.md ├── elfctl.md ├── elftoolchain.md ├── ena.md ├── foundation.md ├── gcc-retirement.md ├── go.md ├── graphics.md ├── intro.md ├── kde.md ├── kyua.md ├── linuxulator.md ├── ls1046.md ├── manpages.md ├── morello.md ├── nfsovertls.md ├── nomadbsd.md ├── portmgr.md ├── pot.md ├── powerpc.md ├── re.md ├── riscv.md ├── sigfastblock.md ├── sysctlmibinfo2.md ├── syzkaller.md ├── weblate.md ├── wine.md └── xfce.md ├── 2020q2 ├── FreshPorts.md ├── README.md ├── ausoc-audio.md ├── azure.md ├── bastille.md ├── bc-dc.md ├── bhyve-intel-openbsd.md ├── bhyve-nvme.md ├── binutils.md ├── bluetooth.md ├── chaifi.md ├── cheribsd.md ├── ci.md ├── clusteradm.md ├── core.md ├── drm.md ├── dts.md ├── ena.md ├── forciblyunmount.md ├── foundation.md ├── git.md ├── haskell.md ├── imx8m.md ├── intro.md ├── iwlwifi.md ├── kde.md ├── la57.md ├── largepages.md ├── linuxulator.md ├── ls1046.md ├── lua.md ├── mixertui.md ├── multiarch-ci.md ├── nfsovertls.md ├── office_hours.md ├── portmgr.md ├── potluck.md ├── pvlist.md ├── quarterly.md ├── releng.md ├── riscv.md ├── routing.md ├── rtld.md ├── rtsx.md ├── sage.md ├── valgrind.md ├── vhdx.md ├── weblate.md └── zstd.md ├── 2020q3 ├── README.md ├── azure.md ├── cheribsd.md ├── ci.md ├── clusteradm.md ├── crossbuilding.md ├── docng.md ├── drm.md ├── dts.md ├── ebpf.md ├── ena.md ├── esn.md ├── foundation.md ├── git.md ├── graphics.md ├── grub-bhyve.md ├── if_dwc.md ├── intro.md ├── kde.md ├── linuxulator.md ├── lldb.md ├── ls1046.md ├── lua.md ├── nfsovertls.md ├── office.md ├── portmgr.md ├── potluck.md ├── powerpc64le.md ├── puppet.md ├── releng.md ├── riscv.md ├── syzkaller.md ├── ure-update.md ├── vxlan.md ├── wifi.md └── zstd.md ├── 2020q4 ├── FreeBSD-Foundation.md ├── FreshPorts.md ├── README.md ├── aarch64-foundation.md ├── aarch64-vmware.md ├── basegpl.md ├── bastille.md ├── cheribsd.md ├── ci.md ├── clusteradm.md ├── docng.md ├── embedded-lab.md ├── ena.md ├── git.md ├── hellosystem.md ├── intro.md ├── iwlwifi.md ├── k8s-bhyve.md ├── kde.md ├── linuxulator.md ├── lldb.md ├── netapp.md ├── nfs-exporter.md ├── nfsovertls.md ├── office.md ├── officehours.md ├── openbsm.md ├── pf.md ├── ping.md ├── portmgr.md ├── ports_non_x86.md ├── puppet.md ├── python27-removal.md ├── random-fx.md ├── releng.md ├── riscv.md ├── routing-lookups.md ├── routing-multipath.md ├── thunderbolt.md ├── toolchain.md ├── vectored-aio.md ├── weblate.md ├── xfce.md └── zstd.md ├── 2021q1 ├── _index.adoc ├── cbsd.adoc ├── ci.adoc ├── clusteradm.adoc ├── discord.adoc ├── docng.adoc ├── ena.adoc ├── freebsd-foundation.adoc ├── git.adoc ├── hellosystem.adoc ├── iwlwifi.adoc ├── kde.adoc ├── kernel-sanitizers.adoc ├── linuxulator.adoc ├── lldb.adoc ├── marvell.adoc ├── mitigations.adoc ├── nv-sndstat.adoc ├── office.adoc ├── openbsm.adoc ├── pkgbase.live.adoc ├── portmgr.adoc ├── potluck.adoc ├── releng.adoc ├── sysctl-improvements.adoc ├── virtualbox.adoc ├── weblate.adoc └── www.adoc ├── 2021q2 ├── FreshPorts.adoc ├── _index.adoc ├── bsddialog.adoc ├── ci.adoc ├── clusteradm.adoc ├── doceng.adoc ├── dpaa.adoc ├── drm-kmod.adoc ├── emacs.adoc ├── ena.adoc ├── erlang.adoc ├── experimental-installer.adoc ├── freebsd-foundation.adoc ├── gcc.adoc ├── git.adoc ├── graphics.adoc ├── hellosystem.adoc ├── iwlwifi.adoc ├── kde.adoc ├── kernel-sanitizers.adoc ├── libglvnd.adoc ├── linuxulator.adoc ├── lldb.adoc ├── ls1028a.adoc ├── marvell.adoc ├── multicast.adoc ├── opath.adoc ├── pf_dummynet.adoc ├── pf_ethernet.adoc ├── pf_syncookie.adoc ├── pmc.adoc ├── polarfire-soc.adoc ├── portmgr.adoc ├── pot.adoc ├── racct.adoc ├── raidz-expansion.adoc ├── releng.adoc ├── science.adoc ├── switchtec.adoc ├── syzkaller.adoc ├── weblate.adoc └── www.adoc ├── 2021q3 ├── _index.adoc ├── arm64.adoc ├── azure.adoc ├── boot-performance.adoc ├── ci.adoc ├── clusteradm.adoc ├── copy_staging.adoc ├── cpe.adoc ├── current-compilation-time-analysis.adoc ├── doceng.adoc ├── ena.adoc ├── erlang.adoc ├── freebsd-foundation.adoc ├── git.adoc ├── gitlab.adoc ├── hellosystem.adoc ├── holepunching.adoc ├── intelnet.adoc ├── iwlwifi.adoc ├── kde.adoc ├── linuxulator.adoc ├── lldb.adoc ├── mgb.adoc ├── mixer.adoc ├── msdosfs_rename.adoc ├── ocf-wg.adoc ├── opensearch.adoc ├── openssh.adoc ├── portmgr.adoc ├── pot.adoc ├── raidz-expansion.adoc ├── releng.adoc ├── rfc1191.adoc ├── rtw88.adoc ├── sdhci_acpi.adoc ├── stackgap.adoc ├── syzkaller.adoc ├── valgrind.adoc ├── vmd.adoc ├── wg.adoc ├── wine.adoc ├── www.adoc └── ztop.adoc ├── 2021q4 ├── _index.adoc ├── aslr.adoc ├── avx-bug.adoc ├── boot-performance.adoc ├── doceng.adoc ├── ena.adoc ├── freebsd-foundation.adoc ├── hellosystem.adoc ├── iwlwifi.adoc ├── kde.adoc ├── lldb.adoc ├── ls1027a.adoc ├── membarrier-rseq.adoc ├── ocf-wg.adoc ├── office.adoc ├── openssh.adoc ├── portmgr.adoc ├── pot.adoc ├── vdso.adoc └── www.adoc ├── 2022q1 ├── Makefile ├── accessibility.adoc ├── boot-performance.adoc ├── ci.adoc ├── clusteradm.adoc ├── doceng.adoc ├── dpaa2.adoc ├── ena.adoc ├── fpart.adoc ├── freebsd-foundation.adoc ├── gcc.adoc ├── gunion.adoc ├── hellosystem.adoc ├── intro.adoc ├── iwlwifi.adoc ├── kde.adoc ├── ocf-wg.adoc ├── office.adoc ├── portconfig.adoc ├── portmgr.adoc ├── pot.adoc ├── releng.adoc ├── rtw88.adoc └── wifibox.adoc ├── 2022q2 ├── Makefile ├── azure.adoc ├── blued.adoc ├── ci.adoc ├── clusteradm.adoc ├── core.adoc ├── doceng.adoc ├── dpaa2.adoc ├── ena.adoc ├── freebsd-foundation.adoc ├── gcc.adoc ├── golang_riscv64.adoc ├── if_ovpn.adoc ├── igt-gpu-tools.adoc ├── intro.adoc ├── kde.adoc ├── linuxulator.adoc ├── lldb.adoc ├── makefs-zfs.adoc ├── openssh.adoc ├── pantheon.adoc ├── pf.adoc ├── portmgr.adoc ├── releng.adoc ├── shp_rand.adoc ├── superpages.adoc ├── valgrind.adoc └── wifi.adoc ├── 2022q3 ├── Makefile ├── bhyve-debug-server-enhancements.adoc ├── calendar-data.adoc ├── ci.adoc ├── cloud-init.adoc ├── clusteradm.adoc ├── core.adoc ├── doceng.adoc ├── ena.adoc ├── firecracker.adoc ├── freebsd-foundation.adoc ├── gcc.adoc ├── intro.adoc ├── iwlwifi.adoc ├── kde.adoc ├── kinst.adoc ├── lldb.adoc ├── lsof.adoc ├── openstack-on-freebsd.adoc ├── pjdfstest.adoc ├── portmgr.adoc ├── pot.adoc ├── releng.adoc ├── ufs_snapshots.adoc ├── wifi.adoc └── wtap.adoc ├── 2022q4 ├── FreshPorts.adoc ├── Makefile ├── NFS-in-prisons.adoc ├── accessibility.adoc ├── azure.adoc ├── biology.adoc ├── budgie.adoc ├── cheribsd.adoc ├── ci.adoc ├── cloud-init.adoc ├── clusteradm.adoc ├── core.adoc ├── ddb_ctf.adoc ├── doceng.adoc ├── freebsd-foundation.adoc ├── gcc.adoc ├── golang_riscv64.adoc ├── intro.adoc ├── kde.adoc ├── netlink.adoc ├── openssh.adoc ├── openstack-on-freebsd.adoc ├── pantheon.adoc ├── papers.adoc ├── portmgr.adoc ├── portsdb.adoc ├── pot.adoc ├── pytest-for-atf.adoc ├── releng.adoc ├── riscv.adoc ├── status.adoc ├── ufs_snapshots.adoc ├── vessel-status-report.adoc ├── wifi.adoc ├── xen.adoc └── xfce.adoc ├── LICENSE.adoc ├── README.adoc ├── portmgr-template.adoc ├── report-sample.adoc └── tools ├── Category.rb ├── Makefile ├── Makefile.commands ├── Makefile.template ├── call.txt.template ├── generate-index.rb ├── sendcalls └── tests ├── Makefile.all-reports ├── Makefile.one-sentence-per-line ├── Makefile.pluses └── Makefile.titles /2017q4/re.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Release Engineering Team ## 2 | 3 | Contact: FreeBSD Release Engineering Team, 4 | 5 | Link: [FreeBSD 10.4-RELEASE schedule](https://www.freebsd.org/releases/10.4R/schedule.html) 6 | Link: [FreeBSD 10.4-RELEASE announcement](https://www.freebsd.org/releases/10.4R/announce.html) 7 | Link: [FreeBSD development snapshots](https://download.freebsd.org/ftp/snapshots/ISO-IMAGES/) 8 | 9 | The FreeBSD Release Engineering Team is responsible for setting 10 | and publishing release schedules for official project releases 11 | of FreeBSD, announcing code freezes and maintaining the 12 | respective branches, among other things. 13 | 14 | The FreeBSD Release Engineering Team completed the 10.4-RELEASE, 15 | led by Marius Strobl, early October. FreeBSD 10.4-RELEASE is the 16 | fifth release from the *stable/10* branch, which builds on the 17 | stability and reliability of 10.3-RELEASE 18 | 19 | This project was partially sponsered by the FreeBSD Foundation. 20 | -------------------------------------------------------------------------------- /2018q1/re.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Release Engineering Team ## 2 | 3 | Contact: FreeBSD Release Engineering Team, 4 | 5 | Link: [FreeBSD 11.2-RELEASE schedule](https://www.freebsd.org/releases/11.2R/schedule.html) 6 | Link: [FreeBSD development snapshots](https://download.freebsd.org/ftp/snapshots/ISO-IMAGES/) 7 | 8 | The FreeBSD Release Engineering Team is responsible for setting 9 | and publishing release schedules for official project releases 10 | of FreeBSD, announcing code freezes and maintaining the 11 | respective branches, among other things. 12 | 13 | The FreeBSD Release Engineering Team finalized and announced the release 14 | schedule for 11.2 mid-February, targeted to start mid-April. 15 | 16 | Throughout the remainder of the quarter, several development snapshots builds 17 | were released for the *head*, *stable/11*, and *stable/10* branches. 18 | 19 | Much of this work was sponsored by the FreeBSD Foundation. 20 | -------------------------------------------------------------------------------- /2018q2/re.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Release Engineering Team ## 2 | 3 | Contact: FreeBSD Release Engineering Team, 4 | 5 | Link: [FreeBSD 11.2-RELEASE schedule](https://www.freebsd.org/releases/11.2R/schedule.html) 6 | Link: [FreeBSD 12.0-RELEASE schedule](https://www.freebsd.org/releases/12.0R/schedule.html) 7 | Link: [FreeBSD development snapshots](https://download.freebsd.org/ftp/snapshots/ISO-IMAGES/) 8 | 9 | The FreeBSD Release Engineering Team is responsible for setting 10 | and publishing release schedules for official project releases 11 | of FreeBSD, announcing code freezes and maintaining the 12 | respective branches, among other things. 13 | 14 | The FreeBSD Release Engineering Team wrote an initial draft of the FreeBSD 15 | 12.0-RELEASE cycle, as well as started the 11.2-RELEASE cycle in April. 16 | 17 | The 11.2-RELEASE cycle started April 20 with the code slush, and continued to 18 | progress througout the rest of the quarter with the code freeze, followed by 19 | three BETA builds and three RC builds, with the final release build announced 20 | June 27. 21 | 22 | Throughout the remainder of the quarter, several development snapshots builds 23 | were released for the *head*, *stable/11*, and *stable/10* branches. 24 | 25 | Much of this work was sponsored by the FreeBSD Foundation. 26 | -------------------------------------------------------------------------------- /2018q3/12perf.md: -------------------------------------------------------------------------------- 1 | FreeBSD 12 saw the introduction of a number of performance improvements: 2 | - the introduction of the new synchronization primitive epoch to replace the 3 | use of reader locks for providing existence guarantees for data structures 4 | - epoch was used to provide an 85+% reduction in the overhead of pcb lookup 5 | in high core count systems 6 | - It was used to provide an 85+% reduction in UDP send overhead on high core 7 | count systems - see the link for a bit more detail: 8 | http://scalebsd.org/blog/2018/06/16/UDP-and-epoch-for-liveness-guarantees 9 | 10 | - System call overhead is now half that of 11 11 | - UNIX sockets now scale near linearly (previously maxed out at 3-4 threads) 12 | - The NUMA work has lead to a 20x-80x improvement in the scalability of page 13 | fault handling 14 | -------------------------------------------------------------------------------- /2018q3/NOTES.txt: -------------------------------------------------------------------------------- 1 | # 2 | # These reports are about prior Quarters of activity, the 3 | # contents of most (all?) of the sections should be written in 4 | # the past tense. 5 | # 6 | 7 | # Editing: 8 | # Updates should happen to the individual .md files for each 9 | # report section. This allows for greater editing in parallel, 10 | # with less chance of conflicts. At the end of the editing process, 11 | # the smaller files will be concatenated together. 12 | 13 | # SPECIAL 2018Q3 note: edit the 00_REPORT.md file directly for 14 | # this set of the release notes. 15 | 16 | # Each section of the report is written from the point of view 17 | # of different authors, which means that using "we" when describing 18 | # changes / efforts / opinions should be discouraged. 19 | # 20 | # In particular, the section "The FreeBSD Foundation" uses this 21 | # terminology in many, many places. Too many to edit in a quick 22 | # pass of the documentation. 23 | 24 | # Consistency in referenced email addresses: 25 | # Many email addresses referenced in report sections call out the 26 | # email address after a person's name by surround the email address 27 | # with parentheses and including a trailing "at" (@) symbol: 28 | # e.g. George Neville-Neil (gnn@) 29 | -------------------------------------------------------------------------------- /2018q3/README.md: -------------------------------------------------------------------------------- 1 | Third quarter of 2018 2 | ===================== 3 | 4 | This is the directory for status reports for the third quarter of 2018. 5 | 6 | -------------------------------------------------------------------------------- /2018q3/SMAP.md: -------------------------------------------------------------------------------- 1 | ## SMAP ## 2 | Contact: Konstantin Belousov, 3 | Link: None 4 | 5 | Support for SMAP, which stands for supervisor-mode access prevention, 6 | was added to amd64 kernels. SMAP makes faulting any access from the 7 | supervisor mode to the pages accessible to user mode, unless the 8 | %eflags.AC bit is set. 9 | 10 | SMAP implementation uses the ifunc framework to avoid checking for the 11 | SMAP capability of hardware on each call for the copyout(9) and other 12 | functions. 13 | 14 | On amd64, we have the common address space between kernel and user. 15 | Enabling SMAP virtually splits the it into two disjoint address 16 | spaces, providing relatively low-overhead way of catching direct 17 | accesses from kernel to usermode, without using the copyout(9) family 18 | of functions. 19 | 20 | It is interesting that not much bugs were found in our kernel after 21 | the SMAP was enabled. One issue existed in the pci(9) user driver. 22 | On the other hand, at least two ports, VBox and acpi_call, appeared to 23 | access userspace in unsafe manner. 24 | 25 | The work was sponsored by The FreeBSD Foundation. 26 | -------------------------------------------------------------------------------- /2018q3/allwinner.md: -------------------------------------------------------------------------------- 1 | ## Allwinner SoC Support 2 | 3 | Contact: Emmanuel Vadot 4 | 5 | * SPI driver added for A64 SoC 6 | * Thermal driver added/fixed for A64/H3/H5 SoCs 7 | * Lot of bugs where fixed in the mmc driver, stability should be better 8 | * New driver for AXXP803 which is the power chip companion of the A64 SoC 9 | * Add overlays to use another timer controller as the default one in A64 if faulty 10 | These overlay is enabled in the PINE64/LTS images by default 11 | -------------------------------------------------------------------------------- /2018q3/arm-efi.md: -------------------------------------------------------------------------------- 1 | ## ARMv6 and ARMv7 image now use EFI loader 2 | 3 | Contact: Emmanuel Vadot 4 | 5 | Instead of using the ubldr version of the loader which uses the U-Boot 6 | API, all images now use loader.efi as their primary FreeBSD loader. 7 | This allow us to have a common boot path for all arm and arm64 image. 8 | -------------------------------------------------------------------------------- /2018q3/dts.md: -------------------------------------------------------------------------------- 1 | ## DTS Update 2 | 3 | Contact: Emmanuel Vadot 4 | 5 | DTS files (Device Tree Sources) were updated to be in pair with Linux 4.18 for 6 | the 12.0 releaase. 7 | 8 | The DTS are now compile for some arm64 boards as the one present in U-Boot are 9 | now always up-to-date. 10 | -------------------------------------------------------------------------------- /2018q3/otg.md: -------------------------------------------------------------------------------- 1 | ## Device Mode USB 2 | 3 | Contact: Edward Tomasz Napierala, 4 | 5 | Link: [Handbook chapter](https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/usb-device-mode.html) 6 | 7 | Many embedded boards include hardware which supports device 8 | side USB - the ability for the board to present itself to another 9 | system as a USB drive, network adapter, or a virtual serial port. 10 | FreeBSD USB stack has supported this functionality for quite some 11 | time, but it wasn't used to its full extent. 12 | 13 | The goal of this project was to fix that - to document the 14 | functionality, possibly fix some bugs, and to make it easy 15 | to use, automating it as much as possible. 16 | 17 | Starting with FreeBSD 12.0, this functionality is enabled 18 | out of the box. This means you can connect your BeagleBone 19 | Black's (using its USB client socket) or a Raspberry Pi 0 20 | (using the OTG port) to your laptop, and you'll get a virtual 21 | USB serial port, which serves as a system console, with getty(8) 22 | waiting for you to log in. This means you no longer need to 23 | look for a keyboard and a screen, or mess with the console 24 | cables just to configure your system. You can also switch 25 | it to provide network interface, or present itself as a USB 26 | drive - it's all documented in the FreeBSD Handbook. 27 | 28 | -------------------------------------------------------------------------------- /2018q3/pine64-lts.md: -------------------------------------------------------------------------------- 1 | ## PINE64-LTS Image 2 | 3 | Contact: Emmanuel Vadot 4 | 5 | We now produce an image for the PINE64-LTS. 6 | This image works on the PINE64-LTS and the Sopine with Baseboard. 7 | -------------------------------------------------------------------------------- /2018q3/pocketbeagle.md: -------------------------------------------------------------------------------- 1 | ## PocketBeagle Support 2 | 3 | Contact: Emmanuel Vadot , Tom Jones 4 | 5 | Link: [Pocket Beagle](https://www.beagleboard.org/pocket) 6 | 7 | The Pocket Beagle is the latest member of the BeagleBoard family. 8 | Support for it was added and the Beaglebone image can be used on it directly. 9 | -------------------------------------------------------------------------------- /2018q3/re.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Release Engineering Team ## 2 | 3 | Contact: FreeBSD Release Engineering Team, 4 | 5 | Link: [FreeBSD 12.0-RELEASE schedule](https://www.freebsd.org/releases/12.0R/schedule.html) 6 | Link: [FreeBSD development snapshots](https://download.freebsd.org/ftp/snapshots/ISO-IMAGES/) 7 | 8 | The FreeBSD Release Engineering Team is responsible for setting 9 | and publishing release schedules for official project releases 10 | of FreeBSD, announcing code freezes and maintaining the 11 | respective branches, among other things. 12 | 13 | The FreeBSD Release Engineering Team started the 12.0-RELEASE cycle August 10, 14 | beginning with the code slush. The code slush followed August 24, with the 15 | *stable/12* branch expected to be created September 21. 16 | 17 | However, due to unforseen circumstances related to upstream code that was 18 | deemed necessary to include in 12.0-RELEASE, the schedule needed to be 19 | adjusted several times to account for works-in-progress related to the 20 | upstream code to be compatible with other base system utilities. At the end 21 | of the quarter, the *stable/12* branch had not been created due to this delay. 22 | 23 | Throughout the remainder of the quarter, several development snapshots builds 24 | were released for the *head*, *stable/11*, and *stable/10* branches. 25 | 26 | Much of this work was sponsored by the FreeBSD Foundation. 27 | -------------------------------------------------------------------------------- /2018q3/rpi.md: -------------------------------------------------------------------------------- 1 | ## RPI Firmware/DTB/U-Boot Update 2 | 3 | Contact: Emmanuel Vadot , U-Boot mailing list: 4 | 5 | The RaspberryPi firmware loads the DTB from the FAT partition based on 6 | the model. U-Boot now uses this DTB and pass it to the FreeBSD loader/kernel 7 | instead of using the one it embed. 8 | This allow us to use the RaspberryPi Foundation provided DTB overlays to enable 9 | HATs. 10 | The Overlays can be obtained by installing the rpi-firmware package. 11 | 12 | A new u-boot port for the W variant of the RPI0 was commited as u-boot-rpi-0-w. 13 | Some experiments started by trasz@ show that we could maybe produce a generic 14 | image for all armv6 RPI (RPI-B, RPI0 and RPI0W). 15 | -------------------------------------------------------------------------------- /2018q4/README.md: -------------------------------------------------------------------------------- 1 | Fourth quarter of 2018 2 | ===================== 3 | 4 | This is the directory for status reports for the fourth quarter of 2018. 5 | 6 | -------------------------------------------------------------------------------- /2018q4/arm64-rockchip.md: -------------------------------------------------------------------------------- 1 | ## RockChip Support ## 2 | 3 | Contact: Emmanuel Vadot, 4 | 5 | Early support for the RockChip RK3399 has been commited. 6 | For now it's only possible to netboot boards (Like the RockPro64). 7 | Original patch was submitted by Greg V . 8 | 9 | Support for the RK805 and RK808 PMIC (Power Management IC) has been added. 10 | This allow changing some regulators voltage such as the cores one so cpufreq 11 | support works. You can change core frequencies with sysctl or powerd(8). 12 | -------------------------------------------------------------------------------- /2018q4/bcm58712.md: -------------------------------------------------------------------------------- 1 | ## Broadcom ARM64 SoC support ## 2 | 3 | Contact: Michal Stanek, 4 | Contact: Marcin Wojtas, 5 | 6 | Semihalf has recently started work on FreeBSD support for BCM5871X SoC series. 7 | 8 | Link: [BCM58712 Product Brief](https://www.broadcom.com/products/embedded-and-networking-processors/communications/bcm58712/) 9 | 10 | These are quad-core 64-bit ARMv8 Cortex-A57 communication processors targeted for 11 | networking applications such as 10G routers, gateways, control plane processing and NAS. Initial support will include iProc PCIe, internal BNXT Ethernet 12 | controller, OTP (One Time Programmable memory) 13 | and crypto engine acceleration for IPsec offloading. This work is expected to be ready for FreeBSD-HEAD before Q3 2019. 14 | 15 | Sponsor: Juniper 16 | -------------------------------------------------------------------------------- /2018q4/bsdpl.md: -------------------------------------------------------------------------------- 1 | ## BSD PL ## 2 | 3 | Contact: Official, 4 | Contact: Konrad Witaszczyk, 5 | Contact: Mariusz Zaborski, 6 | Contact: Jarosław Żurek, 7 | 8 | Link: (https://bsd-pl.org/) 9 | 10 | The Polish BSD User group is an initiative promoting systems from the 11 | BSD family. We organize both meetings and as well as tutorial 12 | sessions. In general, we have three presentations which last around 15 13 | minutes. Afterwards there’s an open discussions about topics related 14 | to operating systems and security. There’s something for everybody, 15 | and the first presentation is about something connected to BSD and 16 | it’s aimed at beginners. The second presentation is for more advanced 17 | BSD users but the final talk is more general and not connected to BSD. 18 | Usually it covers an interesting topic related to technology. Everyone 19 | can suggest a subject for the presentations and discussions. Some 20 | presentations from the past were about: ZFS checkpoints, GELI, 21 | FreeNAS, PAM, DTrace, Yubikey, Pytest, ZeroTrust, Jenkins and the 22 | iocage training session. Hope to see you there! 23 | -------------------------------------------------------------------------------- /2018q4/capsicum.md: -------------------------------------------------------------------------------- 1 | ## Capsicum ## 2 | 3 | Contact: Mark Johnston, 4 | Contact: Ed Maste, 5 | Contact: Mariusz Zaborski, 6 | 7 | Link: [Capsicum Wiki Page](https://wiki.FreeBSD.org/Capsicum) 8 | 9 | The major improvement in Capsicum is introducing a Casper service 10 | fileargs, which is an easy way helps to sandbox the utils which need 11 | access to the filesystem. There are several examples of usage fileargs 12 | in applications like brandelf(1), wc(1), savecore(1), head(1) and 13 | strings(1). The fileargs service also helps to bring new features to 14 | the bhyve like audio device which is secured using Capsicum. 15 | 16 | Another big step was introducing a private Casper service and 17 | sandboxing the rtsold(8) and rtsol(8). 18 | 19 | Next major improvement, which is still under the review, is rewriting 20 | the sysctl service. The new sysctl service will allow in an easy way 21 | to use cap_sysctl() and cap_sysctlnametomib(). 22 | -------------------------------------------------------------------------------- /2018q4/core.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Core Team ## 2 | 3 | Contact: FreeBSD Core Team, 4 | 5 | Noteworthy events since the last quarterly report: 6 | - Yuri Pankov (yuripv@) was awarded a source commit bit under the mentorship of Konstantin Belousov (kib@). 7 | - Core agrees that portmgr@ may enforce a 12-month commit bit expiration for ports committers. 8 | - Thomas Munro (tmunro@) was awarded a source commit bit under the mentorship of Mateusz Guzik (mjg@) and co-mentorship of Allan Jude (allanjude@). 9 | - With the approval of FCP-0101, 10/100 Ethernet drivers will be deprecated. 10 | - Core approved the promotion of Remko Lodder (remko@) to Deputy Security Officer. 11 | -------------------------------------------------------------------------------- /2018q4/dts.md: -------------------------------------------------------------------------------- 1 | ## DTS Update ## 2 | 3 | Contact: Emmanuel Vadot, 4 | 5 | DTS files (Device Tree Sources) were updated to be on par with Linux 4.20 for 6 | head and 4.19 for the 12-STABLE branch. 7 | 8 | The DTS are now compiled for some arm64 boards, as the one present in U-Boot are 9 | not always up-to-date. 10 | -------------------------------------------------------------------------------- /2018q4/ena.md: -------------------------------------------------------------------------------- 1 | ## ENA FreeBSD Driver Update ## 2 | 3 | Contact: Michal Krawczyk, 4 | 5 | Link: [ENA README](https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README) 6 | 7 | ENA (Elastic Network Adapter) is the smart NIC which is used in the virtualized 8 | environment of Amazon Web Services (AWS). It supports multiple queues and can 9 | handle up to 25 Gb/s, depending on the instance type on which it is used. 10 | 11 | ENAv2 has been under development for FreeBSD, similar to Linux OS and DPDK. 12 | New changes are including: 13 | 14 | * Upgrade of the HAL to the version supporting ENAv2 15 | * Optimization of the logging on the Tx path 16 | * LLQ (Low Latency Queue) feature, which is reducing latency on instances supporting ENAv2 17 | * Optimization of the locks on hot paths by adding Tx queue management and lockless Rx queue cleanup 18 | * Fixes on the error handling paths 19 | * Use bitfield for tracking device states 20 | * Add additional doorbells on Tx path 21 | * Add queue depth setup in the runtime and allows Rx queue depth to be configured independently 22 | * And more minor bug fixes and code reorganization 23 | 24 | Todo: 25 | 26 | * Internal review and validation 27 | * Upstream of the patches 28 | 29 | Sponsor: Amazon.com Inc 30 | -------------------------------------------------------------------------------- /2018q4/introduction.md: -------------------------------------------------------------------------------- 1 | To whom this may concern 2 | 3 | Since we are still on this island among many in this vast ocean of the Internet, we write this message in a bottle to inform you of the work we have finished and what lies ahead of us. These deeds that we have wrought with our minds and hands, they are for all to partake of - in the hopes that anyone of their free will, will join us in making improvements. In todays message the following by no means complete or ordered set of improvements and additions will be covered: 4 | 5 | i386 PAE Pagetables for up to 24GB memory support, Continuous Integration efforts, driver updates to ena and graphics, ARM enhancements such as RochChip, Marvell 8K, and Broadcom support as well as more DTS files, more Capsicum possibilities, as well as pfsync improvements, and many more things that you can read about for yourselves. 6 | 7 | Additionally, we bring news from some islands further down stream, namely the nosh project, HardenedBSD, ClonOS, and the Polish BSD User-Group. 8 | 9 | We would, selfishly, encourage those of you who give us the good word to please send in your submissions sooner than just before the deadline, and also encourage anyone willing to share the good word to please read the section on which submissions we're also interested in having. 10 | 11 | Yours hopefully, 12 | Daniel Ebdrup, on behalf of the status report team. 13 | -------------------------------------------------------------------------------- /2018q4/kde.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD KDE status report ## 2 | 3 | Contact: Adriaan de Groot, 4 | Contact: Tobias C. Berner, 5 | 6 | Link: [KDE FreeBSD](https://freebsd.kde.org/) 7 | 8 | First of all, we removed KDE 4 from the ports tree this quarter. 9 | Qt4 will follow it by the end of march. 10 | 11 | Thanks to the update of libinput in ports we could finally update Plasma Desktop 12 | past 5.12, and are now again in sync with the upstream releases. 13 | 14 | KDE Frameworks and Applications were also kept in sync with upstream. 15 | 16 | We've also updated Qt5 to 5.12 -- with QtWebEngine still hanging on on 5.9.5 17 | for now, but thanks to a new contributor we should have 5.12 by the end of Q1. 18 | 19 | In the background we changed the default behaviour of cmake in the ports tree 20 | to default to outsource builds. 21 | 22 | People who are willing to contribute can find us on #kde-freebsd on freenode, 23 | and the kde@FreeBSD.org mailing list. Further we accept pull-requests and 24 | contributions on github.com/freebsd/freebsd-ports-kde. 25 | -------------------------------------------------------------------------------- /2018q4/libvdsk_qcow2.md: -------------------------------------------------------------------------------- 1 | ## libvdsk - QCOW2 implementation ## 2 | 3 | Contact: Sergiu Weisz, 4 | 5 | Contact: Marcelo Araujo, 6 | 7 | Contact: Mihai Carabas, 8 | 9 | Link: [Github - Libvdsk QCOW2 branch](https://github.com/FreeBSD-UPB/freebsd/tree/projects/bhyve_libvdsk) 10 | 11 | New features added: 12 | 13 | * Extend libvdsk to make it easier to implement new formats; 14 | * Implement read/write/probe functionalities in order to parse QCOW2 image files; 15 | 16 | Future tasks: 17 | 18 | * Add support for Copy-On-Write; 19 | * Add support for multiple snapshots; 20 | * Integrate libvdsk in bhyve 21 | 22 | Sponsor: Matthew Grooms 23 | -------------------------------------------------------------------------------- /2018q4/marvell.md: -------------------------------------------------------------------------------- 1 | ## Marvell 8K SoC support ## 2 | 3 | Contact: Emmanuel Vadot, 4 | Contact: Luis Octavio O Souza, 5 | 6 | Support for booting FreeBSD on Marvell 8K SoC (present on the MacchiatoBin for example) 7 | has been commited. 8 | As of today clocks, gpio, thermal, sdcard/eMMC drivers has been commited. 9 | SATA and USB were already working. 10 | 11 | Sponsor: Rubicon Communications, LLC ("Netgate") 12 | -------------------------------------------------------------------------------- /2018q4/pfsync.md: -------------------------------------------------------------------------------- 1 | ## pfsync performance improvement ## 2 | 3 | Contact: Kristof Provost, 4 | 5 | While pf itself can operate on multiple states simultaneously 6 | (on different cores), pfsync could not. It used a single PFSYNC_LOCK. 7 | This greatly reduced throughput on multicore systems as soon as pfsync 8 | was loaded. 9 | 10 | This was improved by splitting the pfsync queues into buckets, based on the 11 | state ID. This ensures that updates for a given connection always end up 12 | in the same bucket, allowing pfsync to still collapse multiple 13 | updates into one, while allowing multiple cores to proceed at the same 14 | time. 15 | The buckets are independently locked, allowing multiple cores to proceed at once. 16 | 17 | The number of buckets is tunable, but defaults to twice the number of cpus. 18 | Benchmarking has shown improvement of 30 to 100% depending on hardware and setup. 19 | 20 | During this effort several vnet-related issues were fixed as well, and a basic 21 | pfsync test case was added. 22 | 23 | This was committed into head in r341646, and later merged into stable/12 and stable/11. 24 | 25 | Sponsor: Orange Business Services 26 | -------------------------------------------------------------------------------- /2018q4/pinebook.md: -------------------------------------------------------------------------------- 1 | ## Pinebook SDCard Image ## 2 | 3 | Contact: Emmanuel Vadot, 4 | 5 | SDCard image is now produced for the Pinebook. 6 | By default the console is directed in the EFI Framebuffer and the serial 7 | console. 8 | -------------------------------------------------------------------------------- /2018q4/powerparity.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD on Power9 (ppc64) Parity ## 2 | 3 | - NMI semantics: NMIs need to be emulated by only soft disabling interrupts, 4 | disabling interrupts blocks all interrupts except machine check exceptions 5 | and system resets. 6 | - Superpage support is stable and on by default in the POWER9BSD staging branch 7 | - NUMA support: Parse OFW and set up appropriate structures for memory 8 | to be allocated from the correct domain and interrupts to be bound to the 9 | correct socket. 10 | - LKPI support for POWER9, Drm-next supports radeonkms. Some additional big 11 | endian changes required for amdgpu. 12 | - Interrupt handling improvements resulting in up to a 10% reduction in 13 | buildkernel time. 14 | - Cached XICS IPI vector 15 | - Added XIVE exploitation mode driver 16 | - Rust support in review. 17 | - Successfully booted an LLVM compiled kernel. 18 | 19 | -------------------------------------------------------------------------------- /2018q4/pwm.md: -------------------------------------------------------------------------------- 1 | ## PWM Kernel API and userland utility ## 2 | 3 | Contact: Emmanuel Vadot, 4 | 5 | A new subsystem was added to the kernel for PWM drivers to register themselves. 6 | In pair with the kernel subsystem, a pwm(8) utility is also available so users 7 | can configure PWM on their embedded boards. 8 | For now the only PWM driver compatible with this subsystem is for ARM Allwinner SoCs. 9 | -------------------------------------------------------------------------------- /2018q4/riscv.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD/RISC-V update ## 2 | 3 | Contact: Ruslan Bukin, 4 | Contact: Mark Johnston, 5 | 6 | FreeBSD/RISC-V is getting more mature during last quarter. 7 | 8 | We have optimised RISC-V copyin(9)/copyout(9) routines. They now support word-sized copies where possible to dramatically increase speed of copying data between kernel and userspace. 9 | 10 | We made a series of improvements and bug fixes to pmap support (machine-dependent portion of virtual memory subsystem). This part was not touched during the last years, and is now getting attention. 11 | 12 | RISC-V GENERIC kernel gets support for witness(4) (The FreeBSD lock validation facility). 13 | 14 | The British company [Embecosm](https://www.embecosm.com/) has reported that they were able to boot FreeBSD on real hardware -- a SiFive Unleashed board. The support is limited to a single core only. We are expecting patches from them. 15 | -------------------------------------------------------------------------------- /2018q4/vt-color-schemes.md: -------------------------------------------------------------------------------- 1 | ## Collection of vt(4) color schemes ## 2 | 3 | Contact: Tobias Kortkamp, 4 | 5 | Link: [iTerm2-Color-Schemes repository with previews](https://github.com/mbadolato/iTerm2-Color-Schemes) 6 | Link: [iTerm2-Color-Schemes vt color schemes](https://github.com/mbadolato/iTerm2-Color-Schemes/tree/master/freebsd_vt) 7 | 8 | Since 11.2-RELEASE vt(4) supports setting custom color schemes via 9 | the `kern.vt.color.X.rgb` tunables. This is nice but what was 10 | missing were some ready to use themes. 11 | 12 | iTerm2-Color-Schemes is a collection of around 200 color schemes 13 | for various terminals. It has recently gained support for vt(4). 14 | Customizing your console is now as easy as copy and pasting your 15 | favorite theme to `/boot/loader.conf` or `/boot/loader.conf.local`. 16 | 17 | -------------------------------------------------------------------------------- /2019q1/AXP803.md: -------------------------------------------------------------------------------- 1 | ## AXP803 PMIC driver update ## 2 | 3 | Contact: Ganbold Tsagaankhuu, 4 | 5 | The AXP803 is a highly integrated PMIC that targets Li-battery 6 | (Li-ion or Li-polymer) applications. It provides flexible power 7 | management solution for processors such as the Allwinner A64 SoC. 8 | This SoC is used by [Pinebook](https://www.pine64.org/pinebook/). 9 | 10 | The following updates were performed on the AXP803 driver: 11 | 12 | * Enabled necessary bits when activating interrupts. This allows 13 | reading some events from the interrupt status registers. These 14 | events are reported to devd via system "PMU" and subsystem 15 | "Battery", "AC" and "USB" such as plugged/unplugged, battery 16 | absent, charged and charging. 17 | * Added sensors support for AXP803/AXP813. Sensor values such as 18 | battery charging, charge state, voltage, charging current, 19 | discharging current, battery capacity can be obtained via sysctl. 20 | * Added sysctl for setting battery charging current. The charging 21 | current can be set using steps from 0 to 13. These steps 22 | correspond to 200mA to 2800mA, with a granularity of 200mA/step. 23 | -------------------------------------------------------------------------------- /2019q1/README.md: -------------------------------------------------------------------------------- 1 | First quarter of 2019 2 | ===================== 3 | 4 | This is the directory for status reports for the first quarter of 2019. 5 | 6 | -------------------------------------------------------------------------------- /2019q1/bcm58712.md: -------------------------------------------------------------------------------- 1 | ## Broadcom ARM64 SoC support ## 2 | 3 | Contact: Michal Stanek, 4 | Contact: Marcin Wojtas, 5 | 6 | The Semihalf team continued working on FreeBSD support for the 7 | [Broadcom BCM5871X SoC series](https://www.broadcom.com/products/embedded-and-networking-processors/communications/bcm58712/) 8 | 9 | BCM5871X are quad-core 64-bit ARMv8 Cortex-A57 communication 10 | processors targeted for networking applications such as 10G routers, 11 | gateways, control plane processing and NAS. 12 | 13 | * Completed since the last update: 14 | * iProc PCIe root complex (internal and external buses) 15 | * OTP (One Time Programmable memory) driver 16 | 17 | * In progress: 18 | * BNXT Ethernet support 19 | * Crypto engine acceleration for IPsec offloading. 20 | 21 | * Todo: 22 | * Upstreaming of work. This work is expected to be submitted/merged 23 | to HEAD in the second half of 2019. 24 | 25 | Sponsor: Juniper Networks, Inc 26 | 27 | -------------------------------------------------------------------------------- /2019q1/fuse.md: -------------------------------------------------------------------------------- 1 | ## FUSE ## 2 | 3 | Contact: Alan Somers, 4 | 5 | FUSE (File system in USErspace) allows a userspace program to 6 | implement a file system. It is widely used to support out-of-tree file 7 | systems like NTFS, as well as for exotic pseudo file systems like 8 | sshfs. FreeBSD's fuse driver was added as a GSoC project in 2012. 9 | Since that time, it has been largely neglected. The FUSE software is 10 | [buggy](https://bugs.freebsd.org/bugzilla/buglist.cgi?bug_status=__open__&known_name=fusefs&list_id=289348&query_based_on=fusefs&query_format=advanced&short_desc=%5Bfusefs%5D%20sysutils%2Ffusefs-&short_desc_type=anywordssubstr) 11 | and out-of-date. Our implementation is about 11 years behind. 12 | 13 | The FreeBSD Foundation has agreed to fund a project to improve the state of the 14 | FreeBSD FUSE driver. So far I've written a test suite for the fusefs(5) 15 | module, fixed 1 previously reported bug, discovered and fixed 6 new bugs, fixed 16 | all of fusefs's Coverity CIDs, made some minor performance enhancements and 17 | done some general cleanup. During the next quarter I plan to continue fixing 18 | bugs, and I'll also raise the driver's API level as high as I can before the 19 | quarter runs out. We're currently at 7.8; the highest defined level is 7.28. 20 | 21 | Sponsor: The FreeBSD Foundation 22 | -------------------------------------------------------------------------------- /2019q1/gnome.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD GNOME status report ## 2 | 3 | Contact: Koop Mast, 4 | Contact: Eric Turgeon, 5 | 6 | Link: [GNOME FreeBSD](https://freebsd.org/gnome/) 7 | Link: [GNOME development Repo](https://github.com/freebsd/freebsd-ports-gnome) 8 | 9 | Ports activity in this quarter were: 10 | 11 | * The x11-toolkits/gtk30 port updated to 3.24.5 and later to 3.24.7. 12 | * The www/webkit2-gtk3 port was updated to 2.24.0. 13 | * And the old insecure webkit-gtk2 and webkit-gtk3 where finally removed. 14 | 15 | Work in progress, the branches are available in the GNOME development 16 | repo, see the link above. 17 | 18 | * Eric Turgeon is working on MATE 1.22 in the `mate-1.22` branch. 19 | And is almost complete. 20 | * Charlie Li (IRC: vishwin) is working on a long overdue update of 21 | the cinnamon desktop. This update is almost complete. The only 22 | real blocker is that the screensaver can't be unlocked after it 23 | activates. The work is in the `cinnamon` branch. 24 | 25 | * Koop Mast works on GNOME 3.32. The desktop is usable apart from 26 | gdm which is currently non-functional. Due to lack of free time 27 | the work is going slowly. This work is available in the `gnome-3.32` 28 | branch. 29 | 30 | People who are willing to contribute can find us on #freebsd-gnome 31 | on freenode. 32 | -------------------------------------------------------------------------------- /2019q1/kde.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD KDE status report ## 2 | 3 | Contact: Adriaan de Groot, 4 | Contact: Tobias C. Berner, 5 | 6 | Link: [KDE FreeBSD](https://freebsd.kde.org/) 7 | 8 | The two biggest accomplishements this quarter were: 9 | * Qt4 and all its consumers have been removed from the ports tree. 10 | * www/qt5-webengine has been updated from the ancient 5.9.4 to 5.12.x by kai@ 11 | 12 | Further we have kept the KDE Frameworks, Plasma and Applications 13 | ports up to date with upstreams releases, which thanks to upstreams' 14 | FreeBSD-CI uses less and less patches. 15 | 16 | All the kde@ maintained ports (including cmake) have been kept up 17 | to date with their releases. 18 | 19 | The plans for the next quarter are in no particular order 20 | * Cleanup PyQt ports and pyqt.mk 21 | * Improve qt.mk components 22 | * Update sddm to 0.18.x 23 | * Implement user management functionality in system settings (write 24 | non-logind backend) 25 | 26 | People who are willing to contribute can find us on #kde-freebsd 27 | on freenode, and the kde@FreeBSD.org mailing list. Further we accept 28 | pull-requests and contributions on github.com/freebsd/freebsd-ports-kde. 29 | -------------------------------------------------------------------------------- /2019q1/pkgbase.md: -------------------------------------------------------------------------------- 1 | ## CFT - Package Base ## 2 | 3 | Contact: Kris Moore, 4 | 5 | Link: [Package Base CFT - FAQ](https://trueos.github.io/pkgbase-docs/) 6 | 7 | The TrueOS project has been working on a Package Base implementation, 8 | and is pleased to issue its first 9 | [CFT to the FreeBSD community](https://lists.freebsd.org/pipermail/freebsd-pkgbase/2019-April/000396.html). 10 | 11 | The TrueOS packaging work has been in development for close to 6 12 | months, and differs from the original FreeBSD package base effort, 13 | in that it is an "out of tree" implementation. It allows any version 14 | of FreeBSD to be packaged, and only requires a 15 | [patch to poudriere](https://github.com/freebsd/poudriere/pull/664), as well 16 | as some minor ports enhancements, the first which is 17 | [currently in review](https://reviews.freebsd.org/D20055). For more information 18 | on the current status, please refer to the FAQ page. 19 | 20 | Additionally there will be a 21 | [working-group at BSDCan 2019](https://wiki.freebsd.org/DevSummit/201905/PackageBase), and 22 | we encourage porters to attend and join the discussion. 23 | 24 | Sponsor: iXsystems Inc 25 | -------------------------------------------------------------------------------- /2019q1/re.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Release Engineering Team ## 2 | 3 | Contact: FreeBSD Release Engineering Team, 4 | 5 | Link: [FreeBSD 11.3-RELEASE schedule](https://www.freebsd.org/releases/11.3R/schedule.html) 6 | Link: [FreeBSD development snapshots](https://download.freebsd.org/ftp/snapshots/ISO-IMAGES/) 7 | 8 | The FreeBSD Release Engineering Team is responsible for setting and 9 | publishing release schedules for official project releases of 10 | FreeBSD, announcing code freezes and maintaining the respective 11 | branches, among other things. 12 | 13 | During the first quarter of 2019, the FreeBSD Release Engineering team 14 | published the initial schedule for the upcoming the 11.3-RELEASE. 15 | 16 | FreeBSD 11.3-RELEASE will be the fourth release from the *stable/11* 17 | branch, building on the stability and reliability of 11.2-RELEASE. 18 | FreeBSD 11.3-RELEASE is currently targed for release in early July, 2019. 19 | 20 | Additionally throughout the quarter, several development snapshots builds 21 | were released for the *head*, *stable/12*, and *stable/11* branches. 22 | 23 | Much of this work was sponsored by the FreeBSD Foundation. 24 | -------------------------------------------------------------------------------- /2019q1/riscv.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD/RISC-V Update ## 2 | 3 | Contact: Ruslan Bukin, 4 | Contact: Mitchell Horne, 5 | Contact: Mark Johnston, 6 | 7 | Work has continued on RISC-V port in the past quarter. 8 | 9 | Support for transparent superpage promotion was added to the RISC-V 10 | port, meaning that applications will now automatically use large 11 | page mappings when possible. Per-CPU pmap activation tracking was 12 | added, reducing the overhead of various pmap operations. This 13 | noticeably improves the responsiveness of FreeBSD when running in 14 | a multi-CPU virtual machine. 15 | 16 | A RISC-V implementation of minidumps was completed. Support for 17 | debugging RISC-V kernel dumps will land in devel/gdb after the 18 | next GDB release. 19 | 20 | It is now possible to compile the in-tree LLVM's RISC-V target by 21 | setting WITH_LLVM_TARGET_RISCV=YES in /etc/src.conf. The use of 22 | LLVM to compile the RISC-V port is currently experimental and 23 | further investigation is ongoing. 24 | 25 | Work is ongoing to bring up FreeBSD on SiFive's HiFive Unleashed 26 | development board now that one has been obtained by a FreeBSD 27 | developer. We also expect to work on support for a new version 28 | of the SBI specification. 29 | 30 | Sponsor: The FreeBSD Foundation, DARPA, AFRL 31 | -------------------------------------------------------------------------------- /2019q1/sysctlview.md: -------------------------------------------------------------------------------- 1 | ## sysctlview 1.0 ## 2 | 3 | Contact: Alfonso Sabato Siciliano, 4 | 5 | Link: [gitlab.com/alfix/sysctlview](https://www.gitlab.com/alfix/sysctlview) 6 | Port: [deskutils/sysctlview](https://www.freshports.org/deskutils/sysctlview/) 7 | 8 | The FreeBSD's kernel maintains a _Management Information Base_ where 9 | the _objects_ are properties to tuning the system using the 10 | _sysctl()_ syscall and the _/sbin/sysctl_ utility. The **sysctlview** 11 | utility is a "graphical sysctl MIB explorer", it depends on *gtkmm* 12 | (to build a GUI) and *sysctlmibinfo* (to retrieve the info from the 13 | kernel). 14 | 15 | The version 1.0 provides two "TreeView": 16 | 17 | - "Main" to show 'name', 'description', 'type', 'format' and 'value' 18 | - "Flags" to show 'name' and a column for each 'flag' defined in *sys/sysctl.h* 19 | 20 | The rows are "clickable" to display others info (e.g., 'label'). 21 | Currently _sysctlview_ can show _numeric_ and _string_ values, the 22 | support for some _opaque_ value will be added in the future. 23 | -------------------------------------------------------------------------------- /2019q1/wikimacmini.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Wiki Apple Intel Mac mini update ## 2 | 3 | Contact: Trevor Roydhouse, 4 | 5 | Link: [FreeBSD Wiki](https://wiki.freebsd.org/IntelMacMini) 6 | 7 | The FreeBSD Wiki page for the Apple Intel Mac minis has been 8 | comprehensively updated over the last quarter to drag it from 2009 9 | into 2019. 10 | 11 | There are now detailed instructions for installing FreeBSD as the 12 | only operating system on models from 2007 through 2014 and itemised 13 | model specific information detailing FreeBSD support. 14 | 15 | If anyone is interested, help is needed to provide more specific 16 | information for the macmini 1,1 and 6,1 through 8,1 models and to 17 | test patches for the asmc(4) driver for temperature sensor feedback 18 | and for setting fan speed. If you would like to help and have access 19 | to these Mac minis, please contact me. 20 | 21 | Future tasks: 22 | 23 | * Create and test more patches for asmc(4) to cover all Intel Mac minis 24 | * Provide more information for 2006, 2012, 2014 and 2018 Mac minis 25 | * Instructions for dual boot (macOS/FreeBSD) installations 26 | 27 | -------------------------------------------------------------------------------- /2019q2/README.md: -------------------------------------------------------------------------------- 1 | Second quarter of 2019 2 | ====================== 3 | 4 | This is the directory for status reports for the second quarter of 2019. 5 | 6 | -------------------------------------------------------------------------------- /2019q2/bcm58712.md: -------------------------------------------------------------------------------- 1 | ## Broadcom ARM64 SoC support ## 2 | 3 | Contact: Michal Stanek, 4 | Contact: Kornel Duleba, 5 | Contact: Marcin Wojtas, 6 | 7 | The Semihalf team continued working on FreeBSD support for the 8 | [Broadcom BCM5871X SoC series](https://www.broadcom.com/products/embedded-and-networking-processors/communications/bcm58712/) 9 | 10 | BCM5871X are quad-core 64-bit ARMv8 Cortex-A57 communication 11 | processors targeted for networking applications such as 10G routers, 12 | gateways, control plane processing and NAS. 13 | 14 | Completed since the last update: 15 | * iProc PCIe root complex (internal and external buses): fixes and improvements, 16 | including adding a BCM58712 quirk to GICv2m driver 17 | * BNXT Ethernet support: sys/dev/bnxt.c driver has been extended to support 18 | the BCM58700 variant, and the iflib was made to work without IO cache coherency 19 | 20 | In progress: 21 | * Crypto engine acceleration for IPsec offloading. 22 | 23 | Todo: 24 | * Upstreaming of work. This work is expected to be submitted/merged 25 | to HEAD in the second half of 2019. 26 | 27 | Sponsor: Juniper Networks, Inc 28 | 29 | -------------------------------------------------------------------------------- /2019q2/kernel-zlib.md: -------------------------------------------------------------------------------- 1 | ## Kernel ZLIB Update ## 2 | 3 | Contact: Yoshihiro Ota, 4 | 5 | Link: [Review D19706](https://reviews.freebsd.org/D19706) 6 | 7 | Kernel zlib upgrade is in progress. 8 | 9 | Xin (delphij@) and I have been working closely for zlib upgrade. 10 | We relocated contrib/zlib to sys/contrib/zlib in order for kernel 11 | code to access zlib in the tree. We also deleted dead code that 12 | depended on zlib and inflate - inflate is a fork of unzip to 13 | uncompress gzip files. We also renamed crc.h to avoid conflicts 14 | with zlib/crc.h. 15 | 16 | Next goal is to compile both old zlib and new zlib into the kernel 17 | allowing to switch each zlib user independently. 18 | -------------------------------------------------------------------------------- /2019q2/libvdsk_qcow2.md: -------------------------------------------------------------------------------- 1 | ## libvdsk - QCOW2 implementation ## 2 | 3 | Contact: Sergiu Weisz, 4 | Contact: Marcel Molenaar, 5 | Contact: Marcelo Araujo, 6 | Contact: Mihai Carabas, 7 | 8 | Link: [Github - libvdsk repo](https://github.com/xcllnt/libvdsk) 9 | 10 | Add support for using QCOW in bhyve using the libvdsk library. Libvdsk was used 11 | to substitute the regular disk operations from bhyve with a call to libvdsk 12 | which will in turn call the disk-specific handler for the operation. 13 | 14 | To use this feature one has to install the libvdsk-enabled bhyve version along 15 | with libvdsk from the libvdsk repo linked above. 16 | 17 | New features added: 18 | 19 | * Extend libvdsk to make it easier to implement new formats 20 | * Improve read/write performance and stability 21 | * Add support for Copy-On-Write 22 | 23 | Future tasks: 24 | 25 | * Integrate libvdsk in bhyve 26 | 27 | Sponsor: Matthew Grooms 28 | -------------------------------------------------------------------------------- /2019q2/linuxulator.md: -------------------------------------------------------------------------------- 1 | ## Linux compatibility layer update ## 2 | 3 | Contact: Edward Tomasz Napierala, 4 | 5 | The project aims to improve the Linux compatibility layer, to make 6 | it more compatible with recent Linux releases, and also to lower 7 | the bar for potential developers who want to start contributing to it. 8 | 9 | The initial effort focused on tooling, to make it easier to debug 10 | problems and to prevent future regressions. The first part involved 11 | making it possible to use Linux strace(1) utility and providing it 12 | as `linux-c7-strace` package. The reason is that while FreeBSD 13 | `truss(1)` and `ktrace(1)` can trace Linux binaries, they cannot 14 | decode Linux-specific flags and structures. 15 | 16 | The second part involved providing Linux Test Project binaries as 17 | `linux-ltp` package. There is ongoing work to hook it up to the 18 | FreeBSD CI infrastructure (http://ci.FreeBSD.org). 19 | 20 | There was also a number of improvements and fixes to bugs discovered 21 | in the process. One of them (not yet committed) fixes binaries 22 | linked against newer version of libc, effectively unbreaking binaries 23 | from recent Ubuntu releases. 24 | 25 | Sponsor: FreeBSD Foundation 26 | -------------------------------------------------------------------------------- /2019q2/ls1046.md: -------------------------------------------------------------------------------- 1 | ## NXP ARM64 SoC support ## 2 | 3 | Contact: Marcin Wojtas, 4 | Contact: Artur Rojek, 5 | 6 | The Semihalf team initiated working on FreeBSD support for the 7 | [NXP LS1046A SoC](https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/qoriq-layerscape-arm-processors/qoriq-layerscape-1046a-and-1026a-multicore-communications-processors:LS1046A) 8 | 9 | LS1046A are quad-core 64-bit ARMv8 Cortex-A72 processors with 10 | integrated packet processing acceleration and high speed peripherals 11 | including 10 Gb Ethernet, PCIe 3.0, SATA 3.0 and USB 3.0 for a wide 12 | range of networking, storage, security and industrial applications. 13 | 14 | Already completed: 15 | * Platform base support (ramp-up multi-user SMP operation with UART) 16 | * SATA 3.0 17 | 18 | In progress: 19 | * USB3.0 20 | * SD/MMC 21 | * I2C 22 | 23 | Todo: 24 | * Ethernet support 25 | * GPIO 26 | * QSPI 27 | * Upstreaming of developed features. This work is expected to 28 | be submitted/merged to HEAD in the Q4 of 2019. 29 | 30 | Sponsor: Alstom Group 31 | 32 | -------------------------------------------------------------------------------- /2019q2/nsysctl.md: -------------------------------------------------------------------------------- 1 | ## nsysctl 1.0 ## 2 | 3 | Contact: Alfonso Sabato Siciliano, 4 | 5 | Link: [gitlab.com/alfix/nsysctl](https://gitlab.com/alfix/nsysctl) 6 | Link: [sysutils/nsysctl port](https://www.freshports.org/sysutils/nsysctl/) 7 | Link: [Tutorial](https://alfix.gitlab.io/bsd/2019/02/19/nsysctl-tutorial.html) 8 | 9 | The `nsysctl` utility is a `/sbin/sysctl` clone, to get or set the kernel 10 | state, supporting `libxo` and extra options. 11 | 12 | ``` 13 | nsysctl [--libxo=opts [-r tagname]] [-DdFGgIilmNpqTt[V|v[h[b|o|x]]]Wy] 14 | [-e sep] [-B ] [-f filename] name[=value[,value]] ... 15 | nsysctl [--libxo=opts [-r tagname]] [-DdFGgIlmNpqTt[V|v[h[b|o|x]]]Wy] 16 | [-e sep] [-B ] -A|a|X 17 | ``` 18 | 19 | You could use `nsysctl` to explore the sysctl MIB showing the value and the 20 | info of an object. The output is explicitly indicated by the options and is 21 | printed via `libxo` in human and machine readable formats, moreover some value 22 | is parsed to display it in a structured mode (e.g., `vm.phys_free`). 23 | The support for `efi_map_header` was added but it is untested, someone could 24 | help by trying it via `machdep.efi_map`. 25 | 26 | Please refer to the tutorial for a more thorough description. 27 | -------------------------------------------------------------------------------- /2019q2/sdio-wifi.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD SDIO and Broadcom FullMAC WiFi Support ## 2 | 3 | Contact: Bjoern Zeeb, 4 | 5 | Link: [FreeBSD Wiki SDIO page](https://wiki.freebsd.org/SDIO) 6 | 7 | SDIO is an interface designed as an extension to SD Cards 8 | to allow attachments of various other peripherals, e.g., 9 | WiFi or Bluetooth. 10 | 11 | Work has been ongoing by Ilya Bakulin on the MMCCAM stack 12 | to provide the infrastructure to be able to have SD cards 13 | and SDIO devices attached side-by-side facilitating 14 | FreeBSD's CAM framework. 15 | Based on this excellent work over the last years, 16 | SDIO support was finished earlier this year and committed 17 | to FreeBSD HEAD with the intention to merge to 12 at a 18 | later time. 19 | 20 | Facilitating the newly available SDIO bus, work started to 21 | port Broadcom's FullMAC WiFi driver. This work is still 22 | in progress and expected to complete later this year. 23 | With this WiFi support for the Raspberry Pi and other 24 | embedded boards will become available. 25 | Likewise drivers for other SDIO devices can be developed 26 | now. 27 | 28 | Sponsor: The FreeBSD Foundation 29 | -------------------------------------------------------------------------------- /2019q3/README.md: -------------------------------------------------------------------------------- 1 | Third quarter of 2019 2 | ===================== 3 | 4 | This is the directory for status reports for the third quarter of 2019. 5 | 6 | -------------------------------------------------------------------------------- /2019q3/bcm58712.md: -------------------------------------------------------------------------------- 1 | ## Broadcom ARM64 SoC support ## 2 | 3 | Contact: Michal Stanek 4 | Contact: Kornel Duleba 5 | Contact: Marcin Wojtas 6 | 7 | The Semihalf team continued working on FreeBSD support for the 8 | [Broadcom BCM5871X SoC series](https://www.broadcom.com/products/embedded-and-networking-processors/communications/bcm58712/) 9 | 10 | BCM5871X are quad-core 64-bit ARMv8 Cortex-A57 communication 11 | processors targeted for networking applications such as 10G routers, 12 | gateways, control plane processing and NAS. 13 | 14 | Completed since the last update: 15 | * iProc PCIe root complex (internal and external buses): fixes and improvements, 16 | * Crypto engine acceleration for IPsec offloading. 17 | 18 | Todo: 19 | * Upstreaming of work. This work is expected to be submitted/merged 20 | to HEAD in the Q4 of 2019. 21 | 22 | Sponsor: Juniper Networks, Inc 23 | 24 | -------------------------------------------------------------------------------- /2019q3/core.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Core Team ## 2 | 3 | Contact: FreeBSD Core Team 4 | 5 | The FreeBSD Core Team is the governing body of FreeBSD. 6 | 7 | - Core has provisionally accepted the BSD+patent license for use in some cases. 8 | The Core Team must approve the import of new BSD+Patent licensed components or 9 | the change of license of existing components to the BSD+Patent License. 10 | 11 | https://opensource.org/licenses/BSDplusPatent 12 | 13 | - Kernel Pseudo Random Number Generator (PRNG) maintainership was updated to 14 | reduce the contribution barrier for committers who have demonstrated 15 | competence in this part of the tree. 16 | 17 | - Core approved a source commit bit for Paweł Biernacki. Konstantin Belousov 18 | will mentor Paweł and Mateusz Guzik will be co-mentor. 19 | 20 | - The Core-initiated Git Transition Working Group met over the last quarter, 21 | however a report is still forthcoming. Discussions will continue in the 22 | fourth quarter of 2019. There are many issues to resolve including how to 23 | deal with contrib/, whether to re-generate hashes in the current Git 24 | repository, and how to best implement commit testing. 25 | -------------------------------------------------------------------------------- /2019q3/ena.md: -------------------------------------------------------------------------------- 1 | ## ENA FreeBSD Driver Update ## 2 | 3 | Link: [ENA README](https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README) 4 | 5 | Contact: Michal Krawczyk 6 | Contact: Maciej Bielski 7 | Contact: Marcin Wojtas 8 | 9 | ENA (Elastic Network Adapter) is the smart NIC available in the 10 | virtualized environment of Amazon Web Services (AWS). The ENA 11 | driver supports multiple transmit and receive queues and can handle 12 | up to 100 Gb/s of network traffic, depending on the instance type 13 | on which it is used. 14 | 15 | ENAv2 has been under development for FreeBSD, similar to Linux 16 | and DPDK. Since the last update internal review and improvements 17 | of the patches were done, followed by validation on various AWS 18 | instances. 19 | 20 | Completed since the last update: 21 | * Verification and review of the NETMAP support 22 | * Mapping of the memory as WC on A1 instances in order to enable LLQ mode 23 | 24 | Todo: 25 | * Upstream of NETMAP support 26 | * Upstream of the fix for LLQ mode on A1 instances 27 | 28 | Sponsor: Amazon.com Inc 29 | -------------------------------------------------------------------------------- /2019q3/fuse.md: -------------------------------------------------------------------------------- 1 | ## FUSE ## 2 | 3 | Contact: Alan Somers 4 | 5 | FUSE (File system in USErspace) allows a userspace program to 6 | implement a file system. It is widely used to support out-of-tree file 7 | systems like NTFS, as well as for exotic pseudo file systems like 8 | sshfs. FreeBSD's fuse driver was added as a GSoC project in 2012. 9 | Since that time, it has been largely neglected. The FUSE software is 10 | [buggy](https://bugs.freebsd.org/bugzilla/buglist.cgi?bug_status=__open__&known_name=fusefs&list_id=289348&query_based_on=fusefs&query_format=advanced&short_desc=%5Bfusefs%5D%20sysutils%2Ffusefs-&short_desc_type=anywordssubstr) 11 | and out-of-date. Our implementation is about 11 years behind. 12 | 13 | I completed this work during Q3. I fixed a few newly-introduced bugs, fixed a 14 | long-standing sendfile bug that affects FUSE 15 | ([236466](https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=236466)) and merged 16 | everything to head and stable/12. Then I fixed the resulting Coverity CIDs. 17 | There have been no new FUSE-related bug reports, so I can only assume that 18 | everything is working great. Report any problems to asomers@FreeBSD.org. 19 | 20 | Sponsor: The FreeBSD Foundation 21 | -------------------------------------------------------------------------------- /2019q3/gets.md: -------------------------------------------------------------------------------- 1 | ## gets(3) retirement ## 2 | 3 | Contact: Ed Maste 4 | 5 | gets is an obsolete C library routine for reading a string from standard 6 | input. It was removed from the C standard as of C11 because there was no 7 | way to use it safely. Prompted by a comment during Paul Vixie's talk at 8 | vBSDCon 2017 I started investigating what it would take to remove gets 9 | from libc. 10 | 11 | [The patch](https://reviews.freebsd.org/D12298) was posted to Phabricator 12 | and refined several times, and the portmgr team performed several 13 | [exp-runs](https://bugs.freebsd.org/222796) to identify ports broken by 14 | the removal. Symbol versioning is used to preserve binary compatibility 15 | for existing software that uses gets. 16 | 17 | The change was [committed](https://reviews.freebsd.org/rS351659) in 18 | September, and will be in FreeBSD 13.0. 19 | 20 | Sponsor: The FreeBSD Foundation 21 | -------------------------------------------------------------------------------- /2019q3/gsoc.md: -------------------------------------------------------------------------------- 1 | ## Google Summer of Code 2019 ## 2 | 3 | Link: [2019 Summer of Code Project Wikis](https://wiki.freebsd.org/SummerOfCode2019Projects) 4 | Link: [2019 Summer of Code Projects](https://summerofcode.withgoogle.com/archive/2019/organizations/6504969929228288/) 5 | 6 | Contact: Summer of Code Admins 7 | 8 | The FreeBSD Project is pleased to have participated in 9 | Google Summer of Code 2019 marking our 14th year of participation. 10 | This year we had six successful projects: 11 | 12 | * *Dual-stack ping command* by Ján Sučan 13 | * *Firewall test suite* by Ahsan Barkati 14 | * *Kernel sanitizers* by Costin Carabaș 15 | * *MAC policy on IP addresses for FreeBSD Jail* by Shivank Garg 16 | * *Separation of ports build process from local installation* by Theron Tarigo 17 | * *Virtual memory compression* by Paavo-Einari Kaipila 18 | 19 | We thank Google for the opportunity to work with these students and hope 20 | they continue to work with FreeBSD in the future. 21 | 22 | Sponsor: Google Summer of Code 23 | -------------------------------------------------------------------------------- /2019q3/laptop-support.md: -------------------------------------------------------------------------------- 1 | ## Improving laptop support ## 2 | 3 | Contact: Ed Maste 4 | 5 | The FreeBSD Foundation would like to ensure that running FreeBSD on 6 | contemporary hardware, including laptops, remains viable. To that end 7 | we plan to purchase the latest generation of one or more of a family 8 | of laptops preferred by members of the FreeBSD community, evaluate the 9 | existing state of hardware support, and implement missing hardware 10 | support where possible. 11 | 12 | As the first laptop for this project we have selected a 7th Generation 13 | Lenovo X1 Carbon. 14 | 15 | Sponsor: The FreeBSD Foundation 16 | -------------------------------------------------------------------------------- /2019q3/ls1046.md: -------------------------------------------------------------------------------- 1 | ## NXP ARM64 SoC support ## 2 | 3 | Contact: Marcin Wojtas 4 | Contact: Artur Rojek 5 | 6 | The Semihalf team initiated working on FreeBSD support for the 7 | [NXP LS1046A SoC](https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/qoriq-layerscape-arm-processors/qoriq-layerscape-1046a-and-1026a-multicore-communications-processors:LS1046A) 8 | 9 | LS1046A are quad-core 64-bit ARMv8 Cortex-A72 processors with 10 | integrated packet processing acceleration and high speed peripherals 11 | including 10 Gb Ethernet, PCIe 3.0, SATA 3.0 and USB 3.0 for a wide 12 | range of networking, storage, security and industrial applications. 13 | 14 | Completed since the last update: 15 | * DPAA Network interface support 16 | * SD/MMC 17 | * USB3.0 18 | * I2C 19 | * GPIO 20 | 21 | In progress: 22 | * QSPI 23 | * Network performance improvements 24 | 25 | Todo: 26 | * Upstreaming of developed features. This work is expected to 27 | be submitted/merged to HEAD in the Q4 of 2019. 28 | 29 | Sponsor: Alstom Group 30 | 31 | -------------------------------------------------------------------------------- /2019q3/makefs-msdos.md: -------------------------------------------------------------------------------- 1 | ## FAT / msdosfs support for makefs(8) ## 2 | 3 | Contact: Ed Maste 4 | 5 | In order to streamline the process of creating install or virtual 6 | machine system images we needed FAT filesystem support in makefs(8). 7 | Makefs was originally developed in NetBSD, and FAT support was added 8 | there not much later, but after the tool was ported to FreeBSD. 9 | 10 | Siva Mahadevan, one of the FreeBSD Foundation's interns from the 11 | University of Waterloo, worked on porting FAT support from NetBSD. 12 | I [rebased and updated](https://reviews.freebsd.org/D16438) Siva's 13 | work, and [committed](https://reviews.freebsd.org/rS351273) it during 14 | this quarter. After a few follow-up fixes we are able to build FAT 15 | filesystem images without using md(4) and without requiring root. 16 | 17 | Sponsor: The FreeBSD Foundation 18 | -------------------------------------------------------------------------------- /2019q3/nfs42.md: -------------------------------------------------------------------------------- 1 | ## NFS Version 4.2 implementation ## 2 | 3 | Contact: Rick Macklem 4 | 5 | RFC-7862 describes a new minor revision to the NFS Version 4 protocol. 6 | This project implements this new minor revision. 7 | 8 | The NFS Version 4 Minor Version 2 protocol adds several optional 9 | features to NFS, such as support for SEEK_DATA/SEEK_HOLE, file 10 | copying done on the server that avoids data transfer over the wire 11 | and support for posix_fallocate(), posix_fadvise(). 12 | Hopefully these features can improve performance for certain applications. 13 | 14 | The implementation is now nearing completion and recent work has been 15 | mostly testing. A cycle of interoperability testing with Linux has 16 | just been completed. The main area that still needs testing is use 17 | of the pNFS server with NFSv4.2 and that should start soon. 18 | Once testing of pNFS is completed, I believe the code is ready to 19 | be incorporated into FreeBSD head/current. 20 | 21 | Testing by others would be appreciated. The modified kernel can be 22 | found at https://svn.freebsd.org/base/projects/nfsv42/sys and should 23 | run with a recent FreeBSD head/current system. Client mounts need the 24 | "minorversion=2" mount option to enable this protocol. 25 | -------------------------------------------------------------------------------- /2019q3/nomad-pot-driver.md: -------------------------------------------------------------------------------- 1 | ## Nomad pot driver - Orchestrating jails via nomad ## 2 | 3 | Link: [Nomad pot driver](https://github.com/trivago/nomad-pot-driver) 4 | Link: [Pot project](https://github.com/pizzamig/pot) 5 | 6 | Contact: Luca Pizzamiglio 7 | Contact: Esteban Barrios 8 | 9 | An experimental project has started to provide jail orchestration 10 | based on `nomad` and the jail framework `pot`, similarly to how 11 | orchestration works with docker. 12 | 13 | This model allows us to split the jail creation and the jail deployment. 14 | Jail images can be created and exported using the `pot` framework. 15 | The images can be deployed and orchestrated using `nomad`. 16 | A driver has been developed to allow `nomad` to interact with `pot`. 17 | 18 | One of the goals of this project is to use non-persistent jails as 19 | containers, allowing us to: 20 | * define containers similar to Docker (but not identical, because 21 | the underlaying OS is different) 22 | * identify potential missing features in FreeBSD to support 23 | such a computational model 24 | 25 | In the next quarter, we will launch the first service based on this 26 | project. 27 | 28 | Next steps are: 29 | * provide more guides and howtos 30 | * improve stability, extending the tests suite 31 | * improving tooling to create/manage images 32 | 33 | Sponsor: trivago N.V. 34 | -------------------------------------------------------------------------------- /2019q3/rk3399.md: -------------------------------------------------------------------------------- 1 | ## Rockchip RK3399 SoC's eMMC support ## 2 | 3 | Contact: Ganbold Tsagaankhuu 4 | 5 | The followings features have been added to support RK3399 SoC eMMC on FreeBSD: 6 | 7 | * Extended simple_mfd driver to expose a syscon interface if 8 | that node is also compatible with syscon. For instance, 9 | Rockchip RK3399's GRF (General Register Files) is compatible 10 | with simple-mfd as well as syscon and has devices like 11 | usb2-phy, emmc-phy and pcie-phy etc. under it. 12 | * Made Rockchip's General Register Files driver the subclass of Simple MFD driver 13 | * Added driver for Rockchip RK3399 eMMC PHY. 14 | * Added eMMC support codes for Rockchip RK3399 SoC. 15 | * All above was tested on NanoPC-T4 board. 16 | -------------------------------------------------------------------------------- /2019q3/secteam.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Security Team ## 2 | 3 | Link: [FreeBSD security information](https://www.freebsd.org/security/) 4 | 5 | Contact: Security Team 6 | 7 | Several members of the security team met at the Vendor Summit in October to 8 | formalize team structure dedicated for architecture and crypto engineering in 9 | addition to the existing product security incident response function. 10 | 11 | Since June we have started having fortnightly conference calls to discuss 12 | important issues and to collaborate closely on advisories and errata notices in 13 | the pipeline. 14 | 15 | * Security advisories sent out in 2019-Q3: 7 16 | * Errata Notices sent out in 2019-Q3: 5 17 | -------------------------------------------------------------------------------- /2019q3/tss2.md: -------------------------------------------------------------------------------- 1 | ## TPM2 Software Stack (TSS2) ## 2 | 3 | Link: [tpm2-tss Documentation](https://tpm2-tss.readthedocs.io/en/latest/index.html) 4 | Link: [tpm2 Source Repository](https://github.com/tpm2-software/) 5 | Link: [tpm2 mailing list](https://lists.01.org/postorius/lists/tpm2.lists.01.org/) 6 | Link: [tpm2 irc channel](ircs://chat.freenode.net:6697/tpm2.0-tss) 7 | 8 | Contact: D Scott Phillips 9 | 10 | Intel has contributed ports of the TPM2 Software Stack to the ports tree, with 11 | the new ports securtity/tpm2-tss, security/tpm2-tools, security/tpm2-abrmd. 12 | `tpm2-tss` contains a set of libraries which expose various TPM2 APIs for using 13 | a TPM conforming to the TCG TPM 2.0 specification. `tpm2-tools` provides a set 14 | of command line tools which use the `tpm2-tss` libraries to perform tpm 15 | operations. Finally, `tpm2-abrmd` is a userspace daemon which acts as a TPM 16 | Access Broker and Resource Manager, multiplexing many TPM users onto a single 17 | TPM device. 18 | 19 | Sponsored by: Intel Corporation 20 | -------------------------------------------------------------------------------- /2019q4/7-days-challenge.md: -------------------------------------------------------------------------------- 1 | ## 7 Days Challenge ## 2 | 3 | Link: [7 Days Challenge](https://wiki.freebsd.org/MichaelCrilly/7dayschallenge) 4 | 5 | Contact: Michael Crilly 6 | 7 | The 7 Days Challenge is an educational initiative to help people onboard with FreeBSD more easily. 8 | 9 | It will use a combination of tutorials, guides and how-tos to get users engaged with 10 | FreeBSD quickly, target specific end goals the user might have for FreeBSD, and more. 11 | 12 | The primary objective is to demonstrate FreeBSD's capabilities as a modern, relevant operating 13 | system in today's Cloud centric, automated business models. 14 | 15 | Sponsor: OpsFactory Pty Ltd (Australia) 16 | -------------------------------------------------------------------------------- /2019q4/README.md: -------------------------------------------------------------------------------- 1 | Fourth quarter of 2019 2 | ===================== 3 | 4 | This is the directory for status reports for the fourth quarter of 2019. 5 | 6 | -------------------------------------------------------------------------------- /2019q4/azure.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD on Microsoft HyperV and Azure 2 | 3 | Link: [FreeBSD on MicrosoftAzure wiki](https://wiki.freebsd.org/MicrosoftAzure) 4 | Link: [FreeBSD on Microsoft HyperV](https://wiki.freebsd.org/HyperV) 5 | 6 | Contact: FreeBSD Integration Services Team 7 | Contact: Wei Hu 8 | Contact: Li-Wen Hsu 9 | 10 | Wei is working on HyperV Socket support for FreeBSD. HyperV Socket provides a way for host and guest to communicate using common socket interfaces without networking support. Some features in Azure require HyperV Socket support in guest. 11 | 12 | It is planned to commit the code by the end of February. 13 | 14 | This project is sponsored by Microsoft. Details of HyperV Socket is available at https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/make-integration-service 15 | 16 | Li-Wen and Wei are working on improving FreeBSD release on Azure. During this quarter, Wei has published the [11.3-RELEASE on Azure](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/microsoftostc.freebsd-11-3?tab=Overview). Li-Wen is working on the FreeBSD release codes related to Azure for the -CURRENT and 12-STABLE branches. 17 | 18 | This project is sponsored by Microsoft and FreeBSD Foundation. 19 | -------------------------------------------------------------------------------- /2019q4/clusteradm.md: -------------------------------------------------------------------------------- 1 | ## Cluster Administration Team ## 2 | 3 | Contact: Cluster Administration Team 4 | 5 | Link: [Cluster Administration Team members](https://www.freebsd.org/administration.html#t-clusteradm) 6 | 7 | The FreeBSD Cluster Administration Team consists of the people responsible for administering the machines that the Project relies on for its distributed work and communications to be synchronised. In this quarter, the team has worked on the following: 8 | 9 | * Upgrade ref11-{amd64,i386}.freebsd.org to 11.3-STABLE r353313 10 | * Ongoing systems administration work: 11 | * Creating accounts for new committers. 12 | * Backups of critical infrastructure. 13 | * Keeping up with security updates in 3rd party software. 14 | 15 | Work in progress: 16 | 17 | * Review the service jails and service administrators operation. 18 | * South Africa Mirror (JINX) in progress. 19 | * NVME issues on PowerPC64 Power9 blocking dual socket machine from being used as pkg builder. 20 | * Drive upgrade test for pkg builders (SSDs) courtesy of the FreeBSD Foundation. 21 | * Boot issues with Aarch64 reference machines. 22 | * New NYI.net sponsored colocation space in Chicago-land area. 23 | * Setup new host for CI staging environment. 24 | * Plan how to add new semi-official pkg mirrors 25 | -------------------------------------------------------------------------------- /2019q4/dts.md: -------------------------------------------------------------------------------- 1 | ## DTS Update ## 2 | 3 | Contact: Emmanuel Vadot 4 | 5 | DTS files (Device Tree Sources) were updated to be on par with Linux 5.4 for 6 | HEAD and 5.2 for the 12-STABLE branch. 7 | The DTS for the RISC-V architecture are now imported as well. 8 | -------------------------------------------------------------------------------- /2019q4/electronjs.md: -------------------------------------------------------------------------------- 1 | ## Electron and VSCode ## 2 | 3 | Link: [Electron port](https://github.com/tagattie/FreeBSD-Electron) 4 | Link: [VSCode port](https://github.com/tagattie/FreeBSD-VSCode) 5 | 6 | Contact: Hiroki Tagato 7 | Contact: Luca Pizzamiglio 8 | 9 | Electron is a popular framework to build desktop application using JavaScript, HTML and CSS. 10 | Few months ago, electronjs has been added to the ports tree. 11 | Currently version 4.x and 6.x are supported. 12 | 13 | In the last quarter, a popular application, the powerful VSCode editor, has been added to the ports tree as well. 14 | VSCode is based on electron 6.x 15 | 16 | atom, another popular editor, is still a work in progress and it's based on electron 4.x 17 | 18 | Many thanks to Hiroki, for the hard work, and to Antoine, for support of the special poudriere configuration needed to build VSCode. 19 | -------------------------------------------------------------------------------- /2019q4/ena.md: -------------------------------------------------------------------------------- 1 | ## ENA FreeBSD Driver Update ## 2 | 3 | Link: [ENA README](https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README) 4 | 5 | Contact: Michal Krawczyk 6 | Contact: Maciej Bielski 7 | Contact: Marcin Wojtas 8 | 9 | ENA (Elastic Network Adapter) is the smart NIC available in the 10 | virtualized environment of Amazon Web Services (AWS). The ENA 11 | driver supports multiple transmit and receive queues and can handle 12 | up to 100 Gb/s of network traffic, depending on the instance type 13 | on which it is used. 14 | 15 | Completed since the last update: 16 | * Upstream of the driver v2.1.0 version, introducing: 17 | * Netmap support 18 | * Driver structure rework (split datapath code from initialization) 19 | * Fix for keep-alive timeout due to prolonged reset 20 | * Enable LLQ mode on arm64 instances by enabling memory mapped as WC 21 | 22 | Work in progress:: 23 | * ENA v2.2.0 release, introducing new bug fixes, features and other improvements 24 | 25 | Sponsor: Amazon.com Inc 26 | -------------------------------------------------------------------------------- /2019q4/intro.md: -------------------------------------------------------------------------------- 1 | Here is the last quarterly status report for 2019. As you might remember 2 | from last report, we changed our timeline: now we collect reports the last 3 | month of each quarter and we edit and publish the full document the next 4 | month. Thus, we cover here the period October 2019 - December 2019. 5 | 6 | If you thought that the FreeBSD community was less active in the 7 | Christmas' quarter you will be glad to be proven wrong: a quick glance at 8 | the summary will be sufficient to see that much work has been done in the 9 | last months. 10 | 11 | Have a nice read! 12 | 13 | \-\- Lorenzo Salvadore 14 | -------------------------------------------------------------------------------- /2019q4/java.md: -------------------------------------------------------------------------------- 1 | ## Java on FreeBSD ## 2 | 3 | Link: [OpenJDK 11 repository at FreeBSD GitHub](https://github.com/freebsd/openjdk-jdk11u) 4 | 5 | Contact: Greg Lewis 6 | 7 | During Q4 the FreeBSD java porting effort features smaller updates than 8 | those of the previous quarters. However, the following changes are worth 9 | mentioning: 10 | 11 | * Updated ports for OpenJDK 8u232, 11.0.5, and 13.0.1 12 | * Removal of the EOL'ed Java 6, 9, and 10 ports 13 | * Fixed remote debugging for Java 11+ 14 | * Fixed a problem with running external processes for Java 11+ 15 | 16 | Sponsor: FreeBSD Foundation 17 | -------------------------------------------------------------------------------- /2019q4/ls1046.md: -------------------------------------------------------------------------------- 1 | ## NXP ARM64 SoC support ## 2 | 3 | Contact: Marcin Wojtas 4 | Contact: Artur Rojek 5 | 6 | The Semihalf team initiated working on FreeBSD support for the 7 | [NXP LS1046A SoC](https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/qoriq-layerscape-arm-processors/qoriq-layerscape-1046a-and-1026a-multicore-communications-processors:LS1046A) 8 | 9 | LS1046A are quad-core 64-bit ARMv8 Cortex-A72 processors with 10 | integrated packet processing acceleration and high speed peripherals 11 | including 10 Gb Ethernet, PCIe 3.0, SATA 3.0 and USB 3.0 for a wide 12 | range of networking, storage, security and industrial applications. 13 | 14 | Completed since the last update: 15 | * QSPI 16 | * Network performance improvements 17 | 18 | Todo: 19 | * Upstreaming of developed features. This work is expected to 20 | be submitted/merged to HEAD in the Q1 of 2020. 21 | 22 | Sponsor: Alstom Group 23 | 24 | -------------------------------------------------------------------------------- /2019q4/mkova.md: -------------------------------------------------------------------------------- 1 | ## Creating virtual FreeBSD appliances from RE VMDK images ## 2 | 3 | Link: [freebsd-mkova](https://github.com/gonzoua/freebsd-mkova) 4 | 5 | Contact: Oleksandr Tymoshenko 6 | 7 | OVA is a file format for packaging and distributing virtual appliances: pre-configured virtual machine images. Virtual appliance file contains full VM information like the number of CPUs, amount of memory, list of virtual devices, it also includes disk images. Applications like VirtualBox or VMWare can import OVA files; this process can be easily automated. 8 | 9 | freebsd-mkova is a CLI tool to create OVA files using VMDK images provided by FreeBSD RE. For now, only a limited set of attributes can be specified: VM name, number of CPU, amount of memory, and disk size. The tool also does only cursory sanity checks on the VMDK file format, assuming it's a monolithic sparse file and that it has to be converted to the stream-optimized format. The script can be extended to make hardware configuration more flexible and VMDK parser more robust. 10 | -------------------------------------------------------------------------------- /2019q4/nfs42.md: -------------------------------------------------------------------------------- 1 | ## NFS Version 4.2 implementation ## 2 | 3 | Contact: Rick Macklem, 4 | 5 | RFC-7862 describes a new minor revision to the NFS Version 4 protocol. 6 | This project implements this new minor revision. 7 | 8 | The NFS Version 4 Minorversion 2 protocol adds several optional 9 | features to NFS, such as support for SEEK_DATA/SEEK_HOLE, file 10 | copying done on the server that avoids data transfer over the wire 11 | and support for posix_fallocate(), posix_fadvise(). 12 | Hopefully these features can improve performance for certain applications. 13 | 14 | This project has basically been completed. The code changes have now 15 | all been committed to head/current and should be released in FreeBSD 13. 16 | 17 | Testing by others would be appreciated. To do testing, an up to date 18 | head/current system is required. Client mounts need the 19 | "minorversion=2" mount option to enable this protocol. 20 | The NFS server will have NFSv4.2 enabled by default. 21 | -------------------------------------------------------------------------------- /2019q4/powerpc.md: -------------------------------------------------------------------------------- 1 | ## PowerPC on Clang ## 2 | 3 | Contact: Justin Hibbits 4 | Contact: Brandon Bergren 5 | Contact: Alfredo Dal'Ava Júnior 6 | 7 | Shortly before the end of the year all 3 PowerPC targets (powerpc, powerpc64, 8 | powerpcspe) switched to Clang as the base compiler. This was an effort spanning 9 | nearly the full year, with several people involved. 32-bit PowerPC platforms 10 | (powerpc, powerpcspe) still require GNU ld, but powerpc64 uses LLD as the base 11 | linker. The other two platforms will migrate as soon as LLD is ready, which 12 | should be in the next several months. 13 | 14 | With the switch to Clang and LLD, powerpc64 also switched to ELFv2, a modern ABI 15 | initially targeted for Linux powerpc64le (little endian), but the ABI itself is 16 | endian agnostic; however, ELFv2 is binary incompatible with ELFv1. FreeBSD is 17 | still big endian on all powerpc targets. 18 | -------------------------------------------------------------------------------- /2019q4/rockchip.md: -------------------------------------------------------------------------------- 1 | ## RockChip Support ## 2 | 3 | Contact: 4 | Contact: Emmanuel Vadot 5 | Contact: Michal Meloun 6 | 7 | RockChip RK3399 now has USB3 support, some configuration such as device mode 8 | are still not supported however host mode should work on any board. 9 | 10 | Support for SPI has been committed which enables ability to interact with SPI 11 | flash if present. 12 | 13 | All regulators for the RK808 PMIC (Power Management IC) have been added. 14 | 15 | All clocks are now supported which completes clock and reset implementation, 16 | previously only clocks from devices with drivers were supported. 17 | 18 | The TS-ADC (Temperature Sensor ADC) is now supported, this adds the ability 19 | to read temperature of the CPU and GPU via sysctl hw.temperature . 20 | 21 | Initial PCIe support has been committed and verified working on several 22 | different boards. 23 | Known working devices are NVMe devices and PCIe cards that doesn't utilize PCIe 24 | switching or bridge functionality. 25 | 26 | Card Detection for SDCard on RK3328 and RK3399 is now supported. There is still 27 | some problems if the board is using a GPIO for CD instead of the internal detection 28 | mechanism. 29 | -------------------------------------------------------------------------------- /2019q4/wine.md: -------------------------------------------------------------------------------- 1 | ## Wine on FreeBSD ## 2 | 3 | Link: [Wine homepage](https://www.winehq.org) 4 | 5 | Contact: Gerald Pfeifer 6 | 7 | A lot has happened since our last quarterly report. The Wine 4 8 | release series has been in our tree for nearly a year and proven 9 | rather stable. Both that port and wine-devel, which tracks 10 | bi-weekly development releases, have seen regular adjustments to 11 | infrastructure changes and small improvements, in particular also 12 | around non-default options. 13 | 14 | Now we need help! 15 | 16 | WoW64 (or Wine on Wine 64) allows running both 32-bit and 64-bit 17 | Windows applications in one installation. A volunteer has proposed 18 | 19 | * a general framework for lib32- companion libraries 20 | (https://reviews.freebsd.org/D16830) 21 | * an approach directly using our Wine ports 22 | (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=242625) 23 | 24 | to make this work and we do not have the expertise nor facilities to 25 | properly review, test, and maintain those ourselves. 26 | 27 | If you can facilitate getting (at least one of) these into the tree, 28 | please help! And if you'd like to assume co-maintainership or sole 29 | maintainership of emulators/wine*, that is an option, too. 30 | -------------------------------------------------------------------------------- /2020q1/README.md: -------------------------------------------------------------------------------- 1 | First quarter of 2020 2 | ===================== 3 | 4 | This is the directory for status reports for the first quarter of 2020. 5 | -------------------------------------------------------------------------------- /2020q1/azure.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD on Microsoft HyperV and Azure ## 2 | 3 | Link: [FreeBSD on MicrosoftAzure wiki](https://wiki.freebsd.org/MicrosoftAzure) 4 | Link: [FreeBSD on Microsoft HyperV](https://wiki.freebsd.org/HyperV) 5 | 6 | Contact: FreeBSD Integration Services Team 7 | Contact: Wei Hu 8 | Contact: Li-Wen Hsu 9 | 10 | Wei is working on HyperV Socket support for FreeBSD. HyperV Socket provides a way for the HyperV host and guest to communicate using a common socket interface without networking required. Some features in Azure require HyperV Socket support in the guest. 11 | 12 | Details of HyperV Socket is available [here](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/make-integration-service). 13 | 14 | The work-in-progress is available [here](https://reviews.freebsd.org/D24061) 15 | 16 | This project is sponsored by Microsoft. 17 | 18 | Li-Wen is working on the FreeBSD release code related to Azure for the -CURRENT and 12-STABLE branches. The release of 12.1-RELEASE on Azure is also in progress. 19 | 20 | The work-in-progress is available [here](https://reviews.freebsd.org/D23804) 21 | 22 | This project is sponsored by The FreeBSD Foundation. 23 | -------------------------------------------------------------------------------- /2020q1/bridge.md: -------------------------------------------------------------------------------- 1 | ## if\_bridge ## 2 | 3 | Contact: Kristof Provost 4 | 5 | The current implementation of if\_bridge uses a single mutex to protect its 6 | internal data structures. As a result it’s nowhere near as fast as it could be. 7 | This is relevant for users who want to run many vnet jails or virtual machines 8 | bridged together, for example. 9 | 10 | As part of this project several new tests have already been added for 11 | if\_bridge. These are generally very useful for validating any locking changes, 12 | and will also help to prevent regressions for other future changes. These 13 | tests live in /usr/tests/sys/net/if\_bridge\_test. 14 | 15 | The current work is concentrating on investigating if it's possible to leverage 16 | the ConcurrencyKit epoch code for the datapath (i.e. `bridge_input()`, 17 | `bridge_output()`, `bridge_forward()`, ...). 18 | 19 | Sponsor: The FreeBSD Foundation 20 | -------------------------------------------------------------------------------- /2020q1/elfctl.md: -------------------------------------------------------------------------------- 1 | ## elfctl utility ## 2 | 3 | Contact: Ed Maste 4 | 5 | In [r340076](https://reviews.freebsd.org/rS340076) Ed added the 6 | _NT\_FREEBSD\_FEATURE\_CTL_ ELF note, used to allow binaries to opt out of, 7 | or in to, vulnerability mitigation and other features. FreeBSD Foundation 8 | intern Bora Özarslan later added a tool to decode and modify the ELF note, 9 | but it had yet to be installed by default. 10 | 11 | In the previous quarter Ed renamed the tool to _elfctl_, and installed it 12 | in /usr/bin. Ed also committed a number of minor bug fixes, code style 13 | improvements, etc. 14 | 15 | Usage examples - list known feature flags: 16 | ``` 17 | $ elfctl -l 18 | Known features are: 19 | aslr Disable ASLR 20 | protmax Disable implicit PROT_MAX 21 | stackgap Disable stack gap 22 | wxneeded Requires W+X mappings 23 | ``` 24 | 25 | List feature tags set on a binary: 26 | ``` 27 | $ elfctl /bin/ls 28 | File '/bin/ls' features: 29 | aslr 'Disable ASLR' is unset. 30 | protmax 'Disable implicit PROT_MAX' is unset. 31 | stackgap 'Disable stack gap' is unset. 32 | wxneeded 'Requires W+X mappings' is unset. 33 | ``` 34 | 35 | Indicate that a binary requests to opt-out of address randomization: 36 | ``` 37 | $ elfctl -e +aslr binary 38 | ``` 39 | 40 | Sponsor: The FreeBSD Foundation 41 | -------------------------------------------------------------------------------- /2020q1/elftoolchain.md: -------------------------------------------------------------------------------- 1 | ## ELF Tool Chain ## 2 | 3 | Contact: Ed Maste, 4 | 5 | A number of performance and functional improvements were committed to ELF 6 | Tool Chain tools over the last quarter. 7 | 8 | FreeBSD Foundation intern Tiger Gao added DWARF Debug Information Entry 9 | (DIE) caching to addr2line which provided a substantial improvement when 10 | translating many entries (even surpassing GNU addr2line with a large list). 11 | 12 | Tiger also rebased and updated an upstream ELF Tool Chain submission to 13 | handle _DW\_AT\_ranges_ and addressed two elfcopy/objcopy bugs: setting the 14 | OS/ABI field correctly when converting a binary file to ELF, and correctly 15 | adding new sections when there is no _.shstrtab_ section. 16 | 17 | Ed committed several readelf improvements, including decoding the 18 | _PROTMAX\_DISABLE_, _STKGAP\_DISABLE_, and _WXNEEDED_ ELF feature control 19 | flags, decoding Xen and GNU Build-ID ELF notes, and improved input 20 | validation. 21 | 22 | Mark Johnston addressed many memory and file descriptor leaks and similar 23 | issues reported by Coverity Scan. 24 | 25 | Sponsor: The FreeBSD Foundation 26 | -------------------------------------------------------------------------------- /2020q1/ena.md: -------------------------------------------------------------------------------- 1 | ## ENA FreeBSD Driver Update ## 2 | 3 | Link: [ENA README](https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README) 4 | 5 | Contact: Michal Krawczyk 6 | Contact: Maciej Bielski 7 | Contact: Marcin Wojtas 8 | 9 | ENA (Elastic Network Adapter) is the smart NIC available in the 10 | virtualized environment of Amazon Web Services (AWS). The ENA 11 | driver supports multiple transmit and receive queues and can handle 12 | up to 100 Gb/s of network traffic, depending on the instance type 13 | on which it is used. 14 | 15 | Completed since the last update: 16 | * Upstream of the driver to v2.1.1, introducing: 17 | * Bug fix for LLQ mode which was causing race when multiple IO queues were 18 | used 19 | 20 | Work in progress: 21 | * Last touches for ENA v2.2.0 release, introducing: 22 | * Add driver support for the upcoming HW features (like Rx offsets, 23 | reporting Tx drops) 24 | * Add sysctl tuneables for IO queue number 25 | * Create IO queues with optional size backoff 26 | * Rework the way of configration of drbr and Rx ring size to be more robust 27 | and stable 28 | * New HAL version 29 | * Other minor fixes and improvements 30 | 31 | Sponsor: Amazon.com Inc 32 | -------------------------------------------------------------------------------- /2020q1/gcc-retirement.md: -------------------------------------------------------------------------------- 1 | ## GCC 4.2.1 Retirement ## 2 | 3 | Contact: Ed Maste, 4 | Contact: Warner Losh, 5 | 6 | In 2007 the GNU Compiler Collection (GCC) migrated to GPLv3, which 7 | prompted discussions about the future of the FreeBSD tool chain. We held 8 | a [Tool Chain Summit](https://wiki.freebsd.org/201005ToolchainSummit) at 9 | BSDCan 2010. Roman Divacky gave an update on the ClangBSD project, building 10 | FreeBSD using the new and rapidly improving Clang compiler. 11 | 12 | Since that time Clang was imported into the FreeBSD base system and was used 13 | more and more widely - first being installed but not the default `cc`, then 14 | used by default on i386 and amd64, and later used on more and more targets. 15 | In the years since Dimitry Andric has been keeping our copy of Clang 16 | up-to-date. 17 | 18 | GCC 4.2.1 was kept in the tree for a few FreeBSD targets that hadn't migrated 19 | to Clang, such as MIPS and Sparc64. By early this year all remaning targets 20 | had migrated to external toolchain (contemporary GCC from ports or packages), 21 | or had been deprecated. 22 | 23 | With no in-tree consumers remaining, GCC 4.2.1 was removed from FreeBSD in 24 | [r358454](https://svnweb.freebsd.org/changeset/base/358454) on February 29, 25 | 2020. 26 | 27 | Sponsor: The FreeBSD Foundation 28 | -------------------------------------------------------------------------------- /2020q1/go.md: -------------------------------------------------------------------------------- 1 | ## Go on freebsd/arm64 ## 2 | 3 | Link: [Go 1.14 Release Notes ](https://golang.org/doc/go1.14#freebsd) 4 | 5 | Contact: Mikaël Urankar 6 | Contact: Dmitri Goutnik 7 | 8 | Starting from the recently released version 1.14, Go now officially supports 9 | 64-bit ARM architecture on FreeBSD 12.0 or later. 10 | This porting effort was initially started by Greg V (aka myfreeweb) and resumed 11 | by Shigeru Yamamoto, Dmitri Goutnik and Mikaël Urankar. 12 | Dmitry has set up a CI builder to catch regression on FreeBSD aarch64 (it's 13 | required by the golang policy for adding a new port to the main Go repository) 14 | 15 | Work in progress: 16 | * a lot of ports use an old version of golang.org/x/sys or golang.org/x/net 17 | (to name a few) that doesn't contain the FreeBSD aarch64 bits, 18 | work is being done to fix these ports (details are in the [bug tracker entry](https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=242312)) 19 | -------------------------------------------------------------------------------- /2020q1/intro.md: -------------------------------------------------------------------------------- 1 | Welcome, to the quarterly reports, of the future! Well, at least the first 2 | quarterly report from 2020. The new timeline, mentioned in the last few 3 | reports, still holds, which brings us to this report, which covers the period 4 | of January 2020 - March 2020. 5 | 6 | As you will see from this report, we've had quite an active quarter with big 7 | changes to both kernel, userland, documentation, ports, and third-party 8 | projects in the form of everything from bug and security fixes over new features 9 | to speed improvements and optimizations. 10 | 11 | As this report also covers the start of the epidemic, it's also interesting to 12 | note that a quick glance at the svn logs reveal that there has been no overall 13 | drop in number of source commits, that docs commits have also stayed constant, 14 | and that ports have seen an upwards trend. 15 | 16 | We hope that all of you are and yours are as safe as can be managed, and that 17 | we get through this together by working together. 18 | 19 | \-\- Daniel Ebdrup Jensen, 20 | -------------------------------------------------------------------------------- /2020q1/kyua.md: -------------------------------------------------------------------------------- 1 | ## Import of the Kyua test framework ## 2 | 3 | Link: [The FreeBSD Test Suite](https://wiki.freebsd.org/TestSuite) 4 | 5 | Contact: Brooks Davis 6 | 7 | The FreeBSD test suite uses the Kyua test framework to run tests. 8 | 9 | Historically Kyua has been installed from the ports collection 10 | (`devel/kyua`). While this is fine for mainstream architectures, 11 | it can pose bootstrapping issues on new architectures and package 12 | installation is quite slow under emulation or on FPGA based systems. 13 | By including it in the FreeBSD base system we can avoid these issues. 14 | 15 | We hope that this inclusion will spur testing of embedded platforms 16 | and simplify the process of testing within continuous integration 17 | systems. 18 | 19 | We currently plan to retain the `devel/kyua` port to serve FreeBSD 20 | versions without and to serve as a development version. 21 | 22 | Sponsor: DARPA 23 | -------------------------------------------------------------------------------- /2020q1/linuxulator.md: -------------------------------------------------------------------------------- 1 | ## Linux compatibility layer update ## 2 | 3 | Contact: Edward Tomasz Napierala, 4 | 5 | Work during this quarter focused on source code cleanup and making 6 | it easier to debug missing functionality. There were, however, 7 | some user-visible changes: added support for `TCP_CORK` as required by Nginx, 8 | added support `MAP_32BIT` flag, which fixes Mono binaries from Ubuntu Bionic, 9 | and a fix for DNS resolution with glibc newer than 2.30, which affected 10 | CentOS 8. 11 | 12 | The Linux Test Project tests that are being run as part of the 13 | the [FreeBSD Continuous Integration infrastructure](https://ci.FreeBSD.org) 14 | now include the Open POSIX test suite. 15 | 16 | There's still a lot to do: 17 | 18 | - There are pending reviews for patches that add 19 | [extended attributes support](https://reviews.freebsd.org/D13209), 20 | and [fexecve(2) syscall](https://reviews.freebsd.org/D10275), and 21 | they require wrapping up and committing 22 | 23 | - There are over [400 failing LTP tests](https://ci.freebsd.org/job/FreeBSD-head-amd64-test_ltp/). 24 | Some of them are false positives, some are easy to fix bugs, and some require adding 25 | new system calls. Any help is welcome. 26 | 27 | Sponsor: The FreeBSD Foundation 28 | -------------------------------------------------------------------------------- /2020q1/ls1046.md: -------------------------------------------------------------------------------- 1 | ## NXP ARM64 SoC support ## 2 | 3 | Contact: Marcin Wojtas 4 | Contact: Artur Rojek 5 | Contact: Dawid Gorecki 6 | 7 | The Semihalf team initiated working on FreeBSD support for the 8 | [NXP LS1046A SoC](https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/qoriq-layerscape-arm-processors/qoriq-layerscape-1046a-and-1026a-multicore-communications-processors:LS1046A) 9 | 10 | LS1046A are quad-core 64-bit ARMv8 Cortex-A72 processors with 11 | integrated packet processing acceleration and high speed peripherals 12 | including 10 Gb Ethernet, PCIe 3.0, SATA 3.0 and USB 3.0 for a wide 13 | range of networking, storage, security and industrial applications. 14 | 15 | Completed since the last update: 16 | * Clean-up and rebase support on top of FreeBSD-HEAD. Prepare features 17 | for the upstream submission: 18 | * QorIQ platform clockgen driver 19 | * LS1046A clockgen driver 20 | * GPIO support for QorIQ boards 21 | * QorIQ LS10xx AHCI driver 22 | * VF610 I2C controller support 23 | * TCA6416 GPIO expander 24 | * Epson RX-8803 RTC 25 | * QorIQ LS10xx SDHCI driver 26 | 27 | Todo: 28 | * Upstreaming of developed features. This work is expected to 29 | be submitted/merged to HEAD in the Q2 of 2020. 30 | 31 | Sponsor: Alstom Group 32 | 33 | -------------------------------------------------------------------------------- /2020q1/manpages.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Manpages overhaul ## 2 | 3 | Contact: Gordon Bergling 4 | 5 | I am currently working on an overhaul for the FreeBSD manpages by updating the HISTORY and STANDARDS sections and while here creating new manpages for parts of the system that missing documentation. FreeBSD has already one of the best documentation available for an UNIX-like operation system, but there are parts that could be improved. 6 | 7 | For the parts that have been already improved you can have a look at [my Phabricator account](https://reviews.freebsd.org/p/gbergling_gmail.com/). 8 | 9 | If you would like to help on improving the documentation effort, please contact Benedict Reuschling or me at gbergling@gmail.com. 10 | -------------------------------------------------------------------------------- /2020q1/pot.md: -------------------------------------------------------------------------------- 1 | ## pot and the nomad pot driver ## 2 | 3 | Link: [pot project](https://pot.pizzamig.dev) 4 | Link: [pot on github](https://github.com/pizzamig/pot) 5 | Link: [Nomad pot driver](https://github.com/trivago/nomad-pot-driver) 6 | Link: [minipot](https://github.com/pizzamig/minipot) 7 | 8 | Contact: Luca Pizzamiglio 9 | Contact: Esteban Barrios 10 | 11 | An initial effort to write proper documentation and guides for the pot project has started. The documentation, even if incomplete, is available at [here](https://pot.pizzamig.dev). A [F.A.Q.](https://pot.pizzamig.dev/FAQ/) page is available and waiting for users to submit their questions. 12 | 13 | During the last quarter, some bugs were reported on pot and on the nomad-pot-driver. Both projects released a new bug fix version. 14 | Many thanks to 'grembo' and 'Crest' that reported issues, tested and tried our solutions. 15 | Thanks also to Mateusz (0mp) for his Pull Requests! 16 | 17 | pot will have a new release soon (0.11.0), focused on network: 18 | 19 | * network stack support: ipv4 only, ipv6 only, dual stack. 20 | * flexible network setup for alias: adding the ability to use an arbitrary network setup for alias network type 21 | 22 | Contributions are welcome! Label "good first issue" has been added to issues to invite newcomers to contribute to the project! 23 | -------------------------------------------------------------------------------- /2020q1/re.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Release Engineering Team ## 2 | 3 | Contact: FreeBSD Release Engineering Team, 4 | 5 | Link: [FreeBSD 11.4-RELEASE schedule](https://www.freebsd.org/releases/11.4R/schedule.html) 6 | Link: [FreeBSD 12.2-RELEASE schedule](https://www.freebsd.org/releases/12.2R/schedule.html) 7 | Link: [FreeBSD development snapshots](https://download.freebsd.org/ftp/snapshots/ISO-IMAGES/) 8 | 9 | 10 | The FreeBSD Release Engineering Team is responsible for setting 11 | and publishing release schedules for official project releases 12 | of FreeBSD, announcing code freezes and maintaining the 13 | respective branches, among other things. 14 | 15 | The FreeBSD Release Engineering Team published the schedules for the upcoming 16 | 11.4-RELEASE and 12.2-RELEASE cycles. 17 | 18 | Much time was spent by Glen Barber working on updates to the various build 19 | tools adding support for builds from both Subversion and Git. This is very 20 | much a work in progress, as there are a number of inter-connected moving 21 | parts. 22 | 23 | Additionally throughout the quarter, several development snapshots builds 24 | were released for the *head*, *stable/12*, and *stable/11* branches. 25 | 26 | Much of this work was sponsored by Rubicon Communications, LLC (netgate.com) 27 | and the FreeBSD Foundation. 28 | -------------------------------------------------------------------------------- /2020q1/weblate.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Translations on Weblate ## 2 | 3 | Link: [Translate FreeBSD on Weblate wiki](https://wiki.freebsd.org/DocTranslationOnWeblate) 4 | Link: [FreeBSD Weblate Instance](https://translate-dev.freebsd.org/) 5 | 6 | Contact: Danilo G. Baio 7 | Contact: Edson Brandi 8 | 9 | As announced on [January](https://www.freebsd.org/news/newsflash.html#event20200121:01), The FreeBSD Project is adopting Weblate as its web-based continuous localization platform. 10 | 11 | We are getting new volunteers to the effort and so far these are the numbers: 12 | 13 | ### Q1 2020 Status ### 14 | 15 | * **10** languages 16 | * **47** registered users 17 | 18 | #### Languages #### 19 | 20 | * Chinese (Simplified) (zh_CN) 21 | * Chinese (Traditional) (zh_TW) - **_Added_** 22 | * French (fr_FR) - **_Added_** 23 | * German (de_DE) - **_Added_** 24 | * Italian (it_IT) - **_Added_** 25 | * Norwegian Bokmål - **_Added_** - New language on FreeBSD 26 | * Persian (fa_IR) - **_Added_** - New language on FreeBSD 27 | * Portuguese (Brazil) 28 | * Spanish 29 | * Turkish (tr-TR) **[1]** - **_Added_** - New language on FreeBSD 30 | 31 | 1 - Already had an effort in the past. 32 | 33 | We want to thank everyone that contributed, translating or reviewing documents. 34 | 35 | And please, help promote this effort on your local user group, we always need more volunteers. 36 | -------------------------------------------------------------------------------- /2020q1/wine.md: -------------------------------------------------------------------------------- 1 | ## Wine on FreeBSD ## 2 | 3 | Link: [Wine homepage](https://www.winehq.org) 4 | 5 | Contact: Gerald Pfeifer 6 | Contact: Lorenzo Salvadore 7 | 8 | The standard Wine port has moved from Wine 4.0.3 to Wine 5.0 which 9 | represents over 7,400 individual changes including built-in modules in 10 | PE format, multi-monitor support, Vulkan 1.1 support, and an XAudio2 11 | re-implementation. 12 | 13 | After our request for help in the last quarterly report the i386 wine 14 | ports have been adopted by salvadore who immediately started resolving 15 | existing bugs and improving the ports. Most of this work is ready and we 16 | began committing first pieces in March. Since it takes more time than 17 | initially expected, we will also update the i386-wine-devel port during 18 | this process so that users needing a more recent version can easily get it 19 | from the ports tree (or binary packages). On the other hand, we plan on 20 | backporting these improvements to i386-wine after i386-wine-devel is done 21 | and only then update that port, so that we always guarantee a stable 22 | version of i386-wine. 23 | -------------------------------------------------------------------------------- /2020q1/xfce.md: -------------------------------------------------------------------------------- 1 | ## XFCE ## 2 | 3 | Contact: Guido Falsi 4 | 5 | After the XFCE update to 4.14 a regression was observed in the XFCE 6 | window manager xfwm4. It caused window decorations to be drawn wrong 7 | or missing with certain graphic hardware setups. It has been reported 8 | that the recent update to Xorg server in the ports tree fixes this 9 | issue. The updated Xorg server will be available in the next 10 | qurterly branch. 11 | -------------------------------------------------------------------------------- /2020q2/README.md: -------------------------------------------------------------------------------- 1 | Second quarter of 2020 2 | ===================== 3 | 4 | This is the directory for status reports for the second quarter of 2020. 5 | -------------------------------------------------------------------------------- /2020q2/ausoc-audio.md: -------------------------------------------------------------------------------- 1 | ## SoC audio framework and more audio drivers ## 2 | 3 | Link: [rk3399_audio](https://github.com/gonzoua/freebsd/tree/rk3399_audio) 4 | 5 | Contact: Oleksandr Tymoshenko 6 | 7 | SoC audio framework made a good progress since last report. Support for AUX devices was 8 | added (devices like auxiliary amplifiers that are not part of main CODEC chip). To verify 9 | the framework design following audio drivers were added: recording support for RT5640 CODEC(Firefly-RK3399), 10 | Allwinner I2S, Alwinners sun8i and A64 CODECs (Pine A64+), both recording and playback. Current work in progress 11 | is RK3328 CODEC (Rock64) and ES8316 CODEC (RockPro64 and Pinebook Pro). 12 | -------------------------------------------------------------------------------- /2020q2/azure.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD on Microsoft HyperV and Azure ## 2 | 3 | Link: [FreeBSD on MicrosoftAzure wiki](https://wiki.freebsd.org/MicrosoftAzure) 4 | Link: [FreeBSD on Microsoft HyperV](https://wiki.freebsd.org/HyperV) 5 | 6 | Contact: FreeBSD Integration Services Team 7 | Contact: Wei Hu 8 | Contact: Li-Wen Hsu 9 | 10 | HyperV socket for FreeBSD implemented by Wei was checked into FreeBSD head 11 | branch on May 20th as 12 | [r361275](https://svnweb.freebsd.org/changeset/base/r361275). It supports 13 | guest/host communications without the need for networking. Some HyperV 14 | and Azure features rely on this to be available in guests. 15 | 16 | Details of HyperV Socket is available [here](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/make-integration-service). 17 | 18 | This project is sponsored by Microsoft. 19 | 20 | Li-Wen is working on the FreeBSD release code related to Azure for the -CURRENT, 12-STABLE and 11-STABLE branches. 21 | The work-in-progress is available [here](https://reviews.freebsd.org/D23804). 22 | The [12.1-RELEASE image on Azure Marketplace](https://azuremarketplace.microsoft.com/marketplace/apps/thefreebsdfoundation.freebsd-12_1) is published. 23 | The work on the 11.4-RELEASE image on Azure Marketplace is in progress. 24 | 25 | This project is sponsored by The FreeBSD Foundation. 26 | -------------------------------------------------------------------------------- /2020q2/bc-dc.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/freebsd/freebsd-quarterly/0826c0254e28309768517c71af4101a1716a7337/2020q2/bc-dc.md -------------------------------------------------------------------------------- /2020q2/binutils.md: -------------------------------------------------------------------------------- 1 | ## Binutils Retirement ## 2 | 3 | Link: [GPL in Base wiki page](https://wiki.freebsd.org/GPLinBase) 4 | 5 | Contact: Ed Maste 6 | 7 | We have been working on migrating to a modern and copyfree or permissively 8 | licensed toolchain for quite some time. In the last quarter we retired two 9 | obsolete GNU bintuils: objdump, and as. 10 | 11 | Many uses of objdump can be replaced with readelf, and llvm-objdump is also 12 | available in the base system. Ports that depend on objdump have been updated 13 | to rely on the GNU binutils port or package. 14 | 15 | The GNU as utility was used by both the base system and by ports. As with objdump, ports 16 | that require GNU as have generally been updated to depend on binutils. One 17 | file in the base system (skein\_block\_asm.s) proved troublesome during earlier 18 | attempts to migrate to using Clang's integrated assembler (IAS). However, 19 | after the update to Clang 10 (and with some trivial modifications to the 20 | source) IAS can assemble the file. 21 | 22 | Both GNU as and objdump have been removed from FreeBSD-CURRENT and will be 23 | absent from FreeBSD 13.0. 24 | 25 | ### TODO ### 26 | 27 | The final task in the binutils retirement project is to remove GNU GDB 6.1. 28 | It is currently retained for crashinfo(8). 29 | 30 | Sponsor: The FreeBSD Foundation 31 | -------------------------------------------------------------------------------- /2020q2/bluetooth.md: -------------------------------------------------------------------------------- 1 | ## Bluetooth Support ## 2 | 3 | Contact: Marc Veldman 4 | 5 | Bluetooth is a wireless technology for creating personal networks, 6 | connecting peripherals like keyboards and mice but also speakers and 7 | heart rate monitors. 8 | 9 | FreeBSD has limited Bluetooth Basic Rate (BR) support and no functional 10 | Bluetooth Low Energy (LE) support. 11 | 12 | During this quarter many small improvements have been made to help the 13 | development of Bluetooth LE support. A number of commands have been added to 14 | hccontrol(8), mainly to do LE functions. It is now possible to scan for LE 15 | devices within range using hccontrol. 16 | A panic that occurred when enabling LE support has also been fixed. 17 | 18 | Work is still needed to add Attribute Protocol (ATT) and Generic Attribute 19 | Profile (GATT) support. -------------------------------------------------------------------------------- /2020q2/chaifi.md: -------------------------------------------------------------------------------- 1 | ## chaifi: a tool to simplify joining public WiFi networks ## 2 | 3 | Link [chaifi](https://github.com/gonzoua/chaifi) 4 | Contact: Oleksandr Tymoshenko 5 | 6 | chaifi is a TUI (text UI) utility aimed at simplifying the process of joining 7 | public WiFi networks in places like coffee shops or libraries. It replaces the 8 | process of scanning and manually editing wpa_supplicant.conf with an 9 | interactive dialog. The utility is in no way a replacement for full-featured 10 | network managers in major desktop environments. Still, if you're working from a 11 | console or using a tiling window manager, it may save you some seconds (or in 12 | worst case minutes) of your time. 13 | -------------------------------------------------------------------------------- /2020q2/drm.md: -------------------------------------------------------------------------------- 1 | ## DRM Drivers Update ## 2 | 3 | Link: [drm-kmod](https://github.com/freebsd/drm-kmod/) 4 | 5 | Contact: Emmanuel Vadot 6 | 7 | The drm drivers for FreeBSD 13-CURRENT have been updated to match Linux 5.3 8 | This brings us a little bit closer to the last LTS release of Linux (5.4). 9 | 10 | The current plan is to first update the driver to match 5.4 and then look 11 | at making it work on FreeBSD-12-STABLE to have it ready for the 12.2 release. 12 | 13 | Sponsor: The FreeBSD Foundation 14 | -------------------------------------------------------------------------------- /2020q2/dts.md: -------------------------------------------------------------------------------- 1 | ## DTS Update ## 2 | 3 | Contact: Emmanuel Vadot 4 | 5 | DTS files (Device Tree Sources) were updated to be on par with Linux 5.7 for 6 | HEAD and 5.6 for the 12-STABLE branch. 7 | -------------------------------------------------------------------------------- /2020q2/haskell.md: -------------------------------------------------------------------------------- 1 | ## Haskell on FreeBSD ## 2 | 3 | Link: [Haskell language homepage](http://www.haskell.org/) 4 | Link: [Ports development repo](https://github.com/freebsd/freebsd-ports-haskell) 5 | 6 | Contact: Gleb Popov 7 | 8 | Haskell is a general-purpose strictly-typed pure functional language. 9 | The __Haskell on FreeBSD__ projects strives to provide the up-to-date 10 | Haskell toolchain as well as various application written in this language. 11 | 12 | This quarter brought the long-awaited GHC update, which is now at 13 | version 8.8.3. Along the compiler, the Haskell build system frontend, 14 | cabal-install, was also upgraded to 3.0.2.0. During this update, numerous 15 | Haskell ports were updated too. 16 | 17 | All existing ports of Haskell applications were migrated to USES=cabal, 18 | which implements Go-style build proccess - all dependencies are compiled as 19 | part of the build. As a consequence, ports for Haskell libraries have been 20 | deprecated and removed. 21 | 22 | Upgrading GHC became a tedious task for a single person, so a new GitHub 23 | repository was created under the FreeBSD organization - 24 | [freebsd-ports-haskell](https://github.com/freebsd/freebsd-ports-haskell). 25 | Right now, work is being done on preparing another GHC upgrade in the `ghc-upgrade-810` 26 | branch. Any contributions are welcome. 27 | -------------------------------------------------------------------------------- /2020q2/imx8m.md: -------------------------------------------------------------------------------- 1 | ## i.MX 8M support ## 2 | 3 | Link: [D25274](https://reviews.freebsd.org/D25274) 4 | 5 | Contact: Oleksandr Tymoshenko 6 | 7 | i.MX 8M is the family of application processors from NXP based on Arm® Cortex®-A53 and Cortex-M4 cores. 8 | The initial code drop for the platform support includes CCM driver and clock implementation, GPC driver, 9 | clock tree for i.MX 8M Quad. Most of the drivers from i.MX 6 can be reused for i.MX 8M systems with relatively minor modifications. 10 | Common changes include adding clock support and extending list of FDT compat strings. 11 | 12 | With the linked patch FreeBSD successfully booted to multiuser with NFS root on Nitrogen8M SBC. 13 | -------------------------------------------------------------------------------- /2020q2/intro.md: -------------------------------------------------------------------------------- 1 | This report will be covering FreeBSD related projects between April and June, 2 | and covers a diverse set of topics ranging from kernel updates over userland 3 | and ports, as well to third-party work. 4 | 5 | Some hilights picked with the roll of a d100 include but are not limmited to 6 | the ability to forcibly unmounting UFS when the underlying media becomes 7 | inaccessible, added support for Bluetooth Low Energy, a introduction to the 8 | FreeBSD Office Hours, and a repository of software collections called potluck 9 | to be installed with the pot utility, as well as many many more things. 10 | 11 | As a little treat, readers can also get a rare report from the quarterly team. 12 | 13 | Finally, on behalf of the quarterly team, I would like to extend my deepest 14 | appreciation and thank you to salvadore@, who decided to take down his shingle. 15 | His contribution to not just the quarterly reports themselves, but also the 16 | surrounding tooling to many-fold ease the work, is immeassurable. 17 | 18 | We hope you find the report as interesting as we have, 19 | Daniel Ebdrup Jensen, on behalf of the quarterly team. 20 | -------------------------------------------------------------------------------- /2020q2/ls1046.md: -------------------------------------------------------------------------------- 1 | ## NXP ARM64 SoC support ## 2 | 3 | Contact: Marcin Wojtas 4 | Contact: Artur Rojek 5 | Contact: Dawid Gorecki 6 | 7 | The Semihalf team initiated working on FreeBSD support for the 8 | [NXP LS1046A SoC](https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/qoriq-layerscape-arm-processors/qoriq-layerscape-1046a-and-1026a-multicore-communications-processors:LS1046A) 9 | 10 | LS1046A are quad-core 64-bit ARMv8 Cortex-A72 processors with 11 | integrated packet processing acceleration and high speed peripherals 12 | including 10 Gb Ethernet, PCIe 3.0, SATA 3.0 and USB 3.0 for a wide 13 | range of networking, storage, security and industrial applications. 14 | 15 | Completed since the last update: 16 | * Improve code in a couple of review cycles and merge following new 17 | features to the FreeBSD-HEAD (r361458 - r361464): 18 | * QorIQ platform clockgen driver 19 | * LS1046A clockgen driver 20 | * GPIO support for QorIQ boards 21 | * QorIQ LS10xx AHCI driver 22 | * VF610 I2C controller support 23 | * TCA6416 GPIO expander 24 | * Epson RX-8803 RTC 25 | 26 | Todo: 27 | * Upstreaming of the QorIQ SDHCI driver - it is expected to 28 | be submitted/merged to HEAD in the Q3 of 2020. 29 | 30 | Sponsor: Alstom Group 31 | -------------------------------------------------------------------------------- /2020q2/mixertui.md: -------------------------------------------------------------------------------- 1 | ## MixerTUI ## 2 | 3 | Link: [mixertui](https://gitlab.com/alfix/mixertui) 4 | 5 | Contact: Alfonso Sabato Siciliano 6 | 7 | MixerTUI is a volume mixer with a Terminal User Interface built on the FreeBSD 8 | sound system. It can show the current Sound Driver configuration and select an 9 | audio device: to get its information, to change the volume or to set it as 10 | default, the last feature allows to switch easily audio from/to laptop and hdmi, 11 | headphones and speakers, and so on. 12 | MixerTUI can be installed via the audio/mixertui port. 13 | 14 | I would like to thank the FreeBSD community for the tips, feedbacks and patches 15 | to improve this project. 16 | -------------------------------------------------------------------------------- /2020q2/sage.md: -------------------------------------------------------------------------------- 1 | ## SageMath ## 2 | 3 | Link: [SageMath site](https://www.sagemath.org/) 4 | 5 | Contact: Thierry Thomas 6 | 7 | SageMath is a free open-source mathematics software system licensed 8 | under the GPL. It builds on top of many existing open-source packages: 9 | NumPy, SciPy, matplotlib, Sympy, Maxima, GAP, FLINT, R and many more. 10 | Thanks to SageMath it is possible to access their combined power through a 11 | common, Python-based language or directly via interfaces or wrappers. 12 | 13 | The goal is creating a viable free open source alternative to Magma, Maple, 14 | Mathematica and Matlab. 15 | 16 | This is a complex port, with a lot of dependencies, and it has been 17 | broken for some time. Upstream is working on easing its packaging, and 18 | many previously bundled applications can now be replaced by external 19 | packages. 20 | 21 | If you are interested, it would be nice to create a team of maintainers 22 | 23 | * to maintain some of the dependencies; 24 | * to maintain SageMath itself and prepare the next release (9.2 is coming!). 25 | -------------------------------------------------------------------------------- /2020q2/valgrind.md: -------------------------------------------------------------------------------- 1 | ## Valgrind updates ## 2 | 3 | Contact: Paul Floyd 4 | Contact: Kyle Evans 5 | 6 | Link: https://reviews.freebsd.org/D25452 7 | 8 | A large amount of work has been done to rebase FreeBSD support on top of 9 | Valgrind 3.17.0, and to address numerous test suite failures. Currently, 10 | almost all of the regression tests pass on amd64. This is a major improvement 11 | over the current state of affairs, in which the Valgrind is quite out of date 12 | and is missing important functionality. Some follow-up work aims to make 13 | FreeBSD an officially supported target platform for Valgrind. 14 | 15 | The devel/valgrind-devel port is in the process of being updated to point at 16 | the new work. 17 | -------------------------------------------------------------------------------- /2020q2/vhdx.md: -------------------------------------------------------------------------------- 1 | ## VHDX support in mkimg(1) ## 2 | 3 | Contact: Oleksandr Tymoshenko 4 | 5 | VHDX is the successor of Microsoft's VHD virtual drive file format. It 6 | increases maximum capacity of the virtual drive to 64TB and introduces features 7 | to better handle power/system failures. VHDX is the required format for 2nd 8 | generation Hyper-V VMs. 9 | -------------------------------------------------------------------------------- /2020q2/weblate.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Translations on Weblate ## 2 | 3 | Link: [Translate FreeBSD on Weblate wiki](https://wiki.freebsd.org/DocTranslationOnWeblate) 4 | Link: [FreeBSD Weblate Instance](https://translate-dev.freebsd.org/) 5 | 6 | Contact: Danilo G. Baio 7 | Contact: Edson Brandi 8 | 9 | This quarter was improved the renderization of RTL (Right-to-left) languages on the FreeBSD Documentation. We faced this issue after the first RTL language joined the translations effort (fa_IR). 10 | 11 | We are looking forward to receive more languages and translators to the project as well. 12 | 13 | ### Q2 2020 Status ### 14 | 15 | * **10** languages (No new languages) 16 | * **80** registered users (33 new users since last quarter) 17 | 18 | #### Languages #### 19 | 20 | * Chinese (Simplified) (zh_CN) 21 | * Chinese (Traditional) (zh_TW) 22 | * French (fr_FR) 23 | * German (de_DE) 24 | * Italian (it_IT) 25 | * Norwegian (nb_NO) 26 | * Persian (fa_IR) 27 | * Portuguese (pt_BR) 28 | * Spanish (es_ES) 29 | * Turkish (tr-TR) 30 | 31 | We want to thank everyone that contributed, translating or reviewing documents. 32 | 33 | And please, help promote this effort on your local user group, we always need more volunteers. 34 | -------------------------------------------------------------------------------- /2020q3/README.md: -------------------------------------------------------------------------------- 1 | Third quarter of 2020 2 | ===================== 3 | 4 | This is the directory for status reports for the third quarter of 2020. 5 | -------------------------------------------------------------------------------- /2020q3/azure.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD on Microsoft HyperV and Azure ## 2 | 3 | Link: [Microsoft Azure article on FreeBSD wiki](https://wiki.freebsd.org/MicrosoftAzure) 4 | Link: [Microsoft HyperV article on FreeBSD wiki](https://wiki.freebsd.org/HyperV) 5 | 6 | Contact: FreeBSD Integration Services Team 7 | Contact: Wei Hu 8 | Contact: Li-Wen Hsu 9 | 10 | Li-Wen is working on the FreeBSD release code related to Azure for 11 | the -CURRENT, 12-STABLE and 11-STABLE branches. 12 | The work-in-progress is available [here](https://reviews.freebsd.org/D23804). 13 | The [11.4-RELEASE image on Azure Marketplace](https://azuremarketplace.microsoft.com/marketplace/apps/thefreebsdfoundation.freebsd-11_4) is published. 14 | We are testing the releng/12.2 branch and 12.2-RELEASE image will be 15 | published to Azure Marketplace soon after released. 16 | 17 | This project is sponsored by The FreeBSD Foundation, with resources provided by Microsoft. 18 | -------------------------------------------------------------------------------- /2020q3/docng.md: -------------------------------------------------------------------------------- 1 | ## DOCNG on FreeBSD ## 2 | 3 | Link: [DOCNG Website Repo](https://gitlab.com/carlavilla/freebsd-hugo-website) 4 | Link: [DOCNG Documentation Repo](https://gitlab.com/carlavilla/freebsd-hugo-documentation) 5 | Link: [DOCNG Share Repo](https://gitlab.com/carlavilla/freebsd-hugo-data) 6 | 7 | Contact: Sergio Carlavilla 8 | 9 | The Doc New Generation project aims to convert the website and all 10 | existing documentation to Hugo/AsciiDoctor. Right now almost 11 | everything is converted as you can see in the repositories. 12 | 13 | The objective of using Hugo and AsciiDoctor is to reduce the 14 | learning curve and let people to start quickly with our documentation 15 | system. Other benefits of using Hugo is that we can use other 16 | technologies aside from AsciiDoctor, like MarkDown, RST, Pandoc, etc. 17 | 18 | The remaining tasks include: 19 | * Finish the conversion of some books to AsciiDoctor. 20 | * Get some tweaks in the CSS to be responsive. 21 | * Add AsciiDoctor extensions to create an index of tables and figures. 22 | * Make a general review. 23 | 24 | The dates for making the migration have yet to be discussed. 25 | 26 | Patches, comments and objections are always welcome. 27 | -------------------------------------------------------------------------------- /2020q3/drm.md: -------------------------------------------------------------------------------- 1 | ## DRM Drivers Update ## 2 | 3 | Link: [drm-kmod](https://github.com/freebsd/drm-kmod/) 4 | 5 | Contact: Emmanuel Vadot 6 | 7 | The drm drivers for FreeBSD 13-CURRENT have been updated to match Linux 5.4.62 8 | Then graphics/drm-current-kmod have been updated to follow this LTS release of Linux. 9 | 10 | For now graphics/drm-devel-kmod is also tracking this release but will be updated 11 | to a later revision of Linux drm drivers in the near future. 12 | 13 | A lot of linuxkpi code was removed from the ports or replaced with a BSD 14 | licenced implementation. 15 | 16 | Sponsor: The FreeBSD Foundation 17 | -------------------------------------------------------------------------------- /2020q3/dts.md: -------------------------------------------------------------------------------- 1 | ## DTS Update ## 2 | 3 | Contact: Emmanuel Vadot 4 | 5 | DTS files (Device Tree Sources) were updated to be on par with Linux 5.8 for 6 | HEAD and 5.6 for the 12-STABLE branch. 7 | -------------------------------------------------------------------------------- /2020q3/ena.md: -------------------------------------------------------------------------------- 1 | ## ENA FreeBSD Driver Update ## 2 | 3 | Link: [ENA README](https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README) 4 | 5 | Contact: Michal Krawczyk 6 | Contact: Artur Rojek 7 | Contact: Marcin Wojtas 8 | 9 | ENA (Elastic Network Adapter) is the smart NIC available in the 10 | virtualized environment of Amazon Web Services (AWS). The ENA 11 | driver supports multiple transmit and receive queues and can handle 12 | up to 100 Gb/s of network traffic, depending on the instance type 13 | on which it is used. 14 | 15 | Completed since the last update: 16 | * Fix ENA compilation in case it is integrated into the kernel binary. 17 | * MFC of the ENA v2.2.0 driver to the FreeBSD 12.2. 18 | 19 | Work in progress: 20 | * Add feature that allows reading extra ENI (Elastic Network Interface) 21 | metrics about exceeding BW/pps limits. 22 | * Introduce full kernel RSS API support. 23 | * Allow reconfiguration of the RSS indirection table and hash key. 24 | * Evaluation and prototyping of the driver port to the iflib framework. 25 | 26 | Sponsor: Amazon.com Inc 27 | -------------------------------------------------------------------------------- /2020q3/if_dwc.md: -------------------------------------------------------------------------------- 1 | ## DesignWare Ethernet adapter driver improvements ## 2 | 3 | Link: [WIP branch](https://github.com/gonzoua/freebsd/tree/rk_eth) 4 | 5 | Contact: Oleksandr Tymoshenko 6 | 7 | DesignWare Ethernet adapter IP is used in Rockchip and Allwinner SoCs. 8 | The driver was updated with following fixes: 9 | 10 | * Initialize clocks instead of relying on u-boot to do the right thing. 11 | * Sense media type and adjust controller configuration accordingly. 12 | * Add support for RMII PHY mode. 13 | 14 | Yet uncommitted changes include performance optimisation by adding 15 | support for multi-segment mbuf transmission. The next step is to 16 | try to get more performance boost by using interrupt coalescence. 17 | -------------------------------------------------------------------------------- /2020q3/intro.md: -------------------------------------------------------------------------------- 1 | This report covers FreeBSD related projects for the period between 2 | July and September, and is the third of four planned reports for 2020. 3 | 4 | This quarter brings a good mix of additions and changes to the FreeBSD 5 | Project and community, from a diverse number of teams and people covering 6 | everything from architectures, continuous integration, wireless networking 7 | and drivers, over drm, desktop and third-party project work, as well as 8 | several team reports, along with many other interesting subjects too 9 | numerous to mention. 10 | 11 | As the world is still affected by the epidemic, we hope that this report 12 | can also serve as a good reminder that there is good work that can be done 13 | by people working together, even if we're apart. 14 | 15 | We hope you'll be as interested in reading it, as we've been in making it. 16 | Daniel Ebdrup Jensen, on behalf of the quarterly team. 17 | -------------------------------------------------------------------------------- /2020q3/ls1046.md: -------------------------------------------------------------------------------- 1 | ## NXP ARM64 SoC support ## 2 | 3 | Contact: Marcin Wojtas 4 | Contact: Artur Rojek 5 | Contact: Dawid Gorecki 6 | 7 | The Semihalf team initiated working on FreeBSD support for the 8 | [NXP LS1046A SoC](https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/qoriq-layerscape-arm-processors/qoriq-layerscape-1046a-and-1026a-multicore-communications-processors:LS1046A) 9 | 10 | LS1046A are quad-core 64-bit ARMv8 Cortex-A72 processors with 11 | integrated packet processing acceleration and high speed peripherals 12 | including 10 Gb Ethernet, PCIe 3.0, SATA 3.0 and USB 3.0 for a wide 13 | range of networking, storage, security and industrial applications. 14 | 15 | Completed since the last update: 16 | * Upstreaming of the QorIQ SDHCI driver (r365054). 17 | 18 | With above the current Semihalf upstreaming activity is complete. 19 | 20 | The major out-of-tree supported components: 21 | * DPAA network controller support. 22 | * QSPI controller support. 23 | 24 | They work on 11.2-RELEASE, but still require significant 25 | effort to adopt to FreeBSD-CURRENT. 26 | 27 | Sponsor: Alstom Group 28 | -------------------------------------------------------------------------------- /2020q3/lua.md: -------------------------------------------------------------------------------- 1 | ## Lua usage in FreeBSD ## 2 | 3 | Contact: Ed Maste 4 | Contact: Kyle Evans 5 | Contact: Ryan Moeller 6 | 7 | During this quarter, flua (FreeBSD Lua) [was taught](https://svnweb.freebsd.org/base/?view=revision&revision=r364182) 8 | where to find base .lua modules in order to support `require` of .lua modules 9 | to be provided by the base system. flua also [gained support](https://svnweb.freebsd.org/base/?view=revision&revision=r364222) 10 | for `require` of binary modules. 11 | 12 | A review for [libjail bindings](https://reviews.freebsd.org/D26080) has also 13 | been submitted, pending review. libjail is an essential component if one wants 14 | to be able to write jail management utilities in flua. 15 | 16 | People interested in working with Lua in FreeBSD are welcome to get in 17 | contact to discuss other project ideas. To name a couple of potential 18 | projects, some interesting modules that have not been started but could 19 | prove useful (listed in no particular order): 20 | 21 | * libcrypt 22 | * libexpat 23 | * libnv 24 | * libxo 25 | 26 | There is also a small list of scripts that would do well with a port to flua: 27 | 28 | * certctl(8) 29 | -------------------------------------------------------------------------------- /2020q3/riscv.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD/RISC-V Project ## 2 | 3 | Link: [Wiki](https://wiki.freebsd.org/riscv) 4 | 5 | Contact: Mitchell Horne 6 | Contact: [freebsd-riscv Mailing List](https://lists.FreeBSD.org/mailman/listinfo/freebsd-riscv) 7 | Contact: IRC #freebsd-riscv on freenode 8 | 9 | The FreeBSD/RISC-V project is providing support for running FreeBSD on the 10 | [RISC-V Instruction Set Architecture](https://riscv.org/). 11 | 12 | This quarter saw several important bug fixes. A number of hangs in the system 13 | were identified and addressed, and a bug in QEMU's implementation of the 14 | Platform Level Interrupt Controller was fixed. This fix is included in the new 15 | `devel/qemu50` and `devel/qemu-devel` ports. 16 | 17 | The end result of these fixes is that the test suite can now be reliably run to 18 | completion in QEMU. The entire run takes several hours, so CI has been 19 | configured to run the job once a day. There is active effort into reducing the 20 | time it takes to run the entire test suite. 21 | 22 | A new u-boot port was created: `sysutils/u-boot-qemu-riscv64`. This variant can 23 | be used as a secondary bootloader alongside OpenSBI to load and launch FreeBSD's 24 | `loader(8)` from an EFI System Partition. 25 | 26 | Next quarter will likely bring further fixes to address some of the failing test 27 | cases. 28 | -------------------------------------------------------------------------------- /2020q3/syzkaller.md: -------------------------------------------------------------------------------- 1 | ## syzkaller on FreeBSD ## 2 | 3 | Contact: Mark Johnston 4 | 5 | See the syzkaller entry in the 2019q1 quarterly report for an 6 | introduction to syzkaller. 7 | 8 | syzkaller, especially the public syzbot instance, continues to find bugs 9 | in the FreeBSD kernel. A number of these bugs have been fixed in 10 | subsystems such as the VFS name cache, the TCP and SCTP stacks, pf(4), 11 | the unix domain socket implementation, and the Linuxulator. 12 | 13 | The FreeBSD Foundation sponsored some work to enable cross-OS fuzzing. 14 | This makes it possible to fuzz the Linuxulator using syzkaller's Linux 15 | target. This effort quickly found several bugs; once the support is 16 | committed upstream we will hopefully be able to leverage syzbot to gain 17 | continuous testing of the Linux system call interface in addition to the 18 | native and 32-bit compatibility interfaces. 19 | 20 | Some work was also done to enable running syzkaller in a FreeBSD jail, 21 | with the eventual aim of making it easy to distribute binary images 22 | containing everything required to immediately start running syzkaller on 23 | a new host. Currently a number of setup steps are required, making 24 | deployment somewhat painful. 25 | 26 | Sponsor: The FreeBSD Foundation 27 | -------------------------------------------------------------------------------- /2020q4/FreshPorts.md: -------------------------------------------------------------------------------- 1 | Link: [FreshPorts](http://freshports.org/) 2 | Link: [FreshPorts blog](http://news.freshports.org/) 3 | 4 | Contact: Dan Langille 5 | 6 | FreshPorts, and its sister site, FreshSource, have reported 7 | upon FreeBSD commits for 20 years. They cover all commits, 8 | not just ports. 9 | 10 | FreshPorts tracks the commits and extracts data from the 11 | port Makefiles to create a database of information useful 12 | to both port developers and port users. 13 | 14 | For example, https://www.freshports.org/security/acme.sh/ shows 15 | the history of this port, back to its creation in May 2017. 16 | 17 | ### git ### 18 | 19 | The work to become git-ready is mostly complete. Both src and doc commits are 20 | flowing into [devgit.freshports.org](https://devgit.freshports.org). Some 21 | work is required on various issues, but nothing that stops the flow of 22 | commits into the database. 23 | 24 | ### Help wanted ### 25 | 26 | Amazon have donated enough to try FreshPorts on AWS. I need help with the 27 | following: 28 | 29 | * getting IPv6 working 30 | * working with [RDS](https://aws.amazon.com/rds/) 31 | 32 | If you can help with this, please contact me. Thank you. 33 | 34 | Thank you 35 | 36 | -------------------------------------------------------------------------------- /2020q4/README.md: -------------------------------------------------------------------------------- 1 | Fourth quarter of 2020 2 | ====================== 3 | 4 | This is the directory for status reports for the fourth quarter of 2020. 5 | -------------------------------------------------------------------------------- /2020q4/basegpl.md: -------------------------------------------------------------------------------- 1 | ## GPL in Base ## 2 | 3 | Link: [GPL Software in the Base System](https://wiki.freebsd.org/GPLinBase) 4 | 5 | Contact: Ed Maste 6 | Contact: Kyle Evans 7 | Contact: Baptiste Daroussin 8 | 9 | A long-standing goal of the FreeBSD project is for the base system to migrate 10 | to modern, copyfree or more permissively licensed components. In this quarter, 11 | the following components have been successfully removed or replaced: 12 | 13 | * gdb ([removed](https://cgit.freebsd.org/src/commit/?id=1c0ea326aa6d) in favor of lldb in base or devel/gdb in ports) 14 | * gnugrep ([replaced](https://cgit.freebsd.org/src/commit/?id=b82a9ec5f53e) with bsdgrep) 15 | * libgnuregex ([removed](https://cgit.freebsd.org/src/commit/?id=8aff76fb37b5)) 16 | 17 | The following component(s) have yet to be claimed. Some replacement prospects 18 | may be listed on the above-linked wiki page. Interested parties are welcome to 19 | evaluate the options to restart the discussion: 20 | 21 | * dialog 22 | * gcov (kernel) 23 | 24 | The following component(s) have a principal investigator to coordinate work. 25 | Note that partial completion likely means that a component is partially 26 | compatible, but could use evaluation and patches to bring parity with the 27 | component that it is replacing. 28 | 29 | * diff3 (Contact bapt@ if interested) 30 | -------------------------------------------------------------------------------- /2020q4/bastille.md: -------------------------------------------------------------------------------- 1 | ## Bastille ## 2 | 3 | Link: [Bastille GitHub](https://github.com/bastillebsd/bastille) 4 | Link: [Bastille Templates](https://gitlab.com/bastillebsd-templates) 5 | Link: [Bastille Website](https://bastillebsd.org) 6 | 7 | Contact: Christer Edwards 8 | 9 | ### What is Bastille? ### 10 | 11 | Bastille is an open-source system for automating deployment and management of 12 | containerised applications on FreeBSD. 13 | 14 | Bastille Templates automate container setup allowing you to easily reproduce 15 | containers as needed. 16 | 17 | Bastille is available in ports as `sysutils/bastille`. 18 | 19 | ### Q4 2020 Status ### 20 | 21 | In Q4 2020 Bastille merged some exciting new features. Changes include: 22 | 23 | * full adoption of the previously experimental Bastillefile format 24 | * new `config` sub-command 25 | * default templates included and applied by default 26 | * support for -CURRENT jails on -CURRENT hosts 27 | * support for 32bit containers on 64bit hosts 28 | * support in templates for dynamic arguments & defining variables 29 | * over two dozen bug fixes and general improvements 30 | 31 | More details about [Bastille Releases](https://github.com/BastilleBSD/bastille/releases). 32 | 33 | upstream was updated to `0.8.202010101` (latest). 34 | ports (`sysutils/bastille`) was updated to `0.7.20200414`. 35 | -------------------------------------------------------------------------------- /2020q4/docng.md: -------------------------------------------------------------------------------- 1 | ## DOCNG on FreeBSD ## 2 | 3 | Link: [DOCNG Website Repo](https://gitlab.com/carlavilla/freebsd-hugo-website) 4 | Link: [DOCNG Documentation Repo](https://gitlab.com/carlavilla/freebsd-hugo-documentation) 5 | Link: [DOCNG Share Repo](https://gitlab.com/carlavilla/freebsd-hugo-data) 6 | 7 | Contact: Sergio Carlavilla 8 | 9 | The Doc New Generation project is finished. The switch-over date will be Saturday, January 23rd. 10 | 11 | The objective of using Hugo and AsciiDoctor is to reduce the 12 | learning curve and let people to start quickly contributing to our documentation 13 | system. Other benefits of using Hugo is that we can use other 14 | technologies aside from AsciiDoctor, like MarkDown, RST, Pandoc, etc. 15 | 16 | You can find a [work in progress on updating the FreeBSD Documentation Project Primer to Hugo/AsciiDoctor](https://github.com/sergio-carlavilla/documentation-project-primer). 17 | -------------------------------------------------------------------------------- /2020q4/ena.md: -------------------------------------------------------------------------------- 1 | ## ENA FreeBSD Driver Update ## 2 | 3 | Link: [ENA README](https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README) 4 | 5 | Contact: Michal Krawczyk 6 | Contact: Artur Rojek 7 | Contact: Marcin Wojtas 8 | 9 | ENA (Elastic Network Adapter) is the smart NIC available in the 10 | virtualized environment of Amazon Web Services (AWS). The ENA 11 | driver supports multiple transmit and receive queues and can handle 12 | up to 100 Gb/s of network traffic, depending on the instance type 13 | on which it is used. 14 | 15 | Completed since the last update: 16 | 17 | * MFC of the ENA v2.3.0 driver to the FreeBSD 11-STABLE branch 18 | * MFC of the ENA v2.3.0 driver to the upcoming FreeBSD 12-STABLE branch 19 | * Add feature that allows reading extra ENI (Elastic Network Interface) 20 | metrics about exceeding BW/pps limits 21 | * Add SPDX license tag to the ENA driver files 22 | * Add Rx offsets (hardware feature) support for the ENA driver 23 | * Fix completion descriptors alignment for the ENA device - on some of 24 | the platforms ENA needs alignment to 4k 25 | 26 | Work in progress: 27 | 28 | * Introduce full kernel RSS API support. 29 | * Allow reconfiguration of the RSS indirection table and hash key 30 | * Prototype the driver port to the iflib framework 31 | 32 | Sponsor: Amazon.com Inc 33 | -------------------------------------------------------------------------------- /2020q4/intro.md: -------------------------------------------------------------------------------- 1 | This report covers FreeBSD related projects for the period between July 2 | and September, and is the third of four planned reports for 2020. 3 | 4 | This quarter had quite a lot of work done, including but certainly not 5 | limited to, in areas relating to everything from multiple architectures 6 | such as x86, aarch64 and riscv for both base and ports, over kernel 7 | changes such as vectored aio, routing lookups and multipathing, an 8 | alternative random(4) implementation, zstd integration for kernel 9 | dumps, log compression, zfs and preparations for pkg(8), along with 10 | wifi changes, changes to the toolchain like the new elfctl utility, 11 | and all the way to big changes like the git migration and moving the 12 | documentation from DocBook to AsciiDoctor/Hugo, as well as many other 13 | things too numerous to mention in an introduction. 14 | 15 | This report with 45 entries couldn't have happened without all the 16 | people doing the work also writing an entry for the report, so the 17 | quarterly team would like to thank them, as otherwise, we wouldn't 18 | have anything to do. 19 | 20 | Please note that the deadline for submissions covering the period 21 | between January and March is March 31st. 22 | 23 | We hope you'll enjoy reading as much as we enjoyed compiling it. 24 | Daniel Ebdrup Jensen, on behalf of the quarterly team. 25 | -------------------------------------------------------------------------------- /2020q4/iwlwifi.md: -------------------------------------------------------------------------------- 1 | ## Intel wireless update ## 2 | 3 | Link: [The freebsd-wireless mailing list](https://lists.freebsd.org/mailman/listinfo/freebsd-wireless) 4 | 5 | Contact: Bjoern A. Zeeb 6 | 7 | ### Newer Intel Wireless device support ### 8 | 9 | The Intel Wireless driver update project aims to bring support for 10 | newer chipsets and also get station side to 11ac in a first step. 11 | 12 | During the last months connection code between net80211 and the 13 | Linux driver KPI was implemented and scanning is working. 14 | Currently the focus is on sending and driving one state machine 15 | from the other and syncing state between net80211 and the 16 | Linux compat code. 17 | 18 | In addition the driver and firmware was updated from upstream sources 19 | to include support for the AX210 hardware generation, which was already 20 | tested to attach. 21 | 22 | The hope is that by the time the status report gets published 23 | authentication and association are working and basic data packet passing 24 | will work soon. 25 | 26 | Sponsor: The FreeBSD Foundation 27 | -------------------------------------------------------------------------------- /2020q4/k8s-bhyve.md: -------------------------------------------------------------------------------- 1 | ## K8S-bhyve ## 2 | 3 | Link: [K8S-bhyve](https://k8s-bhyve.convectix.com) 4 | Link: [K8S-bhyve](https://github.com/k8s-bhyve) 5 | Link: [Kubernetes](https://kubernetes.io/) 6 | 7 | Contact: Kirill Ponomarev 8 | Contact: Oleg Ginzburg 9 | 10 | K8S-bhyve is opensource project concentrating primarily on deploying and use 11 | of kubernetes on FreeBSD/bhyve in a more agile and more comfortable manner. 12 | We are going to provide distributed multi-DC environment or just stand-alone 13 | clusters with native PV/PVC support. 14 | 15 | For 2020Q4 we made and published a k8s-bhyve image which 16 | you might install with [ISO/memstick](https://k8s-bhyve.convectix.com/kbhyve-latest.iso), 17 | as well as with [bsdinstall](http://k8s.bsdstore.ru/auto). 18 | -------------------------------------------------------------------------------- /2020q4/netapp.md: -------------------------------------------------------------------------------- 1 | ## Upstreaming NetApp Changes ## 2 | 3 | Link: [Klara Inc.](https://klarasystems.com/freebsd-development/) 4 | 5 | Contact: Alexander Sideropoulos 6 | Contact: Allan Jude 7 | 8 | NetApp has started an effort to upstream bug fixes and other improvements from 9 | the ONTAP code line into FreeBSD. These changes benefit the FreeBSD 10 | community by providing many fixes that NetApp has made over the past few years, 11 | while allowing NetApp to reduce the number of customizations needed when 12 | bringing in the latest FreeBSD changes back into the ONTAP tree. 13 | 14 | NetApp has partnered with Klara to facilitate this project, to help identify 15 | interesting and useful changes to send upstream, to rework and generalize those 16 | changes as required to make them suitable for upstreaming, and to shepherd them 17 | through the FreeBSD code review process. 18 | 19 | During the fourth quarter, Klara has made 40 upstream fixes in the FreeBSD 20 | kernel in various subsystems including geom, dev, amd64, net, kern, netinet, and 21 | several other areas of the tree on behalf of NetApp. 22 | 23 | NetApp intends to continue to sponsor this effort throughout 2021. 24 | 25 | Sponsor: NetApp 26 | -------------------------------------------------------------------------------- /2020q4/nfs-exporter.md: -------------------------------------------------------------------------------- 1 | ## Prometheus NFS Exporter ## 2 | 3 | Link: https://github.com/Axcient/freebsd-nfs-exporter 4 | 5 | Contact: Alan Somers 6 | 7 | FreeBSD's nfsstat(8) utility provides a wealth of statistics, but I wanted to 8 | monitor them with Prometheus. Screen-scraping the --libxo output would've been 9 | possible, but some of the stats are preprocessed in a way that interferes with 10 | my Prometheus processing. So I wrote a separate utility that publishes the raw 11 | stats provided by the kernel. Along the way I found and fixed a few bugs in 12 | nfsstat, too. If anybody is interested, I can add a port for it. 13 | 14 | Sponsor: Axcient 15 | -------------------------------------------------------------------------------- /2020q4/officehours.md: -------------------------------------------------------------------------------- 1 | ## Office Hours ## 2 | 3 | Contact: Allan Jude 4 | Contact: Ed Maste 5 | 6 | During the final quarter of 2020 three office hours sessions were held. 7 | 8 | The first was hosted by the core team in a time slot conducive to Asia and 9 | Australia, covering topics including the transition to git, recruiting for 10 | project teams, and core's todo list. 11 | 12 | The second was hosted by the git transition team, and answered attendee 13 | questions about the transition to git and how it would impact the project's 14 | workflows. 15 | 16 | The third session was hosted by bhyve maintainers Peter Grehan and John Baldwin 17 | to present recent development efforts and answer questions about bhyve. 18 | 19 | The project is looking for volunteers to host future office hours sessions, as 20 | well as taking topic suggestions. We also hope to improve the system to allow people 21 | to submit questions ahead of time, so that we can take maximum advantage of 22 | subject matter experts when we have them for these calls. 23 | 24 | You can find the schedule for future office hours, and videos of past 25 | office hours on the [FreeBSD Wiki](https://wiki.freebsd.org/OfficeHours) 26 | 27 | Sponsor: ScaleEngine Inc. 28 | -------------------------------------------------------------------------------- /2020q4/openbsm.md: -------------------------------------------------------------------------------- 1 | ## OpenBSM Synchronisation ## 2 | 3 | Link: [TrustedBSD / OpenBSM](http://www.trustedbsd.org/openbsm.html) 4 | Link: [OpenBSM Github Sources](https://github.com/openbsm/openbsm) 5 | Link: [Synchronisation with macOS Catalina](https://github.com/openbsm/openbsm/commit/54a0c07cf8bac71554130e8f6760ca68e5f36c7f) 6 | Link: [Apple OpenSource](https://opensource.apple.com) 7 | 8 | Contact: Gordon Bergling 9 | 10 | OpenBSM is a crucial part of FreeBSD, which provides auditing features for 11 | the operating system. OpenBSM is incorporated into FreeBSD and macOS. 12 | Both Apple and FreeBSD have currently made changes to the OpenBSM framework, 13 | which weren't upstreamed. This small project aims to consolidate 14 | these changes and upstream them to the OpenBSM github repository, so that 15 | both development efforts can be merged to FreeBSD later on. The tricky part 16 | of this project is the manual comparison, since Apple doesn't provide any 17 | changelogs. 18 | 19 | I am currently working on on the macOS Catalina sources and hopefully Apple 20 | will release the sources of macOS Big Sur in time for FreeBSD 13. 21 | -------------------------------------------------------------------------------- /2020q4/ping.md: -------------------------------------------------------------------------------- 1 | ## Dual-stack ping command ## 2 | 3 | Contact: Alan Somers 4 | 5 | The venerable ping command has until now only supported IPv4. A separate 6 | utility, ping6, was originally written by WIDE as a research tool to develop 7 | IPv6. As a research tool, it didn't need IPv4 support, but since then, it's 8 | been put to practical use by countless developers and sysadmins everywhere. 9 | 10 | The ping/ping6 split has been a perennial complaint. It's annoying that two 11 | separate commands are needed, even though they do almost exactly the same 12 | thing. This quarter, I merged Ján Sučan's GSoC work, which merged the two 13 | commands. Now ping can handle either protocol, based on the -4 and -6 14 | switches, or based on the format of the target. A ping6 hard link is provided 15 | for backwards compatibility. 16 | 17 | Sponsor: Google Summer of Code 18 | -------------------------------------------------------------------------------- /2020q4/toolchain.md: -------------------------------------------------------------------------------- 1 | ## Tool Chain ## 2 | 3 | Contact: Dimitry Andric 4 | Contact: Ed Maste 5 | 6 | Link: [ELF Tool Chain homepage](https://sourceforge.net/p/elftoolchain) 7 | 8 | In October Clang/LLVM was updated to 11.0.0, followed by a number of bug fixes 9 | from upstream, including improvements for a number of Tier-2 architectures. 10 | We also enabled the `-fstack-clash-protection` flag to enable compiler 11 | mitigation for the "stack clash" vulnerability and are coordinating with 12 | upstream. 13 | 14 | Upstream LLDB support for FreeBSD improved substantially over the last quarter, 15 | as detailed elsewhere in this report. These improvements will make it into the 16 | FreeBSD base system early in 2021 when LLVM is next updated to 12.0. As also 17 | mentioned elsewhere, we removed the obsolete copy of GDB 6.1.1. 18 | 19 | The ELF Tool Chain received a number of bug fixes, as well as support for 20 | `readelf -z` (handling compressed ELF debug sections) and an improvement 21 | to addr2line to report based on labels when other debug information is not 22 | available. We are working to upstream these changes to the ELF Tool Chain 23 | project. 24 | 25 | There are a number of open issues and opportunities for improvements in various 26 | ELF Tool Chain components. Contributions in these areas are very welcome, 27 | 28 | Sponsor: The FreeBSD Foundation (in part) 29 | -------------------------------------------------------------------------------- /2020q4/vectored-aio.md: -------------------------------------------------------------------------------- 1 | ## Vectored AIO ## 2 | 3 | Contact: Alan Somers 4 | 5 | POSIX AIO is a facility for asynchronous I/O to files and devices. FreeBSD's 6 | implementation is efficient, especially when writing to disk files. But a 7 | long-standing defect in the standard API is a lack of vectored functions. That 8 | is, there is no asynchronous equivalent of `pwritev(2)` and `preadv(2)`. A 9 | common workaround is to use `lio_listio(2)` instead. However, that has several 10 | drawbacks. It's more effort for the programmer, it might return early with 11 | only a subset of the operations completed, it requires more total syscalls, and 12 | there is no guarantee that the operations will complete in-order. 13 | 14 | This quarter I added two new syscalls: `aio_writev(2)` and `aio_readv(2)`. 15 | They work just like their non-vectored counterparts, but they take an array of 16 | `iovec` elements, just like `pwritev` and `preadv`. You can't use them in 17 | combination with `lio_listio`, but that could be added in the future. 18 | -------------------------------------------------------------------------------- /2020q4/weblate.md: -------------------------------------------------------------------------------- 1 | ## FreeBSD Translations on Weblate ## 2 | 3 | Link: [Translate FreeBSD on Weblate wiki](https://wiki.freebsd.org/DocTranslationOnWeblate) 4 | Link: [FreeBSD Weblate Instance](https://translate-dev.freebsd.org/) 5 | 6 | Contact: Danilo G. Baio 7 | Contact: Edson Brandi 8 | 9 | In search of new contributors an article was published in the 10 | September/October 2020 issue of the FreeBSD Journal about How to Become a 11 | FreeBSD Translator. 12 | 13 | During the whole year we received new contributors to the effort; numbers are 14 | still growing and we are receiving translations almost daily on our Weblate 15 | platform. 16 | 17 | ### Q4 2020 Status ### 18 | 19 | * 11 languages (1 new language) 20 | * 116 registered users (69 new users since 2020q1) 21 | 22 | #### Languages #### 23 | 24 | * Chinese (Simplified) (zh_CN) 25 | * Chinese (Traditional) (zh_TW) 26 | * Dutch (nl_NL) - Added 27 | * French (fr_FR) 28 | * German (de_DE) 29 | * Italian (it_IT) 30 | * Norwegian (nb_NO) 31 | * Persian (fa_IR) 32 | * Portuguese (pt_BR) 33 | * Spanish (es_ES) 34 | * Turkish (tr-TR) 35 | 36 | We want to thank everyone that contributed, translating or reviewing documents. 37 | 38 | And please, help promote this effort on your local user group, we always need 39 | more volunteers. 40 | -------------------------------------------------------------------------------- /2021q1/cbsd.adoc: -------------------------------------------------------------------------------- 1 | === CBSD Project 2 | 3 | Links: + 4 | link:https://www.bsdstore.ru/en/cbsd_api_ssi.html[CBSD API module] URL: link:https://www.bsdstore.ru/en/cbsd_api_ssi.html[https://www.bsdstore.ru/en/cbsd_api_ssi.html] 5 | 6 | Contact: Oleg Ginzburg 7 | 8 | ==== What is CBSD? 9 | 10 | CBSD is a management layer written for the FreeBSD man:jail[8] subsystem, man:bhyve[8] and man:xen[4]. 11 | CBSD allows users to manage jail/bhyve/xen environments at different levels of abstraction by providing a varied number of unified methods: vagrant-like `CBSDfiles`, `CLI` and via man:dialog[1]. 12 | 13 | ==== CBSD 2021Q1 Status Report 14 | 15 | A RestAPI service layer was added during last quarter, enabling creation of programmable cloud solutions. 16 | In addition, work has been done to support RestAPI through a `CBSDfile`, allowing for private cloud environments deployment. 17 | In such cases the local CBSD layer acts as a thin client. 18 | -------------------------------------------------------------------------------- /2021q1/docng.adoc: -------------------------------------------------------------------------------- 1 | === DOCNG on FreeBSD 2 | 3 | Contact: Sergio Carlavilla 4 | 5 | The Doc New Generation project is finished. 6 | The switch-over date was Saturday, January 23rd. 7 | 8 | But there's a list of remaining tasks: 9 | 10 | * Convert the Python scripts to Ruby using the AsciiDoctor API 11 | * Convert from releases from 4.4 to 9.0 to AsciiDoctor 12 | * Use rouge in the source sections instead of the CSS hack 13 | * Split the news page to reduce the total size of the page 14 | * Split the books 15 | * Improve the FDP book 16 | 17 | If you want to reduce the TODO list, give me a ping :) 18 | -------------------------------------------------------------------------------- /2021q1/iwlwifi.adoc: -------------------------------------------------------------------------------- 1 | === Intel wireless update 2 | 3 | Links: + 4 | link:https://lists.freebsd.org/mailman/listinfo/freebsd-wireless[The freebsd-wireless mailing list] URL: link:https://lists.freebsd.org/mailman/listinfo/freebsd-wireless[https://lists.freebsd.org/mailman/listinfo/freebsd-wireless] 5 | 6 | Contact: Bjoern A. Zeeb 7 | 8 | ==== Newer Intel Wireless device support 9 | 10 | The Intel Wireless driver update project aims to bring support for newer chipsets. 11 | 12 | During the first quarter the driver and firmware were synched from upstream so that we will have support for all modern cards currently supported in Linux. 13 | Some iwlwifi driver changes were also submitted back upstream. 14 | 15 | Several conflicts with the original implementation of LinuxKPI were or are being resolved and more LinuxKPI code was upstreamed to FreeBSD HEAD. 16 | 17 | LinuxKPI 802.11 compat code was improved and as of the day of writing we have data packets going over 11a. 18 | 19 | The plan for the next weeks is to clean things up, land as much as possible in HEAD, provide the code for testing and work on stability based on feedback before filling gaps in the LinuxKPI 802.11 compat code to enhance support for more standards and features. 20 | 21 | Sponsor: The FreeBSD Foundation 22 | -------------------------------------------------------------------------------- /2021q1/office.adoc: -------------------------------------------------------------------------------- 1 | === FreeBSD Office team 2021Q1 status report 2 | 3 | Links: + 4 | link:https://wiki.freebsd.org/Office[The FreeBSD Office project] URL: link:https://wiki.freebsd.org/Office[https://wiki.freebsd.org/Office] 5 | 6 | Contact: FreeBSD Office team ML + 7 | Contact: Dima Panov + 8 | Contact: Li-Wen Hsu 9 | 10 | The FreeBSD Office team works on a number of office-related software suites and tools such as OpenOffice and LibreOffice. 11 | 12 | Work during this quarter was focused on providing the latest stable release of LibreOffice suite and companion apps to all FreeBSD users. 13 | 14 | Latest and quarterly ports branches got a new branch (7.1) of the LibreOffice suite and updated to 7.1.1 release. 15 | 16 | Meanwhile, our link:https://github.org/freebsd/freebsd-ports-libreoffice[WIP repository] got back a working CI instance again, thanks to Li-Wen Hsu. 17 | 18 | We are looking for people to help with the open tasks: 19 | 20 | * The link:https://bugs.freebsd.org/bugzilla/buglist.cgi?bug_status=open&email1=office%40FreeBSD.org&emailassigned_to1=1&emailcc1=1&emailreporter1=1&emailtype1=substring&query_format=advanced&list_id=374316[open bugs list] contains all filed issues which need some attention 21 | * Upstream local patches in ports 22 | 23 | Patches, comments and objections are always welcome in the mailing list and bugzilla. 24 | -------------------------------------------------------------------------------- /2021q1/virtualbox.adoc: -------------------------------------------------------------------------------- 1 | === VirtualBox FreeBSD port 2 | 3 | Links: + 4 | link:https://www.virtualbox.org/[VirtualBox home page] URL: link:https://www.virtualbox.org/[https://www.virtualbox.org/] + 5 | link:https://www.freshports.org/emulators/virtualbox-ose[VirtualBox OSE port on FreshPorts] URL: link:https://www.freshports.org/emulators/virtualbox-ose[https://www.freshports.org/emulators/virtualbox-ose] 6 | 7 | Contact: VirtualBox port team 8 | 9 | The VirtualBox ports have been updated to the upstream 6.1.18 release. 10 | 11 | This is a new major release with new features and better support, especially for graphics output. 12 | This new release has support only for recent amd64 CPUs providing virtualization support in hardware (VT-x, AMD-V bits). 13 | 14 | The previous versions of the VirtualBox ports have been preserved as the -legacy versions to allow people unable to use the new version to have a virtualization solution. 15 | 16 | The new additions port at present fails to build on i386 but the old additions do provide basic functionality for that emulation. 17 | -------------------------------------------------------------------------------- /2021q1/www.adoc: -------------------------------------------------------------------------------- 1 | === WebApps working group 2 | 3 | Contact: Sergio Carlavilla 4 | 5 | The purpose of this working group is to redesign the Website and the Documentation Portal. 6 | 7 | The work will be divided into 4 phases. 8 | 9 | Phase 1: 10 | 11 | * Redesign the documentation portal: new design, responsive and global search. 12 | 13 | Phase 2: 14 | 15 | * Redesign the manual pages scripts to generate the HTML using mandoc. 16 | 17 | Phase 3: 18 | 19 | * Redesign the ports scripts to create an applications portal. 20 | 21 | Phase 4: 22 | 23 | * Redesign the main website: new design, responsive and dark theme. 24 | -------------------------------------------------------------------------------- /2021q2/dpaa.adoc: -------------------------------------------------------------------------------- 1 | === NXP DPAA driver 2 | 3 | Contact: Jakub Klama 4 | 5 | The Conclusive Engineering team is working on support for the NXP Data Path Acceleration Architecture (link:https://www.nxp.com/files-static/training_pdf/VFTF09_AN129.pdf[DPAA]) present in the NXP QorIQ Layerscape ARMv8 SoCs as well as PowerPC-based QorIQ SoCs. 6 | 7 | This work is focused on providing a clean-room, native implementation of DPAA driver and all of its associated components such as BMan, QMan, FMan and mEMAC for ARM targets such as LS1046A. 8 | 9 | First functional version of the driver with support for the 1Gbps and 10Gbps MACs should be completed in the 2021 Q3 timeframe. 10 | -------------------------------------------------------------------------------- /2021q2/drm-kmod.adoc: -------------------------------------------------------------------------------- 1 | === Linux 5.7 Graphics Driver Update 2 | 3 | Links: + 4 | link:https://github.com/neelchauhan/drm-kmod/tree/5.7-wip[WIP GitHub Repository] URL: link:https://github.com/neelchauhan/drm-kmod/tree/5.7-wip[https://github.com/neelchauhan/drm-kmod/tree/5.7-wip] 5 | 6 | Contact: Neel Chauhan + 7 | Contact: Hans Petter Selasky + 8 | Contact: Emmanuel Vadot + 9 | Contact: Mark Linimon 10 | 11 | We are attempting to update the drm-kmod graphics drivers to the Linux 5.7 code, based on the existing drm-kmod 5.5-wip branch. 12 | 13 | Right now, the current version of drm-kmod do not support newer GPU such as Intel's Tiger Lake/Iris Xe, used on laptops such as the 2020 HP Spectre x360. This prevents us from supporting accelerated graphics on newer hardware containing Intel or AMD GPUs. 14 | 15 | Some tasks have already been completed, including: 16 | 17 | * amdgpu bring-up 18 | * i915kms console bring-up 19 | 20 | Some tasks need to be completed, including: 21 | 22 | * i915kms Xorg bring-up 23 | * amdgpu VA-API bring-up 24 | * radeonkms bring-up 25 | 26 | We welcome help for the incomplete tasks, especially from users wanting to use newer hardware (or support FreeBSD-as-a-desktop in general). 27 | -------------------------------------------------------------------------------- /2021q2/emacs.adoc: -------------------------------------------------------------------------------- 1 | === Emacs Ports 2 | 3 | Links: + 4 | link:https://bugs.freebsd.org255706[PR255706] URL: link:https://bugs.freebsd.org255706[https://bugs.freebsd.org255706] + 5 | link:https://cgit.freebsd.org/ports/commit/?id=bb995aaf6e25e33b028fa4b32321864b48f49055[commit bb995aaf6e25e33b028fa4b32321864b48f49055] URL: link:https://cgit.freebsd.org/ports/commit/?id=bb995aaf6e25e33b028fa4b32321864b48f49055[https://cgit.freebsd.org/ports/commit/?id=bb995aaf6e25e33b028fa4b32321864b48f49055] 6 | 7 | Contact: Emacs Ports Team 8 | 9 | The Emacs development port, editors/emacs-devel, continues to be updated twice per month to synchronize with the HEAD of upstream's master branch. 10 | A noteworthy change from the first June 2021 update was the addition of a NATIVECOMP port option. 11 | NATIVECOMP adds support for compiling Emacs lisp to native code using libgccjit, which was first enabled in lang/gcc11-devel and is now in lang/gcc11. 12 | 13 | For more information about native compilation of Emacs lisp, see link:https://www.emacswiki.org/emacs/GccEmacs[Gcc Emacs Wiki]. 14 | -------------------------------------------------------------------------------- /2021q2/gcc.adoc: -------------------------------------------------------------------------------- 1 | === GCC in the Ports Tree (lang/gcc*) 2 | 3 | Links: + 4 | link:https://gcc.gnu.org[GCC Project] URL: link:https://gcc.gnu.org[https://gcc.gnu.org] + 5 | link:https://gcc.gnu.org/gcc-10/[GCC 10 release series] URL: link:https://gcc.gnu.org/gcc-10/[https://gcc.gnu.org/gcc-10/] 6 | 7 | Contact: Gerald Pfeifer 8 | 9 | With the great help of linimon@ GCC 10 became the default version of GCC in the Ports Collection bringing many improvements and fixes. 10 | 11 | Looking one step ahead, GCC 11 is now available as a port and even for use as GCC_DEFAULT via Mk/bsd.default-versions.mk . 12 | 13 | Modern GCC ports like this now feature support for powerpcle, and most related changes also made it it upstream. 14 | 15 | On the infrastructure side, USE_GCC now allows for a build time-only dependency, e.g. USE_GCC=yes:build . 16 | 17 | And in case you are developing other ports, USE_GCC=any is a thing of the past and USE_GCC no longer tries to use the old 4.2-based system compiler (/usr/bin/gcc) even if present. 18 | 19 | Finally, after some two decades of maintaining FreeBSD's lang/gcc* ports, the time has come to hand over the baton and largely step back. 20 | Please reach out if you are want to help - we'd hate to simply drop maintainership and would be happy to collaborate and transition. 21 | -------------------------------------------------------------------------------- /2021q2/graphics.adoc: -------------------------------------------------------------------------------- 1 | === Graphics Driver Update from Linux 5.7 2 | 3 | Links: 4 | link:https://github.com/neelchauhan/drm-kmod/tree/5.7-wip[WIP GitHub Repository] URL: link:https://github.com/neelchauhan/drm-kmod/tree/5.7-wip[https://github.com/neelchauhan/drm-kmod/tree/5.7-wip] 5 | 6 | Contact: Neel Chauhan + 7 | Contact: Hans Petter Selasky + 8 | Contact: Emmanuel Vadot + 9 | Contact: Mark Linimon + 10 | 11 | We are attempting to update the drm-kmod graphics drivers to the Linux 5.7 code, based on the existing drm-kmod 5.5-wip branch. 12 | 13 | Right now, the current version of drm-kmod do not support newer GPU such as Intel's Tiger Lake/Iris Xe, used on laptops such as the 2020 HP Spectre x360. 14 | This prevents us from supporting accelerated graphics on newer hardware containing Intel or AMD GPUs. 15 | 16 | Some tasks have already been completed, including: 17 | 18 | * amdgpu bring-up 19 | * i915kms console bring-up 20 | 21 | Some tasks need to be completed, including: 22 | 23 | * i915kms Xorg bring-up (currently pagefaults on `remap_io_sg()` page address) 24 | * amdgpu VA-API bring-up 25 | * radeonkms bring-up 26 | 27 | We welcome help for the incomplete tasks, especially from users wanting to use newer hardware (or support FreeBSD-as-a-desktop in general). 28 | -------------------------------------------------------------------------------- /2021q2/multicast.adoc: -------------------------------------------------------------------------------- 1 | === Multicast routing rework 2 | 3 | Contact: Wojciech Macek 4 | 5 | The Semihalf team has been working on reworking the existing ip_mroute module. The previous implementation was over 20 years old and didn't use modern kernel features. 6 | 7 | A complete rework of locking mechanism was done to eliminate taking multiple locks for a single job. 8 | Some portions of code were modified to use lockless constructions, BW-meter API refactored to work in a single context and routing hot path was identified and made to work efficiently. 9 | All these fixes helped achieve over 5x speed boost in multicast routing. 10 | 11 | The newly introduced rework includes: 12 | 13 | * mroute: fix race condition during mrouter shutting down link:https://cgit.freebsd.org/src/commit/?id=65634ae748e7f6b7b9f11e8838c65060c3f31347[race condition] 14 | * mrouter: do not loopback packets unconditionally link:https://cgit.freebsd.org/src/commit/?id=0b103f72376b5ec7c9a9d574c976e42805ae88a4[loopback] 15 | * ip_mroute: refactor bw_meter API link:https://cgit.freebsd.org/src/commit/?id=741afc6233915ba33156c2221aa80d2dd2b76b9c[bw_meter] 16 | * ip_mroute: rework ip_mroute link:https://cgit.freebsd.org/src/commit/?id=d40cd26a86a79342d175296b74768dd7183fc02b[locking] 17 | 18 | Sponsor: Stormshield 19 | -------------------------------------------------------------------------------- /2021q2/pf_dummynet.adoc: -------------------------------------------------------------------------------- 1 | === Dummynet support for pf 2 | 3 | Links: + 4 | link:https://github.com/kprovost/freebsd-src/tree/netgate/dummynet[dummynet in-progress tree] URL: link:https://github.com/kprovost/freebsd-src/tree/netgate/dummynet[https://github.com/kprovost/freebsd-src/tree/netgate/dummynet] 5 | 6 | Contact: Kristof Provost 7 | 8 | The pf firewall currently relies on ALTQ for traffic shaping. ALTQ is not enabled in default kernel builds, and is not compatible with all network drivers (only drivers which implement if_start()). 9 | 10 | Work is in progress to add support for dummynet traffic shaping to pf. Dummynet is already used by ipfw for traffic shaping. 11 | 12 | As part of this work, automated tests are being added to dummynet, for both ipfw and pf. This requires extending dummynet to add vnet support, which was contributed by Tom Jones . 13 | 14 | While this work is incomplete feedback on architecture and functionality is welcomed. 15 | 16 | TODO: 17 | 18 | * Additional test cases 19 | * Debug failure of the IPv6 queue test case 20 | * Fix panic on vnet shutdown if there are still IPv6 packets queued. (These eventually get sent to ip6_input() with a now freed rcvif pointer. Badness ensues.) 21 | 22 | Sponsor: Rubicon Communications, LLC ("Netgate") 23 | -------------------------------------------------------------------------------- /2021q2/pf_ethernet.adoc: -------------------------------------------------------------------------------- 1 | === Ethernet support for pf 2 | 3 | Links: + 4 | link:https://github.com/kprovost/freebsd-src/tree/netgate/pf-link[pf-link in-progress tree] URL: link:https://github.com/kprovost/freebsd-src/tree/netgate/pf-link[https://github.com/kprovost/freebsd-src/tree/netgate/pf-link] 5 | 6 | Work is ongoing to add basic support for Ethernet filtering to pf. 7 | 8 | This will allow layer 2 addresses to be used to tag packets for subsequent filtering or shaping in the existing pf code. The layer 2 code is strictly stateless. 9 | 10 | The intended use case for this is to improve pf's capabilities in captive portal setups (i.e. allow/deny internet access based on client MAC addresses). 11 | 12 | TODO: 13 | 14 | * (optional) anchor support 15 | * move nvlist interface code into libpfctl 16 | * audit nvlist code for bugs (several bugs were found in the recent nvlist alternatives to existing ioctl calls) 17 | * (optional) VLAN ID filtering 18 | * (optional) MAC address table support 19 | 20 | While this work is incomplete feedback on architecture and functionality is welcomed. 21 | 22 | Sponsor: Rubicon Communications, LLC ("Netgate") 23 | -------------------------------------------------------------------------------- /2021q2/pf_syncookie.adoc: -------------------------------------------------------------------------------- 1 | === pf syncookie support 2 | 3 | Links: + 4 | link:https://github.com/kprovost/freebsd-src/tree/modirum/pf-syncookie-cleanup[pf syncookies in-progress tree] URL: link:https://github.com/kprovost/freebsd-src/tree/modirum/pf-syncookie-cleanup[https://github.com/kprovost/freebsd-src/tree/modirum/pf-syncookie-cleanup] 5 | 6 | Contact: Kristof Provost 7 | 8 | SYN cookies are a mechanism to resist SYN flood denial of service attacks. 9 | The FreeBSD network stack has supported this since 2001. 10 | However, this does not prevent such an attack from flooding the pf state table. 11 | 12 | OpenBSD ported this mechanism from FreeBSD into their pf in 2018. This code is now being ported to FreeBSD's pf. 13 | 14 | The work is still in progress, but the current version demonstrates the basic capability. Next steps include additional testing, extra automated test cases and implementing the adaptive mode. 15 | 16 | The adaptive mode requires extra care in FreeBSD's pf, above what was done in OpenBSD, because of different locking strategies. 17 | 18 | Sponsor: Modirum MDPay 19 | -------------------------------------------------------------------------------- /2021q2/polarfire-soc.adoc: -------------------------------------------------------------------------------- 1 | === Microchip PolarFire SoC support 2 | 3 | Contact: Jakub Klama + 4 | Contact: Wojciech Kloska 5 | 6 | The Conclusive Engineering team is working on support for the Microchip PolarFire FPGA SoC chip family. 7 | PolarFire SoC is based on five 64-bit hard RISC-V cores, out of which four are equipped with MMU and capable of running FreeBSD. 8 | The SoC also features an FPGA and various peripherals including Gigabit Ethernet, PCIe and multi-function 12.3Gbps SERDES transceivers. 9 | 10 | At the time of writing, the following tasks have been completed: 11 | 12 | * Initial platform bring-up with SMP support 13 | * Add support for creating "booti"-style images for RISC-V 14 | * Ethernet support 15 | 16 | Work in progress: 17 | 18 | * Clock and reset domain support 19 | * USB driver 20 | * PCI Express driver 21 | * I2C driver 22 | * SPI driver 23 | * GPIO driver 24 | * eNVM driver 25 | -------------------------------------------------------------------------------- /2021q2/switchtec.adoc: -------------------------------------------------------------------------------- 1 | === Microchip Switchtec support 2 | 3 | Contact: Jakub Klama + 4 | Contact: Paweł Eichler 5 | 6 | The Conclusive Engineering team is working on support for the Microchip Switchtec PCI Express storage switch family. 7 | 8 | Switchtec devices are PCI Express Gen3/Gen4/Gen5 packet switches which offer built-in NTB support for up to 48 NT partitions, extensive diagnostics and programmable firmware which can be used to implement additional functionality such as NVMe enclosure management. 9 | 10 | At the time of writing, following features are completed: 11 | 12 | * NTB support 13 | * Firmware management and diagnostics 14 | 15 | Work in progress: 16 | 17 | * Event logging 18 | * NVMe enclosure management 19 | 20 | This work in co-sponsored by AGILESTORAGE Europe GmbH. 21 | -------------------------------------------------------------------------------- /2021q2/weblate.adoc: -------------------------------------------------------------------------------- 1 | === FreeBSD Translations on Weblate 2 | 3 | Links: + 4 | link:https://wiki.freebsd.org/Doc/Translation/Weblate[Translate FreeBSD on Weblate] URL: link:https://wiki.freebsd.org/Doc/Translation/Weblate[https://wiki.freebsd.org/Doc/Translation/Weblate] + 5 | link:https://translate-dev.freebsd.org/[FreeBSD Weblate Instance] URL: link:https://translate-dev.freebsd.org/[https://translate-dev.freebsd.org/] 6 | 7 | Contact: Danilo G. Baio 8 | 9 | The Weblate project link:https://translate-dev.freebsd.org/projects/documentation/[Documentation (Books and Articles)] is open to the public. 10 | 11 | The Automatic Translation feature was executed in all languages, re-using translations from the former project (Docbook). 12 | 13 | There are still pending issues about the new translation process, and the status can be seen on link:https://wiki.freebsd.org/Doc/IdeaList#Translation[IdeaList#Translation]. 14 | 15 | Website translations weren't released through Weblate yet. So we decided to hold it until we have more details about the working group that will redesign the Website and the Documentation Portal, to avoid re-work. 16 | -------------------------------------------------------------------------------- /2021q2/www.adoc: -------------------------------------------------------------------------------- 1 | ==== FreeBSD Website Revamp - WebApps working group 2 | 3 | Contact: Sergio Carlavilla 4 | 5 | Working group in charge of creating the new FreeBSD Documentation Portal; and redesigning the FreeBSD main Website and its components. 6 | FreeBSD developers can follow and join the working group on the FreeBSD Slack channel #wg-www21. 7 | The work will be divided into four phases: 8 | 9 | . Redesign of the Documentation Portal 10 | + 11 | Create a new design, responsive and with global search. (_Work in progress_) 12 | 13 | . Redesign of the Manual Pages on Web 14 | + 15 | Scripts to generate the HTML pages using mandoc. (_Not started_) 16 | 17 | . Redesign of the Ports page on Web 18 | + 19 | Ports scripts to create an applications portal. (_Not started_) 20 | 21 | . Redesign of the FreeBSD main Website 22 | + 23 | New design, responsive and dark theme. (_Not started_) 24 | -------------------------------------------------------------------------------- /2021q3/gitlab.adoc: -------------------------------------------------------------------------------- 1 | === Gitlab 14.3 available 2 | 3 | Links: + 4 | link:https://about.gitlab.com/releases/2021/09/22/gitlab-14-3-released/[Gitlab 14.3 New Features] URL: link:https://about.gitlab.com/releases/2021/09/22/gitlab-14-3-released/[https://about.gitlab.com/releases/2021/09/22/gitlab-14-3-released/] 5 | 6 | Contact: Matthias Fechner 7 | 8 | GitLab is the DevOps Platform. 9 | Bring velocity with confidence, security without sacrifice, and visibility into DevOps success. 10 | 11 | Version 14.3 now available on FreeBSD. 12 | -------------------------------------------------------------------------------- /2021q3/intelnet.adoc: -------------------------------------------------------------------------------- 1 | === Intel Networking on FreeBSD 2 | 3 | Links: + 4 | link:https://github.com/DPDK/dpdk/tree/main/drivers/net[DPDK] URL: link:https://github.com/DPDK/dpdk/tree/main/drivers/net[https://github.com/DPDK/dpdk/tree/main/drivers/net] 5 | 6 | Contact: Intel 7 | Contact: Kevin Bowling 8 | 9 | lem(4)/em(4)/igb(4) and ix(4) were updated with various common code improvements 10 | obtained from DPDK. There have also been several bug fixes from the community: 11 | 12 | * link:https://cgit.freebsd.org/src/log/sys/dev/e1000?qt=range&q=015075f383489fcbedbe8aae7c1c64a3d55ca75e..450c3f8b3d259c7eb82488319aff45f1f6554aaf[lem(4)/em(4)/igb(4) changes] 13 | * link:https://cgit.freebsd.org/src/log/sys/dev/ixgbe?qt=range&q=0e5811a2a9a1b4a7e0c79b73e3b9b9d15d481577..15d077995bd2c56b7b1742ea2d4e9070ff7e9427[ix(4) changes] 14 | 15 | Intel has updated ixl(4) with various improvements: 16 | 17 | * link:https://cgit.freebsd.org/src/commit/sys/dev/ixl?id=abf774528d7e497460510b0026db85e30f054142[ixl(4): 18 | Fix 2.5 and 5G speeds reporting and update shared code] 19 | 20 | -------------------------------------------------------------------------------- /2021q3/linuxulator.adoc: -------------------------------------------------------------------------------- 1 | === Linux compatibility layer update 2 | 3 | Contact: Dmitry Chagin, + 4 | Contact: Edward Tomasz Napierala, 5 | 6 | The goal of this project is to improve FreeBSD's ability to execute unmodified Linux binaries. 7 | The current support status of specific Linux applications is being tracked on the link:https://wiki.freebsd.org/LinuxApps[Linux app status Wiki page]. 8 | 9 | The `vdso(7)` implementation was reworked. 10 | The `futex(2)` support was overhauled to make use of FreeBSD's native `umtx` mechanism. 11 | It now supports priority-inheritance futexes, in addition to fixing several bugs. 12 | 13 | The `rt_sigsuspend(2)` and `sigaltstack(2)` syscalls are now supported on ARM64. 14 | 15 | The `faccessat2(2)`, `clone3(2)` system calls are now implemented. 16 | The `CLONE_CLEAR_RESETHAND` option is now supported. 17 | 18 | The `prctl(2)` syscall now supports `PR_SET_NO_NEW_PRIVS`. 19 | 20 | The `ptrace(2)` syscall now supports `PTRACE_GET_SYSCALL_INFO`, which is a prerequisite to support newer `strace(1)` versions. 21 | 22 | There is ongoing work to make Linuxulator on arm64 on par with the amd64 one; right now it's good enough for development work. 23 | 24 | Sponsor: EPSRC (Edward's work) 25 | -------------------------------------------------------------------------------- /2021q3/mixer.adoc: -------------------------------------------------------------------------------- 1 | === Sound mixer improvements 2 | 3 | Links: + 4 | link:https://wiki.freebsd.org/SummerOfCode2021Projects/SoundMixerImprovements[GSoC 2021 project article] URL: link:https://wiki.freebsd.org/SummerOfCode2021Projects/SoundMixerImprovements[https://wiki.freebsd.org/SummerOfCode2021Projects/SoundMixerImprovements] 5 | 6 | Contact: Christos Margiolis + 7 | Contact: Hans Petter Selasky 8 | 9 | This project is an attempt to improve the capabilities of the OSS sound mixer 10 | on FreeBSD. This means a new mixer(3) library, a complete rewrite of mixer(8), 11 | and updates to sound(4). 12 | 13 | Development started during Google Summer of Code 2021, but will likely continue 14 | independently. 15 | 16 | Applied changes: 17 | 18 | * Implement OSS mixer (un)muting ioctls in sound(4) 19 | (link:https://cgit.freebsd.org/src/commit/?id=0f8dafb45859569aa36b63ca2bb4a1c35c970d1e[commit 0f8dafb45859]). 20 | * Implement playback/recording mode sysctl 21 | (link:https://cgit.freebsd.org/src/commit/?id=ed2196e5df0c8b5b81563d2fffdcb32bb7ebe966[commit ed2196e5df0c]). 22 | * Implement mixer(3) and new version of mixer(8) 23 | (link:https://cgit.freebsd.org/src/commit/?id=903873ce15600fc02a0ea42cbf888cff232b411d[commit 903873ce1560]). 24 | 25 | Patches, comments and discussion are all welcome. 26 | -------------------------------------------------------------------------------- /2021q3/msdosfs_rename.adoc: -------------------------------------------------------------------------------- 1 | === Fixes for msdosfs_rename VOP 2 | 3 | Contact: Konstantin Belousov + 4 | Contact: Peter Holm 5 | 6 | Our msdosfs(5) implementation is old code and has a relatively 7 | large legacy cost. In particular, even though it got fine-grained 8 | locking and miscellaneous bugfixes over time, sometimes a serious issue 9 | is found in it. 10 | 11 | Recently trasz@ found that msdosfs rename can be easily deadlocked. 12 | Further examination of rename code revealed a lot of issues with locking, 13 | potential use after free, and filesystem structure corruption. 14 | 15 | As part of the update, locking in the msdosfs rename code was reworked. 16 | We need to lock up to four vnodes, and check one path to ensure that 17 | rename does not create circular parent relations between directories. 18 | For that, the locking procedure was copied from UFS rename, where all 19 | vnodes except the first are locked in try-mode. Lockless relockup was 20 | added to msdosfs and the directory path checker was changed to non-blocking 21 | mode. 22 | 23 | During this work, all known issues were fixed and msdosfs passes 24 | the enhanced stress2 suite of tests. 25 | 26 | Sponsor: The FreeBSD Foundation (kib's contributions) 27 | -------------------------------------------------------------------------------- /2021q3/rfc1191.adoc: -------------------------------------------------------------------------------- 1 | === RFC1191 support in IPSEC tunnels 2 | 3 | Contact: Wojciech Macek 4 | 5 | The Semihalf team has been working on providing support for RFC1191 in IPSEC tunnels. 6 | This allows the PMTUD algorithm to dynamically discover the maximum path MTU the tunnel 7 | can handle and update tunnel parameters accordingly. 8 | As a result, a better performance can be observed as there is no need for packet fragmentation. 9 | 10 | The newly introduced rework includes: 11 | 12 | * NEEDFRAG support for IPSEC link:https://cgit.freebsd.org/src/commit/?id=d9d59bb1af142e7575032dd6c51fc64580de84df[commit d9d59bb1af1] 13 | * PMTUD for IPv4 IPSEC over IPv6 link link:https://cgit.freebsd.org/src/commit/?id=4f3376951d7024d1c3446af2260cef9e4d3404a6[commit 4f3376951d70] 14 | * Security fix as per RFC1191 specs link:https://cgit.freebsd.org/src/commit/?id=b4220bf387e62f59d73308f122f5eea887a59d58[commit b4220bf387e6] 15 | * PMTUD support for IPv6 tunnel link:https://cgit.freebsd.org/src/commit/?id=9dfc8606eb80a49a0b071ff17dbbfa307d7248be[commit 9dfc8606eb80] 16 | 17 | Sponsor: Stormshield 18 | -------------------------------------------------------------------------------- /2021q3/rtw88.adoc: -------------------------------------------------------------------------------- 1 | === Realtek rtw88 support 2 | 3 | Links: + 4 | link:https://wiki.freebsd.org/WiFi/Rtw88[Rtw88 status FreeBSD wiki page] URL: link:https://wiki.freebsd.org/WiFi/Rtw88[https://wiki.freebsd.org/WiFi/Rtw88] 5 | 6 | Contact: Bjoern A. Zeeb 7 | 8 | This project aims to bring in support for Realtek's rtw88 chips. 9 | 10 | With the growing LinuxKPI compatibility code an initial port of the Realtek rtw88 driver was done. 11 | This gives us support for a second driver after Intel and helps to validate and grow the LinuxKPI code base. 12 | Changes and overall time needed to get the driver compiling were very little. 13 | At the moment we are seeing DMA issues which prevent most people from loading firmware or using the driver later on. 14 | 15 | Thanks to everyone who was brave enough to give this initial code drop a try. 16 | 17 | While this is a leasure time project we would love to better support Realtek wireless devices and will keep working on this. 18 | 19 | For the latest state of the development or code, please follow the referenced wiki page or the freebsd-wireless mailing list. 20 | -------------------------------------------------------------------------------- /2021q3/valgrind.adoc: -------------------------------------------------------------------------------- 1 | === Valgrind - Official Support for FreeBSD has Landed 2 | 3 | Links + 4 | link:https://www.valgrind.org/[Valgrind Home Page] URL: link:https://www.valgrind.org/[https://www.valgrind.org/] + 5 | link:https://www.valgrind.org/docs/manual/dist.news.html[Valgrind News] URL: link:https://www.valgrind.org/docs/manual/dist.news.html[https://www.valgrind.org/docs/manual/dist.news.html] + 6 | 7 | Contact: Paul Floyd 8 | 9 | Valgrind is an instrumentation framework for building dynamic analysis 10 | tools. There are Valgrind tools that can automatically detect many memory 11 | management and threading bugs, and profile your programs in detail. You can also 12 | use Valgrind to build new tools. 13 | 14 | With the release of version 3.18.0 of Valgrind, official FreeBSD support has 15 | landed upstream. The two supported architectures are amd64 and i386 (x86). 16 | 17 | The next step will be to update the FreeBSD port. This will involve switching 18 | from code that was maintained out-of-tree for over 15 years to using the 19 | official upstream tarball. 20 | 21 | As Valgrind is closely tied to operating system details, obtaining official 22 | FreeBSD support was the result of significant effort from dozens of developers. 23 | -------------------------------------------------------------------------------- /2021q3/wine.adoc: -------------------------------------------------------------------------------- 1 | === Wine on FreeBSD 2 | 3 | Links 4 | link:https://www.winehq.org[Wine home page] 5 | 6 | Contact: Gerald Pfeifer 7 | Contact: Damjan Jovanovic 8 | 9 | Wine allows running Windows programs on FreeBSD. 10 | 11 | This quarter we focused on the wine-devel port that tracks mainline development, followed half a dozen of version updates, simplified the port, removed three options (SDL, VKD3D, VULKAN) which are unconditionally active now, and fixed a number of portability issues. 12 | 13 | These changes will make their way into the primary Wine port over the coming weeks. 14 | 15 | After working on our Wine ports for more than 21 years, maintaining for more than 19 years, time has come to hand over the baton. 16 | 17 | Luckily Damjan has stepped up and is going to look after wine-devel and associated ports - thanks! Help with the following is still very welcome: 18 | 19 | * link:https://bugs.winehq.org/show_bug.cgi?id=50257[WineHQ bug 50257] 20 | * https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=257533[FreeBSD Bugzilla 257533] 21 | * Maintain daily (or at least regular) test builds of upstream Wine. This quarter this triggered two dozen fixes in support of FreeBSD upstream, though usually it's quite less effort. 22 | -------------------------------------------------------------------------------- /2021q3/www.adoc: -------------------------------------------------------------------------------- 1 | === FreeBSD Website Revamp - WebApps working group 2 | 3 | Contact: Sergio Carlavilla 4 | 5 | Working group in charge of creating the new FreeBSD Documentation Portal and redesigning the FreeBSD main website and its components. 6 | FreeBSD developers can follow and join the working group on the FreeBSD Slack channel #wg-www21. 7 | The work will be divided into four phases: 8 | 9 | . Redesign of the Documentation Portal 10 | + 11 | Create a new design, responsive and with global search. (_Work in progress_, _almost complete_) 12 | 13 | . Redesign of the Manual Pages on web 14 | + 15 | Scripts to generate the HTML pages using mandoc. (_Work in progress_) 16 | 17 | . Redesign of the Ports page on web 18 | + 19 | Ports scripts to create an applications portal. (_Not started_) 20 | 21 | . Redesign of the FreeBSD main website 22 | + 23 | New design, responsive and dark theme. (_Not started_) 24 | -------------------------------------------------------------------------------- /2021q3/ztop.adoc: -------------------------------------------------------------------------------- 1 | === Ztop 2 | 3 | Links: + 4 | link:https://github.com/asomers/ztop[Repository] + 5 | link:https://www.freshports.org/sysutils/ztop[Port] + 6 | 7 | Contact: Alan Somers + 8 | 9 | `ztop` is a new utility that displays ZFS datasets' I/O in real time, like 10 | `top`, but for ZFS. Unlike the existing `zpool iostat`, which only displays 11 | traffic at the level of a pool, `ztop` displays it at the level of individual 12 | datasets. 13 | 14 | Previously, there was no tool that could display this information. The 15 | link:https://github.com/prometheus/node_exporter/pull/1632[Prometheus Node 16 | Exporter] can export it into Prometheus, from which it can be viewed 17 | after the fact with various other tools, but that requires a large stack of 18 | software, and isn't real-time. 19 | 20 | I started `ztop` this quarter, and it is now fully functional. However, it has 21 | revealed a performance problem within the kernel. In the presence of more than 22 | a few thousand datasets, the sysctl interface is too slow and `ztop` becomes 23 | sluggish. Future work, if I have the time, will address that problem. 24 | 25 | Sponsor: Axcient 26 | -------------------------------------------------------------------------------- /2021q4/aslr.adoc: -------------------------------------------------------------------------------- 1 | === Enable ASLR by default for 64-bit executables 2 | 3 | Contact: Dawid Gorecki + 4 | Contact: Marcin Wojtas 5 | 6 | Address Space Layout Randomization (ASLR) is an exploit mitigation 7 | technique implemented in the majority of modern operating systems. 8 | It involves randomly positioning the base address of an executable 9 | and the position of libraries, heap, and stack, in a process's address 10 | space. Although over the years ASLR proved to not guarantee full OS 11 | security on its own, this mechanism can make exploitation more difficult. 12 | 13 | The Semihalf team made an effort to switch on the address map 14 | randomization for PIE (Position Independent Executables) & non-PIE 64-bit binaries. 15 | Once the link:https://cgit.freebsd.org/src/commit/?id=b014e0f15bc73d80e[patch] was merged to HEAD, 16 | the ASLR feature became enabled for all 64-bit architectures. 17 | 18 | Additionally, the mentioned change disabled 19 | link:https://www.freebsd.org/cgi/man.cgi?query=sbrk&sektion=2[SBRK], 20 | in order to allow utilization of the bss grow region for mappings. 21 | It has no effect without ASLR, so it was applied to all architectures. 22 | 23 | TODO: 24 | 25 | * Improve stackgap feature implementation. 26 | 27 | * MFC to stable/13 branch. 28 | 29 | Sponsor: Stormshield 30 | -------------------------------------------------------------------------------- /2021q4/ena.adoc: -------------------------------------------------------------------------------- 1 | === ENA FreeBSD Driver Update 2 | 3 | Links: + 4 | link:https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README[ENA README] URL: link:https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README[https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README] 5 | 6 | Contact: Michal Krawczyk + 7 | Contact: Dawid Gorecki + 8 | Contact: Marcin Wojtas 9 | 10 | ENA (Elastic Network Adapter) is the smart NIC available in the virtualized environment of Amazon Web Services (AWS). 11 | The ENA driver supports multiple transmit and receive queues and can handle up to 100 Gb/s of network traffic, depending on the instance type on which it is used. 12 | 13 | Completed since the last update: 14 | 15 | * Add IPv6 layer 4 checksum offload support to the driver 16 | * Add NUMA awareness to the driver when the RSS kernel option is enabled 17 | * Rework validation of the Tx request ID 18 | * Change lifetime of the driver's timer service 19 | * Avoid reset triggering when the device is unresponsive 20 | 21 | Work in progress: 22 | 23 | * Prototype the driver port to the iflib framework 24 | * Tests of the incoming ENA driver release (v2.5.0) 25 | 26 | Sponsor: Amazon.com Inc 27 | -------------------------------------------------------------------------------- /2021q4/ocf-wg.adoc: -------------------------------------------------------------------------------- 1 | === Kernel Crypto changes to support WireGuard 2 | 3 | Contact: John Baldwin 4 | 5 | During the past few months, I merged several changes to the kernel to better 6 | support the WireGuard driver. These include extensions to the 'struct 7 | enc_xform' interface to better support AEAD ciphers, changes to 'struct 8 | enc_xform' to support multi-block operations for improved performance, and the 9 | addition of the XChaCha20-Poly1305 AEAD cipher suite to OCF. Additionally, the 10 | kernel now includes a new "direct" API for ChaCha20-Poly1305 operations on 11 | small, flat buffers. A change in review adds an API to support curve25519 12 | operations. With these changes, the WireGuard driver is mostly able to use 13 | crypto APIs from the kernel rather than its internal implementations. 14 | 15 | In parallel I have been updating the WireGuard driver to use the new 16 | APIs verifying interoperability with the existing driver. One of the 17 | next tasks is to refine these changes (along with some minor bug 18 | fixes) as candidates for upstreaming into the WireGuard driver. 19 | 20 | Sponsor: The FreeBSD Foundation -------------------------------------------------------------------------------- /2021q4/openssh.adoc: -------------------------------------------------------------------------------- 1 | === Base System OpenSSH Update 2 | 3 | Links: + 4 | link:https://www.openssh.com/[OpenSSH] URL: link:https://www.openssh.com/[https://www.openssh.com/] + 5 | link:https://lists.freebsd.org/pipermail/freebsd-security/2021-September/010473.html[Announcement to freebsd-security@] URL: link:https://lists.freebsd.org/pipermail/freebsd-security/2021-September/010473.html[https://lists.freebsd.org/pipermail/freebsd-security/2021-September/010473.html] 6 | 7 | Contact: Ed Maste 8 | 9 | OpenSSH, a suite of remote login and file transfer tools, was updated from 10 | version 8.7p1 to 8.8p1 in the FreeBSD base system. 11 | 12 | *NOTE*: 13 | OpenSSH 8.8p1 disables the ssh-rsa signature scheme by default. 14 | For more information please see the 15 | link:https://lists.freebsd.org/pipermail/freebsd-security/2021-September/010473.html[Important 16 | note for future FreeBSD base system OpenSSH update] mailing list post. 17 | 18 | OpenSSH supports 19 | link:https://en.wikipedia.org/wiki/FIDO2_Project[FIDO]/link:https://en.wikipedia.org/wiki/Universal_2nd_Factor[U2F] 20 | devices, and support is now enabled in the base system. 21 | 22 | Next steps include integrating U2F key devd rules into the base system, 23 | and merging the updated OpenSSH and FIDO/U2F support to stable branches. 24 | 25 | Sponsor: The FreeBSD Foundation 26 | -------------------------------------------------------------------------------- /2021q4/www.adoc: -------------------------------------------------------------------------------- 1 | === FreeBSD Website Revamp - WebApps working group 2 | 3 | Contact: Sergio Carlavilla 4 | 5 | Working group in charge of creating the new FreeBSD Documentation Portal and redesigning the FreeBSD main website and its components. 6 | FreeBSD developers can follow and join the working group on the FreeBSD Slack channel #wg-www21. 7 | The work will be divided into four phases: 8 | 9 | . Redesign of the Documentation Portal 10 | + 11 | Create a new design, responsive and with global search. (_Complete_) 12 | + 13 | Activate an edit link in the Documentation (books/articles) pointing to GitHub and encouraging GitHub pull requests. (_Complete_) 14 | 15 | . Redesign of the Manual Pages on web 16 | + 17 | Scripts to generate the HTML pages using mandoc. (_Work in progress_) 18 | 19 | . Redesign of the Ports page on web 20 | + 21 | Ports scripts to create an applications portal. (_Work in progress_) 22 | 23 | . Redesign of the FreeBSD main website 24 | + 25 | New design, responsive and dark theme. (_Not started_) 26 | -------------------------------------------------------------------------------- /2022q1/ena.adoc: -------------------------------------------------------------------------------- 1 | === ENA FreeBSD Driver Update 2 | 3 | Links: + 4 | link:https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README[ENA README] URL: link:https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README[https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README] 5 | 6 | Contact: Michal Krawczyk + 7 | Contact: Dawid Gorecki + 8 | Contact: Marcin Wojtas 9 | 10 | ENA (Elastic Network Adapter) is the smart NIC available in the virtualized environment of Amazon Web Services (AWS). 11 | The ENA driver supports multiple transmit and receive queues and can handle up to 100 Gb/s of network traffic, depending on the instance type on which it is used. 12 | 13 | Completed since the last update: 14 | 15 | * Add IPv6 layer 4 checksum offload support to the driver 16 | * Add NUMA awareness to the driver when the RSS kernel option is enabled 17 | * Rework validation of the Tx request ID 18 | * Change lifetime of the driver's timer service 19 | * Avoid reset triggering when the device is unresponsive 20 | 21 | Work in progress: 22 | 23 | * Prototype the driver port to the iflib framework 24 | * Tests of the incoming ENA driver release (v2.5.0) 25 | 26 | Sponsor: Amazon.com Inc 27 | -------------------------------------------------------------------------------- /2022q1/intro.adoc: -------------------------------------------------------------------------------- 1 | As things are yet again settling into a new normal, it's once again time for a status report for the FreeBSD Project. 2 | 3 | You may have noticed that this report is also a little on the late side, and it's with regret that it's taken this long to get to it - however, thanks to a few kind souls who've stepped up to the plate, in addition to the folks on the team who do things quietly in the background, future reports should hopefully be more on time. 4 | 5 | So let's get some introductions in order, as yours truly is delighted to accept a hand from Pau Amma who already has been helping with reviews for a while, Lorenzo Salvadore who is stepping up to get some tooling in place to make it less of a chore to make the reports, as well as Sergio Carlavilla who is stepping up to help with all the work that can't be easily automated. 6 | 7 | This report covers a very diverse set of topics including but not limited to accessibility, system boot speed-up, an implementation of GEOM union, changes to the WiFi situation, and many other things. 8 | 9 | We hope you'll enjoy reading it! 10 | 11 | Daniel Ebdrup Jensen, on behalf of the status report team. 12 | -------------------------------------------------------------------------------- /2022q1/ocf-wg.adoc: -------------------------------------------------------------------------------- 1 | === Kernel Crypto changes to support WireGuard 2 | 3 | Contact: John Baldwin 4 | 5 | During the last quarter, I continued my work to improve the FreeBSD WireGuard driver. 6 | On the FreeBSD side, I added support for the XChaCha20-Poly1305 AEAD cipher. 7 | I also added a dedicated API to support [X]ChaCha20-Poly1035 on small, flat buffers. 8 | Finally, I added an API wrapper for the curve25519 implementation from libsodium. 9 | 10 | For the WireGuard driver, I wrote a series of patches which updates the driver to use crypto APIs such as those mentioned above in place of internal cipher implementations. 11 | The series also includes a fix to avoid scheduling excessive crypto tasks as well as a few other small fixes. 12 | This series is pending review. 13 | 14 | Sponsor: The FreeBSD Foundation 15 | -------------------------------------------------------------------------------- /2022q1/portconfig.adoc: -------------------------------------------------------------------------------- 1 | === PortConfig 2 | 3 | Links: + 4 | link:https://gitlab.com/alfix/portconfig/[Repository portconfig] URL: link:https://gitlab.com/alfix/portconfig/[https://gitlab.com/alfix/portconfig/] 5 | 6 | Contact: Alfonso Sabato Siciliano (upstream) + 7 | Contact: Baptiste Daroussin (port) 8 | 9 | FreeBSD provides the Ports Collection to give users and administrators a simple way to install applications. 10 | It is possible to configure a port before the building and installation. 11 | PortConfig is an utility for setting the port options via a Text User Interface. 12 | 13 | As each terminal has different properties PortConfig can be customized via environment variables to set up the User Interface, for example: menu size, theme, borders, and so on; each feature is documented inside the manual. 14 | Further, if a port has a specific 'pkg-help' file, PortConfig will show a Help button to open a "popup" with help information. 15 | 16 | FreeBSD provides thousands of ports therefore it is not feasible to test PortConfig for each use; please report any problem. 17 | 18 | Alfonso would like to thank Baptiste Daroussin for the port, suggestions, help, and testing for this utility and its library. 19 | -------------------------------------------------------------------------------- /2022q2/core.adoc: -------------------------------------------------------------------------------- 1 | === FreeBSD Core Team 2 | 3 | Contact: FreeBSD Core Team 4 | 5 | The FreeBSD Core Team is the governing body of FreeBSD. 6 | 7 | The twelfth FreeBSD Core Team was elected by active developers. 8 | The core.12 members are: 9 | 10 | * Baptiste Daroussin (bapt, incumbent) 11 | * Benedict Reuschling (bcr) 12 | * Ed Maste (emaste, incumbent) 13 | * Greg Lehey (grog) 14 | * John Baldwin (jhb) 15 | * Li-Wen Hsu (lwhsu) 16 | * Emmanuel Vadot (manu) 17 | * Tobias C. Berner (tcberner) 18 | * Mateusz Piotrowski (0mp) 19 | 20 | On June 10th the outgoing core.11 and incoming core.12 teams held a handover meeting, 21 | and the new Core Team was link:https://lists.freebsd.org/archives/freebsd-announce/2022-June/000034.html[announced on Jun 18]. 22 | 23 | The current Core Team secretary, Muhammad Moinur Rahman (bofh), will step down 24 | after the appointment of a new Core Team secretary and handover tasks completes. 25 | 26 | In this quarter, src commit bits of Kornel Dulęba (kd) and Dmitry Salychev (dsl) have been approved. 27 | -------------------------------------------------------------------------------- /2022q2/golang_riscv64.adoc: -------------------------------------------------------------------------------- 1 | === go on FreeBSD riscv64 2 | 3 | Links: + 4 | link:https://github.com/golang/go[golang Home Page] URL: link:https://github.com/golang/go[https://github.com/golang/go] + 5 | link:https://github.com/MikaelUrankar/go/tree/freebsd_riscv64[FreeBSD riscv64 github repo] URL: link:https://github.com/MikaelUrankar/go/tree/freebsd_riscv64[https://github.com/MikaelUrankar/go/tree/freebsd_riscv64] + 6 | link:https://github.com/golang/go/issues/53466[FreeBSD riscv64 golang issue] URL: link:https://github.com/golang/go/issues/53466[https://github.com/golang/go/issues/53466] 7 | 8 | Contact: Mikaël Urankar + 9 | Contact: Dmitri Goutnik 10 | 11 | Work has been done to port go on FreeBSD riscv64 which builds and passes all run.bash tests, including cgo (tested under QEMU and on Unmatched). 12 | A pull request is created upstream and the proposal has been added to the active column of the proposals project and will be reviewed at the weekly proposal review meetings. 13 | -------------------------------------------------------------------------------- /2022q2/if_ovpn.adoc: -------------------------------------------------------------------------------- 1 | === OpenVPN DCO 2 | 3 | Links: + 4 | link:https://reviews.freebsd.org/D34340[D34340] URL: link:https://reviews.freebsd.org/D34340[D34340] + 5 | link:https://community.openvpn.net/openvpn/wiki/DataChannelOffload[OpenVPN wiki] URL: https://community.openvpn.net/openvpn/wiki/DataChannelOffload[OpenVPN wiki] 6 | 7 | Contact: Kristof Provost 8 | 9 | OpenVPN DCO (or Data Channel Offload) moves OpenVPN data packet processing into the kernel. 10 | 11 | Traditionally OpenVPN uses a tun(4) interface to transmit and receive packets. 12 | In this setup received packets are received by the kernel, passed to the OpenVPN application for decryption, then passed back into the kernel for network stack processing. 13 | This requires several transitions between kernel- and userspace, and naturally imposes a performance cost. 14 | 15 | The new if_ovpn OpenVPN DCO offload driver performs the encryption/decryption entirely within the kernel, improving performance. 16 | 17 | Initial performance testing shows throughput improved from around 660Mbit/s to around 2Gbit/s. 18 | 19 | The userspace OpenVPN code also requires modification to use the new if_ovpn offload driver. 20 | This is expected to be part of a future 2.6.0 OpenVPN release. 21 | 22 | Sponsor: Rubicon Communications, LLC ("Netgate") 23 | -------------------------------------------------------------------------------- /2022q2/intro.adoc: -------------------------------------------------------------------------------- 1 | Here is the second quarterly report of 2022, with 26 reports included. 2 | 3 | This quarter the quarterly team managed to publish the report much faster and, hopefully, with much fewer mistakes. 4 | If however you notice some errors, please report them so that we can correct them and also add some automatic checks in our tools to prevent them in the future and stay as efficient as possible in the publication process. 5 | 6 | We would also like to remind you that if for any reason you need more time to submit a quarterly report, the team will wait for you, but please warn us so that we are aware that some report is still missing. 7 | 8 | Many thanks to all those that have chosen to share their work with the FreeBSD community through the quarterly reports. 9 | 10 | Lorenzo Salvadore, on behalf of the status report team. 11 | -------------------------------------------------------------------------------- /2022q2/linuxulator.adoc: -------------------------------------------------------------------------------- 1 | === Linux compatibility layer update 2 | 3 | Contact: Dmitry Chagin + 4 | Contact: Edward Tomasz Napierala 5 | 6 | The goal of this project is to improve FreeBSD's ability to execute unmodified Linux binaries. 7 | Current support status of specific Linux applications is being tracked at the link:https://wiki.freebsd.org/LinuxApps[Linux app status Wiki page]. 8 | 9 | Implementation of the Y2k38 Linux project is mostly finished; all '*_time64()' system calls are committed. 10 | 11 | The state of the arm64 Linux emulation layer was brought to the state of the amd64 Linux emulation layer: 12 | i.e., implemented the vDSO, machine dependent futexes, signals delivery. 13 | 14 | The thread affinity system calls were modified to implement Linux semantics. 15 | 16 | In total, over 50 bugs were fixed; glibc-2.35 tests suite reports less than 80 failed tests. 17 | 18 | All changes in the Linux emulation layer are merged to the stable/13 branch. 19 | 20 | Initial support for fancy Linux system call tracing has been added to libsysdecode and kdump. 21 | There is ongoing work to make tracing more syscalls work. 22 | 23 | Sponsor: EPSRC (Edward’s work) 24 | -------------------------------------------------------------------------------- /2022q2/openssh.adoc: -------------------------------------------------------------------------------- 1 | === Base System OpenSSH Update 2 | 3 | Links: + 4 | link:https://www.openssh.com/[OpenSSH] URL: link:https://www.openssh.com/[https://www.openssh.com/] + 5 | link:https://www.openssh.com/txt/release-8.9[OpenSSH 8.9 release notes] URL:https://www.openssh.com/txt/release-8.9[https://www.openssh.com/txt/release-8.9] + 6 | link:https://www.openssh.com/txt/release-9.0[OpenSSH 9.0 release notes] URL:https://www.openssh.com/txt/release-9.0[https://www.openssh.com/txt/release-9.0] 7 | 8 | Contact: Ed Maste 9 | 10 | OpenSSH, a suite of remote login and file transfer tools, was updated from version 8.8p1 to 9.0p1 in the FreeBSD base system. 11 | 12 | It has not yet been merged to the stable/13 and stable/12 branches. 13 | I anticipate doing so in July. 14 | 15 | *NOTE*: 16 | OpenSSH 9.0p1 switches scp(1) from using the legacy scp/rcp protocol to using the SFTP protocol by default. 17 | The `-O` flag is available to use the previous protocol instead. 18 | 19 | Sponsor: The FreeBSD Foundation 20 | -------------------------------------------------------------------------------- /2022q2/pantheon.adoc: -------------------------------------------------------------------------------- 1 | === Pantheon desktop on FreeBSD 2 | 3 | Links: + 4 | link:https://elementary.io/[elementary OS] URL: link:https://elementary.io/[https://elementary.io] + 5 | link:https://codeberg.org/olivierd/freebsd-ports-elementary[Development repository] URL: link:https://codeberg.org/olivierd/freebsd-ports-elementary[https://codeberg.org/olivierd/freebsd-ports-elementary] + 6 | 7 | Contact: Olivier Duchateau 8 | 9 | The Pantheon desktop environment is designed for elementary OS. 10 | It builds on GNOME technologies (such as Mutter, GNOME Shell, GTK 3 and 4) and it is written in Vala. 11 | 12 | The goal is to have a new desktop for users. 13 | Some features are not well supported, but we can have full session. 14 | 15 | The repository contains Mk/Uses framework `elementary.mk`, official applications, and curated ports which depend of `x11-toolkits/granite` (total of 56 new ports). 16 | 17 | I have submitted several patches, especially: 18 | 19 | * `x11-toolkits/granite7` 20 | * `devel/libgee` update to 0.20.5 link:https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262893[bug #262893] 21 | * `sysutils/bamf` update to 0.5.6 link:https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=264203[bug #264203] 22 | 23 | ==== Open tasks 24 | 25 | * Add support of user settings (it is very Ubuntu-centric) 26 | * Finish porting wingpanel-indicator-power (power management) 27 | -------------------------------------------------------------------------------- /2022q2/pf.adoc: -------------------------------------------------------------------------------- 1 | === pf status update 2 | 3 | Contact: Kristof Provost + 4 | Contact: Reid Linnemann 5 | 6 | ==== Ethernet 7 | 8 | pf recently grew support for filtering on Ethernet layer. 9 | See the 2021q2 pf_ethernet report. 10 | 11 | Since then the Ethernet layer filtering has been extended with: 12 | 13 | * anchor support 14 | * ability to look into the layer 3 header, for matching with source/destination IP(v4/v6) addresses 15 | * table support for IP address matching 16 | * direct dispatch to dummynet 17 | * pass Ethernet layer packets directly to dummynet, rather than tagging the packets and relying on layer 3 to handle dummynet 18 | 19 | ==== Dummynet 20 | 21 | pf recently started being able to use dummynet for packet scheduling. 22 | This support has been extended and improved, and is now believed to be ready for production. 23 | 24 | One notable fix is that reply-to/route-to'd traffic is now subject to dummynet scheduling as well. 25 | 26 | ==== Last match timestamp 27 | 28 | pf now tracks when a rule was last matched. 29 | Similar to ipfw rule timestamps, these timestamps internally are uint32_t snaps of the system "wall time" clock in seconds. (See time(9).) 30 | The timestamp is CPU local and updated each time a rule or a state is matched. 31 | 32 | Sponsor: Rubicon Communications, LLC ("Netgate") 33 | -------------------------------------------------------------------------------- /2022q2/shp_rand.adoc: -------------------------------------------------------------------------------- 1 | === Shared page address randomization 2 | 3 | Links: + 4 | link:https://reviews.freebsd.org/D35392[D35392] link:https://reviews.freebsd.org/D35393[D35393] 5 | link:https://reviews.freebsd.org/D35349[D35349] 6 | 7 | Contact: Kornel Duleba + 8 | Contact: Marcin Wojtas 9 | 10 | The shared page is an R/X page that is mapped into each process by the image activator. 11 | It stores the signal trampoline, as well as other metadata e.g. information needed to implement user space timecounters. 12 | Previously it was mapped at the top of the process virtual address space. 13 | With the described changes its address will be randomized. 14 | We plan to turn the feature on by default for 64bit binaries, across all architectures. 15 | Currently the patches are under review and await approval. 16 | 17 | Sponsor: Stormshield 18 | -------------------------------------------------------------------------------- /2022q3/ena.adoc: -------------------------------------------------------------------------------- 1 | === ENA FreeBSD Driver Update 2 | 3 | Links: + 4 | link:https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README.rst[ENA README] URL: link:https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README.rst[https://github.com/amzn/amzn-drivers/blob/master/kernel/fbsd/ena/README.rst] 5 | 6 | Contact: Michal Krawczyk + 7 | Contact: David Arinzon + 8 | Contact: Marcin Wojtas 9 | 10 | ENA (Elastic Network Adapter) is the smart NIC available in the virtualized environment of Amazon Web Services (AWS). 11 | The ENA driver supports multiple transmit and receive queues and can handle up to 100 Gb/s of network traffic, depending on the instance type on which it is used. 12 | 13 | Completed since the last update: 14 | 15 | * Upstream of the ENA driver v2.6.0 and v2.6.1, included: 16 | ** Fix for the performance degradation after reset issue on 6-gen instances, 17 | ** Fix of the false netmap assertions with KASSERT enabled, 18 | ** Code cleanup and style fixes, 19 | ** Logging improvements, 20 | ** Fix to the retrieval of the ENI metrics. 21 | 22 | Sponsor: Amazon.com Inc 23 | -------------------------------------------------------------------------------- /2022q3/firecracker.adoc: -------------------------------------------------------------------------------- 1 | === FreeBSD/Firecracker 2 | 3 | Links: + 4 | link:https://firecracker-microvm.github.io/[Firecracker VM] 5 | 6 | Contact: Colin Percival 7 | 8 | Firecracker is an open source "microVM" developed by Amazon Web Services; it 9 | is designed for the needs of "serverless" compute environments and has a 10 | particular focus on security and minimalism. 11 | 12 | Starting in June 2022, Colin Percival has been working to port FreeBSD to run 13 | in the Firecracker environment, with significant assistance from other FreeBSD 14 | developers. As of this quarterly report, a set of patches are pending review 15 | which collectively add the needed support to make FreeBSD functional in a 16 | patched version of Firecracker. 17 | 18 | In Q4 Colin intends to finish committing the relevant patches to FreeBSD, 19 | release a kernel and disk image so other FreeBSD users can experiment with 20 | Firecracker, and update and merge Firecracker patches which add PVH boot 21 | support (used by FreeBSD). 22 | 23 | This work has already produced "spinoff" benefits in revealing ways to speed 24 | up the FreeBSD boot process; due to its low overhead and minimal environment, 25 | Firecracker is an excellent context to work on this. 26 | 27 | This work is supported by Colin's FreeBSD/EC2 Patreon. 28 | 29 | Sponsor: https://www.patreon.com/cperciva 30 | -------------------------------------------------------------------------------- /2022q3/intro.adoc: -------------------------------------------------------------------------------- 1 | Here is the third quarterly report for year 2022, with 24 reports included, which is slightly fewer than last quarter. 2 | 3 | I notice that in the past we had quarters with many more reports: often more than 30, sometimes even more than 40. 4 | Thus I would like to encourage all of you to submit reports: reports are useful to share your work, to find help, to have more eyes reviewing your changes, to have more people testing your software, to reach a wider audience whenever you need to tell something to all of the FreeBSD community and in many other cases. 5 | Please do not be shy and do not worry if you are not a native English speaker or if you are not proficient in AsciiDoc syntax: the quarterly team will be glad to help you in whatever you need. 6 | 7 | On the other hand, if you really do not have anything to report, then maybe you might like to join one of the interesting projects described below, or you might be inspired from one of them to do something new, thus having something to report in the future. 8 | 9 | We wish you all a pleasant read. 10 | 11 | Lorenzo Salvadore, on behalf of the status report team. 12 | -------------------------------------------------------------------------------- /2022q3/lsof.adoc: -------------------------------------------------------------------------------- 1 | === sysutils/lsof major upgrade 2 | 3 | Link: + 4 | link:https://github.com/lsof-org/lsof[lsof project repo] URL: link:https://github.com/lsof-org/lsof[https://github.com/lsof-org/lsof] 5 | 6 | Contact: + 7 | Larry Rosenman 8 | 9 | package:sysutils/lsof[] had a major upgrade to no longer look in `/dev/kmem` for data, and to use the userland API. 10 | This took a long time to hit the tree, but is finally done. 11 | It fixes man:lsof[8] to work with ZFS again for the first time since 13.0-RELEASE. 12 | 13 | This will make maintenance much easier going forward. 14 | 15 | To the kernel folks: if you make changes that break lsof, please submit a GitHub pull request to https://github.com/lsof-org/lsof. 16 | Please test any changes to the interfaces that lsof uses and make sure they still work. 17 | These all should be userland interfaces now, but please test. 18 | 19 | My thanks to Warner Losh , Mateusz Guzik , and Ed Maste for help getting this major change landed. 20 | -------------------------------------------------------------------------------- /2022q3/wtap.adoc: -------------------------------------------------------------------------------- 1 | === wtap(4) enhancement 2 | 3 | Links: + 4 | link:https://wiki.freebsd.org/SummerOfCode2022Projects/AddStaHostapAndAdhocModeToWtapWlanSimulator[Add sta, hostap and adhoc mode to wtap wlan simulator] 5 | 6 | Contact: En-Wei Wu + 7 | Contact: Li-Wen Hsu + 8 | Contact: Bjoern A. Zeeb 9 | 10 | wtap(4) is a net80211(4) Wi-Fi simulator introduced by Monthadar Al Jaberi and Adrian Chadd in 2012. 11 | It originally supported 802.11s mesh mode and was used for verification. 12 | During the 2022 Google Summer of Code, En-Wei had been working on bringing sta, hostap, adhoc and monitor modes to it. 13 | The work also covers adding basic tests for net80211(4) with wtap(4), written in atf(7). 14 | 15 | For more details, please check the link:https://wiki.freebsd.org/SummerOfCode2022Projects/AddStaHostapAndAdhocModeToWtapWlanSimulator[project wiki page]. 16 | 17 | Sponsor: Google Summer of Code 18 | Sponsor: The FreeBSD Foundation 19 | -------------------------------------------------------------------------------- /2022q4/ddb_ctf.adoc: -------------------------------------------------------------------------------- 1 | === Adding basic CTF support to ddb 2 | 3 | Links: + 4 | link:https://reviews.freebsd.org/D37898[Differential 1] URL: link:https://reviews.freebsd.org/D37898[https://reviews.freebsd.org/D37898] + 5 | link:https://reviews.freebsd.org/D37899[Differential 2] URL: link:https://reviews.freebsd.org/D37899[https://reviews.freebsd.org/D37899] 6 | 7 | Contact: Bojan Novković 8 | 9 | The goal of this project was to extend the ddb kernel debugger to use the kernel's Compact C Type Format (CTF) data and use the newly added features to implement a pretty-printing command in ddb. 10 | 11 | Due to a restrictive execution environment (no IO or memory allocation), ddb can not use existing kernel linker methods to retrieve the kernel's CTF data. 12 | Instead, the first patch adds the ability to load the kernel's CTF data during boot and adds a new kernel linker method used for accessing CTF data from ddb. 13 | The second patch adds a basic interface for using CTF data in ddb and a pretty-printing command built using the newly added interfaces. 14 | 15 | Any feedback, comments, and reviews are welcome and would be greatly appreciated. 16 | -------------------------------------------------------------------------------- /2022q4/golang_riscv64.adoc: -------------------------------------------------------------------------------- 1 | === go on FreeBSD riscv64 2 | 3 | Links: + 4 | link:https://github.com/golang/go[golang Home Page] URL: link:https://github.com/golang/go[https://github.com/golang/go] + 5 | link:https://github.com/MikaelUrankar/go/tree/freebsd_riscv64[FreeBSD riscv64 github repo] URL: link:https://github.com/MikaelUrankar/go/tree/freebsd_riscv64[https://github.com/MikaelUrankar/go/tree/freebsd_riscv64] + 6 | link:https://github.com/golang/go/issues/53466[FreeBSD riscv64 golang issue] URL: link:https://github.com/golang/go/issues/53466[https://github.com/golang/go/issues/53466] 7 | 8 | Contact: Mikaël Urankar + 9 | Contact: Dmitri Goutnik 10 | 11 | The proposal to add support for FreeBSD riscv64 has been accepted and the patches merged. 12 | golang on FreeBSD riscv64 will be available in golang v1.20 (to be released in February 2023). 13 | -------------------------------------------------------------------------------- /2022q4/intro.adoc: -------------------------------------------------------------------------------- 1 | The New Year has started and here is the last status report of 2022, including 34 reports. 2 | You will also notice that for the first time a new category has been introduced: the Cloud category. 3 | As FreeBSD keeps up to date with the latest technologies in IT, projects dealing with the cloud make steady improvements, and thus it has been judged that they deserve their own category in the status reports. 4 | 5 | The new category is not the only change about status reports. 6 | Indeed, the status team is revisiting its own workflow to become more efficient. 7 | If you are a report submitter, please ensure to read carefully the report authored by the status team as well as the next Call for Reports emails to keep up with the most recent changes. 8 | 9 | Have a nice read. 10 | 11 | Lorenzo Salvadore, on behalf of the status team. 12 | -------------------------------------------------------------------------------- /2022q4/openssh.adoc: -------------------------------------------------------------------------------- 1 | === Base System OpenSSH Update 2 | 3 | Links: + 4 | link:https://www.openssh.com/[OpenSSH] URL: link:https://www.openssh.com/[https://www.openssh.com/] + 5 | link:https://www.openssh.com/txt/release-9.1[OpenSSH 9.1 release notes] URL: link:https://www.openssh.com/txt/release-9.1[https://www.openssh.com/txt/release-9.1] 6 | 7 | Contact: Ed Maste 8 | 9 | OpenSSH, a suite of remote login and file transfer tools, was updated from version 9.0p1 to 9.1p1 in the FreeBSD base system. 10 | 11 | It has been merged to the stable branches, is available in FreeBSD 12.4, and will be in the upcoming FreeBSD 13.2. 12 | 13 | A number of bug fixes and minor improvements have been submitted upstream to OpenSSH, and this process will continue with subsequent updates. 14 | 15 | Sponsor: The FreeBSD Foundation 16 | -------------------------------------------------------------------------------- /2022q4/papers.adoc: -------------------------------------------------------------------------------- 1 | === FreeBSD Presentations and Papers 2 | 3 | Links: + 4 | link:https://papers.FreeBSD.org/[FreeBSD Presentations and Papers] URL: link:https://papers.FreeBSD.org/[https://papers.FreeBSD.org] 5 | 6 | Contact: Allan Jude + 7 | Contact: Greg White + 8 | Contact: Li-Wen Hsu + 9 | Contact: Philip Paeps 10 | 11 | In this quarter, the presentations and papers from those events have been added: 12 | 13 | * BSDCan 2022 14 | * EuroBSDCon 2022. 15 | 16 | Open tasks: 17 | 18 | * Find and upload missing FreeBSD related presentations and papers 19 | * Issues listed at link:https://github.com/freebsd/freebsd-papers/issues[Open Issues]. 20 | -------------------------------------------------------------------------------- /2022q4/xfce.adoc: -------------------------------------------------------------------------------- 1 | === Xfce on FreeBSD 2 | 3 | Links: + 4 | link:https://xfce.org/about/news/?post=1671062400[Xfce 4.18 Upstream Release Announcement] URL: link:https://xfce.org/about/news/?post=1671062400[https://xfce.org/about/news/?post=1671062400] + 5 | link:https://www.freshports.org/x11-wm/xfce4[Xfce meta-port on FreshPorts] URL: link:https://www.freshports.org/x11-wm/xfce4[https://www.freshports.org/x11-wm/xfce4] 6 | 7 | Contact: Xfce team + 8 | Contact: Guido Falsi 9 | 10 | The FreeBSD Xfce team (xfce@) works to ensure the Xfce desktop environment is maintained and fully functional on FreeBSD. 11 | 12 | This quarter the Xfce team members are pleased to welcome Xfce 4.18 to the FreeBSD ports tree! 13 | 14 | This new release includes many improvements in various parts of the environment, especially in the Thunar file manager. 15 | 16 | Also various upstream packages now include patches that were present in the ports tree. 17 | 18 | For further details, refer to the link:https://xfce.org/about/news/?post=1671062400[Xfce 4.18 Upstream Release Announcement]. 19 | -------------------------------------------------------------------------------- /README.adoc: -------------------------------------------------------------------------------- 1 | = FreeBSD Quarterly Status Reports 2 | 3 | This repository was used to collect and review FreeBSD quarterly status reports from 2017Q4 through 2022Q4. 4 | It is now archived. 5 | 6 | Please check the link:https://www.FreeBSD.org/status/[FreeBSD status reports webpage] for up to date information about FreeBSD status reports collection, reviewing and publication. 7 | -------------------------------------------------------------------------------- /tools/Makefile.template: -------------------------------------------------------------------------------- 1 | # Report month start 2 | START?= 3 | # Report month end 4 | STOP?= 5 | # Report year 6 | YEAR?= 7 | # Report quarter 8 | QUARTER?= 9 | 10 | # Entries from the various official and semi-official teams 11 | TeamReports= freebsd-foundation.adoc releng.adoc clusteradm.adoc ci.adoc portmgr.adoc 12 | 13 | # Projects that span multiple categories, from the kernel, and userspace to 14 | # the Ports Collection or external projects 15 | Projects= 16 | 17 | # Changes affecting the base system and programs in it 18 | Userland= 19 | 20 | # Updates to kernel subsystems/features, driver support, filesystems, 21 | # and more 22 | Kernel= 23 | 24 | # Updating platform-specific features and bringing in support for new 25 | # hardware platforms 26 | Architectures= 27 | 28 | # Noteworthy changes in the documentation tree, man-pages, or new 29 | # external books/documents 30 | Documentation= doceng.adoc 31 | 32 | # Changes affecting the Ports Collection, whether sweeping changes that 33 | # touch most of the tree, or individual ports themselves 34 | Ports= 35 | 36 | # Third party project built on FreeBSD, but not part of the FreeBSD 37 | # project itself 38 | ThirdParty= 39 | 40 | # Objects that defy categorization 41 | Miscellaneous= 42 | 43 | .include <../tools/Makefile> 44 | -------------------------------------------------------------------------------- /tools/call.txt.template: -------------------------------------------------------------------------------- 1 | Dear FreeBSD Community, 2 | 3 | The deadline for the next FreeBSD Quarterly Status update is 4 | %%DEADLINE%% for work done since the last round of Quarterly Reports: 5 | %%START%% %%YEAR%% - %%STOP%% %%YEAR%%. 6 | I would like to remind you that reports are collected during the last 7 | month of every quarter. 8 | 9 | Status report submissions do not need to be very long. They may be 10 | about anything happening in the FreeBSD project and community, and 11 | they provide a great way to inform FreeBSD users and developers about 12 | work that is underway or has been completed. Report submissions are 13 | not limited to committers; anyone doing anything interesting and 14 | FreeBSD related can -- and should -- write one! 15 | 16 | The preferred method is to follow the guidelines at the Quarterly 17 | GitHub repository: 18 | 19 | https://github.com/freebsd/freebsd-quarterly 20 | 21 | Alternatively you can fetch the AsciiDoctor template, fill it in, and 22 | email it to quarterly-submissions@FreeBSD.org. 23 | The new AsciiDoctor template can be found at: 24 | 25 | https://raw.githubusercontent.com/freebsd/freebsd-quarterly/master/report-sample.adoc 26 | 27 | We look forward to seeing your %%YEAR%%Q%%QUARTER%% reports! 28 | 29 | Thanks, 30 | 31 | %%SIGNATURE%% (on behalf of quarterly@) 32 | --------------------------------------------------------------------------------