FreeBSD Quarterly Status Report, July-September 2012.
issyl0 at FreeBSD.org
Mon Mar 4 13:49:50 UTC 2013
FreeBSD Quarterly Status Report, July-September 2012.
This report covers FreeBSD-related projects between July and September
2012. This is the third of the four reports planned for 2012.
Highlights from this quarter include successful participation in Google
Summer of Code, major work in areas of the source and ports trees, and
a Developer Summit attended by over 30 developers.
Thanks to all the reporters for the excellent work! This report
contains 12 entries and we hope you enjoy reading it.
* FreeBSD on Altera FPGAs
* Native iSCSI Target
* Parallel rc.d execution
FreeBSD Team Reports
* FreeBSD Bugbusting Team
* FreeBSD Foundation
* The FreeBSD Core Team
* FreeBSD on ARMv6/ARMv7
* The FreeBSD Japanese Documentation Project
* Ports Collection
* FreeBSD Developer Summit, Cambridge, UK
FreeBSD in Google Summer of Code
* Google Summer of Code 2012
FreeBSD Bugbusting Team
Contact: Eitan Adler <eadler at FreeBSD.org>
Contact: Gavin Atkinson <gavin at FreeBSD.org>
Contact: Oleksandr Tymoshenko <gonzo at FreeBSD.org>
In August, Eitan Adler (eadler@) and Oleksandr Tymoshenko (gonzo@)
joined the Bugmeister team. At the same time, Remko Lodder and Volker
Werth stepped down. We extend our thanks to Volker and Remko for their
work in the past, and welcome Oleksandr and Eitan. Eitan and Oleksandr
have been working hard on migrating from GNATS, and have made
significant progress on evaluating new software, and creating scripts
to export data from GNATS.
The bugbusting team continue work on trying to make the contents of the
GNATS PR database cleaner, more accessible and easier for committers to
find and resolve PRs, by tagging PRs to indicate the areas involved,
and by ensuring that there is sufficient info within each PR to resolve
As always, anybody interested in helping out with the PR queue is
welcome to join us in #freebsd-bugbusters on EFnet. We are always
looking for additional help, whether your interests lie in triaging
incoming PRs, generating patches to resolve existing problems, or
simply helping with the database housekeeping (identifying duplicate
PRs, ones that have already been resolved, etc). This is a great way of
getting more involved with FreeBSD!
1. Further research into tools suitable to replace GNATS.
2. Get more users involved with triaging PRs as they come in.
3. Assist committers with closing PRs.
FreeBSD Developer Summit, Cambridge, UK
Contact: Robert Watson <rwatson at FreeBSD.org>
In the end of August, there was an "off-season" Developer Summit held
in Cambridge, UK at the University of Cambridge Computer Laboratory.
This was a three-day event, with a documentation summit scheduled for
the day before. The three days of the main event were split into three
sessions, with two tracks in each. Some of them even involved ARM
developers from the neighborhoods which proven to be productive, and
led to further engagement between the FreeBSD community and ARM.
The schedule was finalized on the first day, spawning a plethora of
topics to discuss, followed by splitting into groups. A short summary
from each of the groups was presented in the final session and then
published at the event's home page on the FreeBSD wiki. This summit
contributed greatly to arriving to a tentative plan for throwing the
switch to make clang the default compiler on HEAD. This was further
discussed on the mailing list, and has now happened, bringing us one
big step closer to a GPL-free FreeBSD 10. As part of the program, an
afternoon of short talks from researchers in the Cambridge Computer
Laboratory involved either operating systems work in general or FreeBSD
in particular. Robert Watson showed off a tablet running FreeBSD on a
MIPS-compatible soft-core processor running on an Altera FPGA.
In association with the event, a dinner was hosted by St. John's
college and co-sponsored by Google and the FreeBSD Foundation. The day
after the conference, a trip was organized to Bletchley Park, which was
celebrating Turing's centenary in 2012.
Contact: Deb Goodkin <deb at FreeBSDFoundation.org>
The Foundation hosted and sponsored the Cambridge FreeBSD developer
summit in August 2012.
We were represented at the following conferences: OSCON July 2012,
Texas LinuxFest, and Ohio LinuxFest.
We negotiated/supervised Foundation funded projects: Distributed
Security Audit Logging, Capsicum Component Framework, Native iSCSI
Target Scoping, and Growing UFS Filesystems Online.
We negotiated, supervised, and funded hardware needs for FreeBSD
We welcomed Kirk McKusick to our board of directors. He took over the
responsibility of managing our investments.
We visited companies to discuss their FreeBSD use and to help
facilitate collaboration with the Project.
We managed FreeBSD vendor community mailing list and meetings.
We created a high quality FreeBSD 9 brochure to help promote FreeBSD.
Published our semi-annual newsletter that highlighted Foundation funded
projects, travel grants for developers, conferences sponsored and other
ways the Foundation supported the FreeBSD Project.
We hired a technical writer to help with FreeBSD marketing/promotional
We began work on redesigning our website.
FreeBSD on Altera FPGAs
Contact: Brooks Davis <brooks at FreeBSD.org>
Contact: Robert Watson <rwatson at FreeBSD.org>
Contact: Bjoern Zeeb <bz at FreeBSD.org>
In the course of developing the CHERI processor as part of the CTSRD
project SRI International's Computer Science Laboratory and the
University of Cambridge Computer Laboratory have developed support for
a number of general purpose IP cores for Altera FPGAs including the
Altera Triple Speed Ethernet (ATSE) MAC core, the Altera University
Program SD Card core, and the Altera JTAG UART. We have also added
support for general access to memory mapped devices on the Avalon bus
via the avgen bus. We have implemented both nexus and flattened device
tree (FDT) attachments for these devices.
In addition to these softcore we have developed support for the Terasic
multi-touch LCD and are working to provide support for the Terasic HDMI
Transmitter Daughter Card. Both of these work with common development
and/or reference boards for Altera FPGAs. They do require additional IP
cores which we plan to release to the open source community in the near
With exception of the ATSE and HDMI drivers we have merged all of these
changes to FreeBSD-CURRENT. We anticipate that these drivers will be
useful for users who with to run FreeBSD on either hard or soft core
CPUs on Altera FPGAs.
This work has been sponsored by DARPA, AFRL, and Google.
FreeBSD on ARMv6/ARMv7
Contact: freebsd-arm mailing list <freebsd-arm at FreeBSD.org>
Support for ARMv6 and ARMv7 architecture has been merged from project
branch to HEAD. This code covers the following parts:
* General ARMv6/ARMv7 kernel bits (pmap, cache, assembler routines,
* ARM Generic Interrupt Controller driver
* Improved thread-local storage for cpus >=ARMv6
* Driver for SMSC LAN95XX and LAN8710A ethernet controllers
* Marvell MV78x60 support (multiuser, ARMADA XP kernel config)
* TI OMAP4 and AM335x support (multiuser, no GPU or graphics support,
kernel configs for Pandaboard and Beaglebone)
* LPC32x0 support (multiuser, frame buffer works with SSD1289 LCD
controller. Embedded Artists EA3250 kernel config)
This work was a result of a joint effort by many people, including but
not limited to: Grzegorz Bernacki (gber@), Aleksander Dutkowski, Ben R.
Gray (bgray@), Olivier Houchard (cognet@), Rafal Jaworowski (raj@) and
Semihalf team, Tim Kientzle (kientzle@), Jakub Wojciech Klama (jceel@),
Ian Lepore (ian@), Warner Losh (imp@), Damjan Marion (dmarion@), Lukasz
Plachno, Stanislav Sedov (stas@), Mark Tinguely and Andrew Turner
(andrew@). Thanks to all, who contributed by submitting code, testing
and giving valuable advice.
1. More hardware bring-ups and more drivers
2. Finish SMP support
3. VFP/NEON support
Google Summer of Code 2012
Contact: FreeBSD Summer of Code Administrators <soc-admins at FreeBSD.org>
Over the Summer of 2012, FreeBSD were once again granted a place to
participate in the Google Summer of Code program. We received a total
of 32 project proposals, and were ultimately given 15 slots for
university students to work on open source projects mentored by
existing FreeBSD developers.
We were able to accept a wide spread of proposals, covering both the
base system and the ports infrastructure. We had students working on
file systems, file integrity checking, and parallelization in the ports
collection. Students worked on kernel infrastructure, including one
project to support CPU resource limits on users, processes and jails,
and one student improving the BSD callout(9) and timer facilities. Two
students worked on the ARM platform, widely used in embedded systems
and smart phones; one student worked on a significant cleanup and
improvements to the Flattened Device Tree implementation code, while
the other ported FreeBSD to the OMAP3-based BeagleBoard-xM device. One
student worked on improving IPv6 support in userland tools, whilst
another worked on BIOS emulation for the BHyVE BSD-licensed hypervisor,
new in FreeBSD 10. Other students worked on EFI boot support, userland
lock profiling and an automated kernel crash reporting system.
Overall, a significant proportion of the code produced has or will be
integrated into FreeBSD in one form or another. All of the work is
available in our Summer Of Code Subversion repository, and some of the
work has already been merged back into the main repositories.
FreeBSD is once again grateful to Google for being selected to
participate in Summer of Code 2012.
Contact: KDE FreeBSD <kde at FreeBSD.org>
The KDE/FreeBSD team have continued to improve the experience of KDE
software and Qt under FreeBSD. The latest round of improvements
* Fixes for building Qt with libc++ and C++11
* Fixes for Solid-related crashes
* Fix battery detection in battery monitor plasmoid
The team has also made many releases and upstreamed many fixes and
patches. The latest round of releases include:
* KDE SC: 4.9.1 (area51) and 4.8.4 (ports)
* Qt: 4.8.3 (area51)
* PyQt: 4.9.4 (area51); QScintilla 2.6.2 (area51); SIP: 4.13.3
* Calligra: 2.4.3, 2.5-RC2, 2.5.0. 2.5.1, 2.5.2 (area51) and 2.4.3,
2.5.0, 2.5.1 (ports)
* Amarok: 2.6.0 (area51)
* CMake: 2.8.9 (ports)
* Digikam (and KIPI-plugins): 2.7.0, 2.8.0, 2.9.0 (area51) and 2.7.0,
* QtCreator: 2.6.0-beta (area51)
* many smaller ports
The team is always looking for more testers and porters so please
contact us at kde at FreeBSD.org and visit our home page at
1. Please see 2012 Q4 Status Report
2. Updating out-of-date ports, see PortScout for a list
Native iSCSI Target
Contact: Edward Tomasz Napieral/a <trasz at FreeBSD.org>
During the July-September time period, the Native iSCSI Target project
was officially started under sponsorship from the FreeBSD Foundation.
Before the end of September I've written ctld(8), the userspace part of
the target, responsible for handling configuration, accepting incoming
connections, performing authentication and iSCSI parameter negotiation,
and handing off connections to the kernel. For the time being, I've
reused some parts of protocol-handling code from the istgt project;
since ctld(8) only handles the Login phase, the code can be rewritten
in a much simpler and shorter way in the future.
Parallel rc.d execution
Contact: Kuan-Chung Chiu <buganini at gmail.com>
Contact: Kilian <kklimek at uos.de>
There are two implementations to make rc.d execution parallel. Compared
to Kil's rcorder, rcexecr brings more concurrence and provides more
flexibility than older "early_late_divider" mechanism but require more
invasive /etc patch. Both implementations have switch to toggle
parallel execution. Further modification/integration needs more
1. Refine /etc/rc.d/* to eliminate unnecessary waiting.
Contact: Thomas Abthorpe <portmgr-secretary at FreeBSD.org>
Contact: Port Management Team <portmgr at FreeBSD.org>
The ports tree approaches 24,000 ports, while the PR count still is
In Q3 we added 2 new committers and took in two commits bit for safe
The Ports Management team had performed multiple -exp runs, verifying
how base system updates may affect the ports tree, as well as providing
QA runs for major ports updates.
Beat Gaetzi took over the role of sending out fail mails, a role that
Pav Lucistnik had previously held. Beat also undertook the task of
converting the Ports tree from CVS to Subversion.
Florent Thoumie stepped down from his role on portmgr, he was
instrumental in maintaining the legacy pkg_* code.
1. Most ports PRs are assigned, we now need to focus on testing,
committing and closing.
The FreeBSD Core Team
Contact: Core Team <core at FreeBSD.org>
Along with the change in the Core Team membership, several related
roles changed hands. Gabor Pali assumed the role of core secretary from
Gavin Atkinson, and David Chisnall replaced Robert Watson as liaison to
the FreeBSD Foundation. The Core Team felt there was no longer a need
for a formal security team liaison, so that role was retired.
In the third quarter, the Core Team granted access for 2 new committers
and took 2 commit bits into safekeeping.
The Core Team worked with the Port Management Team and Cluster
Administrators to set a date to stop providing CVS exports for the
ports repository, which is February 28, 2013. In the meantime, the CVS
export for 9.1-RELEASE was restored.
The FreeBSD Japanese Documentation Project
Contact: Hiroki Sato <hrs at FreeBSD.org>
Contact: Ryusuke Suzuki <ryusuke at FreeBSD.org>
Web page (htdocs): Newsflash and some other updates in the English
version were translated to keep them up-to-date. Especially "security
incident on FreeBSD infrastructure" was translated and published in a
FreeBSD Handbook: Big update in the "advanced-networking". With this
update, merging translation results from the handbook in the local
repository of Japanese documentation project into the main repository
was completed. This chapter is still outdated and needs more work. The
other sections have also constantly been updated. Especially, new
subsection "Using pkgng for Binary Package Management" was added to
"ports" section and "Using subversion" subsection was added to
Article: Some progress was made in "Writing FreeBSD Problem Reports"
and "Writing FreeBSD Problem Reports" articles.
1. Further translation work of outdated documents in the ja_JP.eucJP
More information about the freebsd-stable