doc/en_US.ISO8859-1/htdocs/news/status/report-2013-04-2013-06.xml
2013-07-03 09:01:36 +00:00

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 &amp; 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 &mdash;
<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 &mdash; including all on-board
peripherals &mdash; 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;&nbsp;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;&nbsp;9.2-RELEASE process will begin July 6, 2013.
Unless any critical issues arise, &os;&nbsp;9.2-RELEASE is
expected to be available late August or early September.</p>
<p>Users tracking the &os;&nbsp;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 &mdash; according to <a
href="http://portscout.freebsd.org/kde@freebsd.org.html">PortScout</a>
&mdash; <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&aacute;bor</given>
<common>K&ouml;vesd&aacute;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 &mdash; 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&eacute;bastien</given>
<common>P&eacute;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>