610 lines
19 KiB
XML
610 lines
19 KiB
XML
<?xml version="1.0" encoding="utf-8" ?>
|
|
<!DOCTYPE report PUBLIC "-//FreeBSD//DTD FreeBSD XML Database for Status Report//EN" "http://www.FreeBSD.org/XML/www/share/xml/statusreport.dtd" >
|
|
<!-- $FreeBSD$ -->
|
|
<report>
|
|
<date>
|
|
<month>April-June</month>
|
|
|
|
<year>2013</year>
|
|
</date>
|
|
|
|
<section>
|
|
<title>Introduction</title>
|
|
|
|
<p>This report covers &os;-related projects between April and June
|
|
2013. This is the second of four reports planned for 2013.</p>
|
|
|
|
<!-- XXX: theraven's part goes here -->
|
|
|
|
<!-- XXX: keep updating the number of entries -->
|
|
<p>Thanks to all the reporters for the excellent work! This report
|
|
contains 12 entries and we hope you enjoy reading it.</p>
|
|
|
|
<!-- XXX: set date for the next set of submissions -->
|
|
<p>The deadline for submissions covering between July and September 2013
|
|
is not yet decided.</p>
|
|
</section>
|
|
|
|
<category>
|
|
<name>team</name>
|
|
|
|
<description>&os; Team Reports</description>
|
|
</category>
|
|
|
|
<category>
|
|
<name>proj</name>
|
|
|
|
<description>Projects</description>
|
|
</category>
|
|
|
|
<category>
|
|
<name>kern</name>
|
|
|
|
<description>Kernel</description>
|
|
</category>
|
|
|
|
<category>
|
|
<name>arch</name>
|
|
|
|
<description>Architectures</description>
|
|
</category>
|
|
|
|
<category>
|
|
<name>bin</name>
|
|
|
|
<description>Userland Programs</description>
|
|
</category>
|
|
|
|
<category>
|
|
<name>ports</name>
|
|
|
|
<description>Ports</description>
|
|
</category>
|
|
|
|
<category>
|
|
<name>docs</name>
|
|
|
|
<description>Documentation</description>
|
|
</category>
|
|
|
|
<project cat='proj'>
|
|
<title>PC-BSD</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Kris</given>
|
|
<common>Moore</common>
|
|
</name>
|
|
<email>kmoore@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links>
|
|
<url href="http://www.pcbsd.org">PC-BSD Home Page</url>
|
|
</links>
|
|
|
|
<body>
|
|
<p>Progress on moving PC-BSD & TrueOS to a "rolling release"
|
|
is happening quickly. We have implemented our own package
|
|
repository, fully based on <tt>pkg(8)</tt>, which is updated twice
|
|
monthly, and are now hosting dedicated
|
|
<tt>freebsd-update(8)</tt> systems. In addition to the
|
|
<tt>9.1-RELEASE</tt> ISO images, we have begun to create a
|
|
<tt>9-STABLE</tt> branch as well, using
|
|
<tt>freebsd-update(8)</tt> to push out the latest world and
|
|
kernel binaries on a monthly basis.</p>
|
|
|
|
<p>We are currently working on an implementation of ZFS Boot
|
|
Environments for desktops and servers. These users to install
|
|
updates or experimental versions in separate ZFS clones and
|
|
select the one to run at boot time, providing an easy way of
|
|
testing upgrades before deployment.</p>
|
|
</body>
|
|
</project>
|
|
|
|
<project cat='kern'>
|
|
<title>Wireless Networking Improvements</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Adrian</given>
|
|
<common>Chadd</common>
|
|
</name>
|
|
<email>adrian@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links/>
|
|
|
|
<body>
|
|
<p>Recently the &os; wireless networking stack has received
|
|
updates in the following areas:</p>
|
|
|
|
<ul>
|
|
<li>Improved transmit locking in <tt>net80211(4)</tt> to
|
|
eliminate a whole class of subtle race conditions leading to
|
|
out-of-order packets being handed to the driver.</li>
|
|
|
|
<li>Spectral scan (FFT) information is now available for the
|
|
AR9280, AR9285, AR9287 series NICs.</li>
|
|
|
|
<li>Added support for AR93xx, AR94xx, AR95xx NICs —
|
|
<tt>hostap</tt>, <tt>adhoc</tt> and <tt>station</tt> modes
|
|
have been tested, including 3x3 stream support for the those
|
|
NICs where appropriate.</li>
|
|
|
|
<li>Implemented ps-poll handling in <tt>hostap</tt> mode. This
|
|
was required for correct behaviour with stations that implement
|
|
aggressive power save.</li>
|
|
|
|
<li>Added AR933x SoC support — including all on-board
|
|
peripherals — the <tt>8devices.com</tt> Carambola-2
|
|
board is now fully supported and will run &os; from NOR
|
|
flash.</li>
|
|
</ul>
|
|
</body>
|
|
</project>
|
|
|
|
<project cat='arch'>
|
|
<title>Intel IOMMU (VT-d, DMAR) Support</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Konstantin</given>
|
|
<common>Belousov</common>
|
|
</name>
|
|
<email>kib@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links>
|
|
<url href="http://www.intel.com/content/www/us/en/intelligent-systems/intel-technology/vt-directed-io-spec.html"/>
|
|
<url href="http://lists.freebsd.org/pipermail/freebsd-arch/2013-May/014368.html"/>
|
|
<url href="http://people.freebsd.org/~kib/misc/dmar.1.patch"/>
|
|
</links>
|
|
|
|
<body>
|
|
<p>A VT-d driver was developed that implements the
|
|
<tt>busdma(9)</tt> interface using the DMA Remap units (DMARs)
|
|
found in current Intel chipsets. The driver provides
|
|
reliability and security improvements for the system by
|
|
facilitating restricted access to main memory from busmastering
|
|
devices.</p>
|
|
|
|
<p>It also eliminates bounce buffering (copying) by allocating
|
|
remapped regions that satisfy a device's access limitations.</p>
|
|
|
|
<p>With additional work to define a suitable interface the VT-d
|
|
driver will also provide PCI pass-through functionality for
|
|
hypervisors.</p>
|
|
|
|
<p>This project is sponsored by the &os; Foundation.</p>
|
|
</body>
|
|
|
|
<help>
|
|
<task>Implement workarounds for chipset errata.</task>
|
|
|
|
<task>Commit to HEAD after additional testing.</task>
|
|
|
|
<task>Rebalance MSI/MSI-X using interrupt remapping unit, also
|
|
required for x2APIC use on big machines.</task>
|
|
|
|
<task>Integrate with the Intel GPU MMU and handle Ironlake and
|
|
SandyBridge errata for the GFXVTd unit.</task>
|
|
|
|
<task>Provide an interface for VMM (hypervisors).</task>
|
|
|
|
<task>Consider implementing a driver for AMD's IOMMU.</task>
|
|
</help>
|
|
</project>
|
|
|
|
<project cat='kern'>
|
|
<title>Multi-threaded Pagedaemon</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Konstantin</given>
|
|
<common>Belousov</common>
|
|
</name>
|
|
<email>kib@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links>
|
|
<url href="http://people.freebsd.org/~kib/misc/pagedaemon-numa.1.patch"/>
|
|
</links>
|
|
|
|
<body>
|
|
<p>This project aims to improve scalability of the virtual memory
|
|
subsystem. Based on a prototype change from Jeff Roberson,
|
|
per-domain page queues and per-domain pagedaemon working threads
|
|
have been implemented to enable this. At the moment, the
|
|
domains coincide with the NUMA proximity domains, but this is
|
|
not neccessary and could be improved with further separation to
|
|
allow more parallelism in the pagedaemon.</p>
|
|
|
|
<p>The patch is relatively simple, with the most delicate parts
|
|
being the page laundry and OOM logic, which requires coordination
|
|
between all pagedaemon threads to prevent false triggering.</p>
|
|
|
|
<p>Testing on diverse workloads and on real multi-socket machines
|
|
is required.</p>
|
|
|
|
<p>This project is sponsored by the &os; Foundation.</p>
|
|
</body>
|
|
|
|
<help>
|
|
<task>Debug on multi-domain NUMA machine.</task>
|
|
|
|
<task>Test, get review and commit.</task>
|
|
</help>
|
|
</project>
|
|
|
|
<project cat='bin'>
|
|
<title>HAST Module for <tt>bsnmpd(1)</tt></title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Mikolaj</given>
|
|
<common>Golub</common>
|
|
</name>
|
|
<email>trociny@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links/>
|
|
|
|
<body>
|
|
<p>HAST module for <tt>bsnmpd(1)</tt> has been committed to
|
|
-CURRENT and merged to 8.x and 9.x -STABLE branches. The module
|
|
allows to monitor and manage HAST via the SNMP protocol.</p>
|
|
</body>
|
|
</project>
|
|
|
|
<project cat='team'>
|
|
<title>&os; Release Engineering Team</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>&os; Release Engineering Team</name>
|
|
<email>re@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links>
|
|
<url href="http://www.freebsd.org/releases/8.4R/errata.html"/>
|
|
<url href="http://www.freebsd.org/releases/9.2R/schedule.html"/>
|
|
</links>
|
|
|
|
<body>
|
|
<p>The &os; 8.4-RELEASE cycle completed on June 7, 2013,
|
|
approximately two months behind the original schedule. Please
|
|
be sure to read the Errata Notices for any post-release issues
|
|
discovered after 8.4-RELEASE.</p>
|
|
|
|
<p>The &os; 9.2-RELEASE process will begin July 6, 2013.
|
|
Unless any critical issues arise, &os; 9.2-RELEASE is
|
|
expected to be available late August or early September.</p>
|
|
|
|
<p>Users tracking the &os; 9.<i>X</i> branch are encouraged
|
|
to test the -BETA and -RC builds whenever possible, and provide
|
|
feedback and report issues to the <a
|
|
href="http://lists.freebsd.org/pipermail/freebsd-stable">freebsd-stable
|
|
mailing list</a>.</p>
|
|
</body>
|
|
</project>
|
|
|
|
<project cat='proj'>
|
|
<title>Virtual Private Systems</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Klaus</given>
|
|
<common>Ohrhallinger</common>
|
|
</name>
|
|
<email>k@7he.at</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links>
|
|
<url href="http://www.7he.at/freebsd/vps/"/>
|
|
<url href="http://svnweb.freebsd.org/base/projects/vps/"/>
|
|
</links>
|
|
|
|
<body>
|
|
<p>VPS for &os; is an OS-level based virtualization implementation
|
|
that supports advanced features like live migration. It has
|
|
been recently imported into the Project's Subversion repository
|
|
as a project branch. The code is currently of alpha
|
|
quality.</p>
|
|
</body>
|
|
|
|
<help>
|
|
<task>Test with many different guest setups/applications. All
|
|
feedback is highly appreciated.</task>
|
|
</help>
|
|
</project>
|
|
|
|
<project cat='ports'>
|
|
<title>KDE/&os;</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>KDE</given>
|
|
<common>&os;</common>
|
|
</name>
|
|
<email>kde@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links>
|
|
<url href="http://FreeBSD.kde.org">KDE/&os; home page</url>
|
|
<url href="http://FreeBSD.kde.org/area51.php">area51</url>
|
|
</links>
|
|
|
|
<body>
|
|
<p>The KDE/&os; Team have continued to improve the experience of
|
|
KDE software and Qt under &os;. During this quarter, the team
|
|
has kept most of the KDE and Qt ports up-to-date, working on the
|
|
following releases:</p>
|
|
|
|
<ul>
|
|
<li>KDE SC: 4.10.2, 4.10.3, 4.10.4</li>
|
|
<li>Qt: 5.0.2 (area51)</li>
|
|
<li>PyQt: 4.10.2; QScintilla 2.7.2; SIP: 4.14.7</li>
|
|
<li>KDevelop: 4.5.1</li>
|
|
<li>Calligra: 2.6.2</li>
|
|
<li>CMake: 2.8.11.1</li>
|
|
<li>Digikam (and KIPI-plugins): 3.1.0, 3.2.0 </li>
|
|
<li>KDE Telepathy: 0.6.0, 0.6.1</li>
|
|
</ul>
|
|
|
|
<p>As a result — according to <a
|
|
href="http://portscout.freebsd.org/kde@freebsd.org.html">PortScout</a>
|
|
— <tt>kde@</tt> has 473 ports (up from 431), of which
|
|
98.73% are up-to-date (up from 93.5%). iXsystems Inc.
|
|
continues to provided a machine for the team to build packages
|
|
and to test updates. iXsystems Inc. has been providing the
|
|
KDE/&os; Team with support for quite a long time and we are very
|
|
grateful for that. This quarter, we would also like to thank
|
|
Steve Wills (<tt>swills@</tt>) for providing access to another
|
|
machine so that we can do our work even faster.</p>
|
|
|
|
<p>While a great deal of the team's efforts are focused towards
|
|
packaging released code, we also take a proactive stand in
|
|
making sure future versions of the software we port is also
|
|
going to work well on &os;. This involves being in close
|
|
contact with upstream, raising awareness of &os; as an active
|
|
project and also sending actual patches that most of the time
|
|
benefit many other operating systems besides &os; itself. In
|
|
this regard, we have been dedicating a lot of time making sure
|
|
both <tt>clang</tt> and <tt>libc++</tt> are fully supported in
|
|
KDE and Qt. Not only has this resulted in many patches being
|
|
sent to these projects, but the exposure to these large code
|
|
bases have been beneficial to the Clang-on-&os; project as well.
|
|
Dimitry Andric (<tt>dim@</tt>) has been of great help as a point
|
|
of contact for all the issues we have faced.</p>
|
|
|
|
<p>As usual, the team is always looking for more testers and
|
|
porters so please contact us and visit our home page. It would
|
|
be especially useful to have more helping hands on tasks such as
|
|
getting rid of the dependency on the defunct HAL project and
|
|
providing integration with KDE's Bluedevil Bluetooth
|
|
interface.</p>
|
|
</body>
|
|
|
|
<help>
|
|
<task>Update out-of-date ports, see <a
|
|
href="http://portscout.freebsd.org/kde@freebsd.org.html">PortScout</a>
|
|
for a list.</task>
|
|
<task>Work on KDE 4.11 and Qt 5.</task>
|
|
<task>Make sure the whole KDE stack (including Qt) builds and works
|
|
correctly with <tt>clang</tt> and <tt>libc++</tt>.</task>
|
|
<task>Remove the dependency on HAL.</task>
|
|
</help>
|
|
</project>
|
|
|
|
<project cat='docs'>
|
|
<title>Upgrading the Documentation Set to DocBook 5.0</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Gábor</given>
|
|
<common>Kövesdán</common>
|
|
</name>
|
|
<email>gabor@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<body>
|
|
<p>The Documentation Project has been using old versions of markup
|
|
standards until recently when we switched to a real XML
|
|
toolchain and DocBook 4.5. However, we still depend on obsolete
|
|
technologies — DSSSL and Jade. Besides, DocBook 5.0
|
|
provides cleaner markup and some nice new features.</p>
|
|
|
|
<p>The objective of this project is to upgrade the documentation
|
|
set to DocBook 5.0 and to find a way to properly render our
|
|
sources without using DSSSL, since the DSSSL stylesheets are
|
|
discontinued and cannot render DocBook 5.0. The documentation
|
|
sources have already been successfully transformed to DocBook
|
|
5.0 and updates to the rendering process are under
|
|
development. The common opinion among &os; developers is that
|
|
Java is a heavy dependency that should be avoided. This has
|
|
suggested the transformation of DocBook sources to TeX and use
|
|
TeX as a rendering backend. There are two ways to do this; the
|
|
sources can be transformed either directly or through the XSL FO
|
|
output generated by the stylesheets provided for the DocBook Project.
|
|
The latter approach has been chosen as a preferred
|
|
way since it better fits the existing documentation
|
|
infrastructure and provides easier customization.</p>
|
|
|
|
<p>This project is generously funded by The &os; Foundation.</p>
|
|
</body>
|
|
|
|
<help>
|
|
<task>Finish the implementation of the rendering process.</task>
|
|
|
|
<task>Integrate the rendering solution into the
|
|
infrastructure.</task>
|
|
|
|
<task>Merge back changes to <tt>head</tt>.</task>
|
|
</help>
|
|
</project>
|
|
|
|
<project cat='kern'>
|
|
<title>AMD GPU Kernel Mode-setting Support</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Jean-Sébastien</given>
|
|
<common>Pédron</common>
|
|
</name>
|
|
<email>dumbbell@FreeBSD.org</email>
|
|
</person>
|
|
|
|
<person>
|
|
<name>
|
|
<given>Konstantin</given>
|
|
<common>Belousov</common>
|
|
</name>
|
|
<email>kib@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<links>
|
|
<url
|
|
href="https://wiki.freebsd.org/AMD_GPU">Project status on the wiki</url>
|
|
</links>
|
|
|
|
<body>
|
|
<p>Due to non-&os;-related activities from April to end of June,
|
|
the project progressed slowly:</p>
|
|
|
|
<ul>
|
|
<li>Some important problems in TTM were fixed and several others
|
|
are being worked out. Applications affected by these bugs are
|
|
non-linear video editing software (which do not use Xv to
|
|
preview the video) or "screen" of VirtualBox, for
|
|
instance.</li>
|
|
|
|
<li>Regarding the locking issue with OpenGL, no work has been
|
|
done yet. <tt>glxgears</tt> works but some modern desktop
|
|
environments or WebGL demos hang. Once TTM bugs described
|
|
above are fixed, this is the next target.</li>
|
|
|
|
<li>Patches to Mesa to make it build out-of-the-box were
|
|
submitted upstream. As of writing, some were committed but
|
|
not all of them. Additionally, as result of a joint work with
|
|
Jonathan Gray (of OpenBSD), Mesa should work on &os;, OpenBSD,
|
|
and hopefully on other BSD flavors without additional
|
|
patches.</li>
|
|
</ul>
|
|
|
|
<p>Several users tested the driver. Andriy Gapon, Jonathan
|
|
Gray, and Mark Kettenis (of OpenBSD) submitted patches. kyzh
|
|
kindly donated several discrete cards from different series.
|
|
A big thanks to all those contributors!</p>
|
|
|
|
<p>The driver is still not stable enough for a wider call for
|
|
testers.</p>
|
|
</body>
|
|
|
|
<help>
|
|
<task>Write instructions for the wiki to explain how to test the
|
|
driver.</task>
|
|
</help>
|
|
</project>
|
|
|
|
<project cat='kern'>
|
|
<title>Realtek RTL8188CU/RTL8192CU USB Wireless Driver</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Rui</given>
|
|
<common>Paulo</common>
|
|
</name>
|
|
<email>rpaulo@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<body>
|
|
<p>The <tt>urtwn(4)</tt> driver was imported from OpenBSD. This
|
|
is a driver for very small Realtek USB WiFi cards which are pretty
|
|
inexpensive and can do 802.11n at the maximum theoretical speed
|
|
of 150 Mbps. They make a good addition to embedded systems such
|
|
as the Raspberry Pi and the BeagleBone. The driver requires
|
|
firmware that is available in the &os; Ports Collection
|
|
(<tt>net/urtwn-firmware-kmod</tt>). Note that 802.11n is not
|
|
yet supported.</p>
|
|
</body>
|
|
</project>
|
|
|
|
<project cat='kern'>
|
|
<title>ZFS TRIM and Enhanced <tt>BIO_DELETE</tt> Support</title>
|
|
|
|
<contact>
|
|
<person>
|
|
<name>
|
|
<given>Pawel Jakub</given>
|
|
<common>Dawidek</common>
|
|
</name>
|
|
<email>pjd@FreeBSD.org</email>
|
|
</person>
|
|
|
|
<person>
|
|
<name>
|
|
<given>Steven</given>
|
|
<common>Hartland</common>
|
|
</name>
|
|
<email>smh@FreeBSD.org</email>
|
|
</person>
|
|
</contact>
|
|
|
|
<body>
|
|
<p>As of the end of June, &os;'s ZFS implementation now includes
|
|
TRIM support in <tt>head</tt>, <tt>stable/9</tt>, and
|
|
<tt>stable/8</tt> branches. This allows ZFS to help maintain
|
|
high performance on flash-based devices such as SSD's even under
|
|
high-load conditions.</p>
|
|
|
|
<p>When creating new pools and adding new devices to existing
|
|
pools it first performs a full-device level TRIM to help ensure
|
|
optimum starting performance. This behaviour can be overridden
|
|
by setting the <tt>vfs.zfs.vdev.trim_on_init</tt> sysctl
|
|
variable to <tt>0</tt> if for example the disks are new or have
|
|
already been secure erased, which can also now be done using
|
|
<tt>camcontrol(8)</tt> security actions.</p>
|
|
|
|
<p>In order to support TRIM, the kernel requires the underlying
|
|
device driver supports <tt>BIO_DELETE</tt>. This is currently
|
|
mapped through to hardware methods such as ATA TRIM and SCSI
|
|
UNMAP, which are commonly supported by SSDs via CAM.</p>
|
|
|
|
<p>In order to increase the supported hardware base, CAM's SCSI
|
|
layer was also enhanced to allow ATA TRIM via SATL ATA
|
|
Passthrough to be used in addition to the existing UNMAP and WS
|
|
methods. This allows SATA disks attached to SCSI controllers
|
|
with CAM based drivers such as <tt>mps(4)</tt> and
|
|
<tt>mpt(4)</tt> to provide delete support.</p>
|
|
|
|
<p>Stats for ZFS TRIM can be monitored by looking at the sysctl
|
|
variables under <tt>kstat.zfs.misc.zio_trim</tt> in addition to
|
|
live GEOM delete stats via the <tt>gstat -d</tt> command.</p>
|
|
|
|
<p>This project was sponsored by <a
|
|
href="http://www.multiplay.com">Multiplay</a> and implemented by
|
|
Pawel Jakub Dawidek.</p>
|
|
</body>
|
|
</project>
|
|
</report>
|