<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE report PUBLIC "-//FreeBSD//DTD FreeBSD XML Database for Status
Report//EN"
"http://www.FreeBSD.org/XML/www/share/sgml/statusreport.dtd">
<!-- $FreeBSD$ -->
<report>
  <date>
    <month>January - March</month>

    <year>2008</year>
  </date>

  <section>
    <title>Introduction</title>

    <p>This Status Report covers FreeBSD related projects between January
    and March 2008. During this time FreeBSD 7.0 was released. 
    <a href="http://www.bsdcan.org/">BSDCan</a>

    is upon us with the Developer Summit starting the 14th and the
    Conference starting the 16th.</p>

    <p>Thanks to all the reporters for the excellent work! We hope you
    enjoy reading.</p>
  </section>

  <category>
    <name>soc</name>

    <description>Google Summer of Code</description>
  </category>

  <category>
    <name>proj</name>

    <description>Projects</description>
  </category>

  <category>
    <name>team</name>

    <description>FreeBSD Team Reports</description>
  </category>

  <category>
    <name>kern</name>

    <description>Kernel</description>
  </category>

  <category>
    <name>docs</name>

    <description>Documentation</description>
  </category>

  <project cat='team'>
    <title>FreeBSD Bugbusting Team</title>

    <contact>
      <person>
        <name>
          <given>Ceri</given>

          <common>Davies</common>
        </name>

        <email>bugmeister_at_freebsd_dot_org</email>
      </person>

      <person>
        <name>
          <given>Remko</given>

          <common>Lodder</common>
        </name>

        <email>bugmeister_at_freebsd_dot_org</email>
      </person>

      <person>
        <name>
          <given>Mark</given>

          <common>Linimon</common>
        </name>

        <email>bugmeister_at_freebsd_dot_org</email>
      </person>
    </contact>

    <links>
      <url href="http://www.freebsd.org/support.html#gnats">GNATS</url>

      <url href="http://wiki.freebsd.org/BugBusting/Resources">BugBusting
      Resources</url>

      <url href="http://wiki.freebsd.org/Bugathons/February2008">February
      2008 Bugathon</url>

      <url
      href="http://people.freebsd.org/~linimon/studies/prs/recentprs.txt">
      new PRs in the last 7 days</url>

      <url
      href="http://people.freebsd.org/~linimon/studies/prs/recommended_prs.txt">
      PRs recommended for committer evaluation</url>

      <url
      href="http://people.freebsd.org/~linimon/studies/prs/stalefeedback.txt">
      feedback PRs with no change in 2 months</url>
    </links>

    <body>
      <p>As one of the results of our January and February bugathons, we
      have granted Volker Werth (vwe@) direct access to GNATS. During the
      past few months he has been instrumental in working on several
      hundred PRs (mainly src-related), and either closing them or
      helping users work through issues they are having. There have been
      several commits to the src tree that directly resulted from this.
      Welcome Volker!</p>

      <p>As well, several new people are assisting us in classifying
      incoming PRs, working with users, and reviewing patches. Among the
      most active are Bruce Cran, Dylan Cochran, and Harrison Grundy. We
      appreciate everyone's efforts.</p>

      <p>As a direct result of the above, we have been able to hold the
      overall PR count down to around 5300 (the peak was around 5500).
      despite the facts that PR submissions have jumped recently, and the
      ports PR backlog is a little higher than recent trends (due to the
      long freeze/slush cycle). What is most encouraging, however, is not
      the absolute number, as much as that we are handling incoming PRs
      much more quickly and completely. While we are still not where we
      need to be, this trend is very encouraging.</p>

      <p>As well, The Bugbusting Team has learned some lessons about how
      we can best involve new people in bugbusting, e.g., how to best
      leverage people who have varying levels of experience and areas of
      interest. Our old response of "just look through the bug reports
      and let us know if you see anything that needs doing" tends to
      discourage all but the most highly-motivated. Some of these ideas
      are being studied to figure how to change our process flow.</p>

      <p>There are still a number of good technical suggestions from the
      two Bugathons that need to be written up and discussed. The first
      few have resulted in the following: there are a few new web pages
      that include: new PRs in the last 7 days; the web representation of
      the "recommended by bugbusting team" list; and "PRs in feedback
      with no change for 2 months". (See above). Many more need to be
      added.</p>

      <p>Much of the work of the second Bugathon was in identifying and
      closing PRs for which fixes had already been committed. Others were
      identified and relabled as 'patched' to move them along.</p>
    </body>

    <help>
      <task>Think of some way for committers to only view PRs that have
      been in some way 'vetted' or 'confirmed.'</task>

      <task>Generate more publicity for what we've already got in place,
      and for what we intend to do next.</task>

      <task>Define new categories, classifications, and states for PRs,
      that will better match our workflow.</task>
    </help>
  </project>

  <project cat='proj'>
    <title>ProPolice support for FreeBSD</title>

    <contact>
      <person>
        <name>
          <given>Jérémie</given>

          <common>Le Hen</common>
        </name>

        <email>jeremie@le-hen.org</email>
      </person>
    </contact>

    <links>
      <url href="http://tataz.chchile.org/~tataz/FreeBSD/SSP/">
      FreeBSD/SSP</url>
    </links>

    <body>
      <p>This patch modifies the build infrastructure in order to use
      GCC's stack-smashing protection (SSP, aka ProPolice) when building
      world, kernel and ports. Don't forget to see the website and
      especially the FAQ for a list of ports that fail to build with
      ProPolice. The patch extends the meaning of src.conf(5) WITHOUT_SSP
      so as to prevent both building libssp and using ProPolice when
      compiling. An interesting thing to note is that libssp is GNU
      licensed (it is provided with GCC 4.2.1) but since libc includes
      the mandatory symbols, programs won't be linked against GNU libssp.
      A new knob USE_SSP has been also added for the ports
      infrastructure, you can set it to "yes" in make.conf(5) and use 
      <tt>USE_SSP=</tt>

      on command-line to disable ProPolice for some ports. The patch has
      been reviewed and should hopefully be committed soon. The port part
      hasn't been reviewed yet, though.</p>
    </body>
  </project>

  <project cat='soc'>
    <title>finstall - Graphical installer for FreeBSD</title>

    <contact>
      <person>
        <name>
          <given>Ivan</given>

          <common>Voras</common>
        </name>

        <email>ivoras@freebsd.org</email>
      </person>
    </contact>

    <links>
      <url href="http://wiki.freebsd.org/finstall" />

      <url href="http://sourceforge.net/projects/finstall" />
    </links>

    <body>
      <p>"finstall" is a graphical installer project for FreeBSD,
      sponsored by Google during the 2007 Summer of Code. Its goal is to
      create a modern installer, usable by both novice users and experts.
      Because it is divided into front end and back end, it can
      potentially be used for advanced purposes as system configuration,
      remote and custom installs, etc. The project has resulted in a
      simple installer ISO image for i386 that can be used for new
      installations on empty hard drives. Development has continued
      post-SoC but somewhat slowly; recently implemented features include
      ZFS support and BSDStats support. To attract more potential
      developers (especially those without an account on FreeBSD's
      official development systems), the project has moved to
      SourceForge. Future development plans include support for headless
      / remote installs, partitioning, etc. Talks about finstall will be
      given at BSDCan 2008.</p>
    </body>

    <help>
      <task>Remote / headless install support.</task>

      <task>Better partitioning support in the front end.</task>

      <task>GPT boot support.</task>

      <task>Fine grained package selection support.</task>
    </help>
  </project>

  <project cat='team'>
    <title>The FreeBSD Foundation</title>

    <contact>
      <person>
        <name>
          <given>Deb</given>

          <common>Goodkin</common>
        </name>

        <email>deb@FreeBSD.org</email>
      </person>
    </contact>

    <links>
      <url href="http://www.freebsdfoundation.org">The FreeBSD Foundation
      Website</url>

      <url href="http://www.freebsdfoundation.org/subscribe.shtml">
      FreeBSD Foundation Mailing List</url>
    </links>

    <body>
      <p>The foundation provided legal counsel for the project to
      understand the impact of GPLv3 on the project and to create a
      policy on software licenses. We approved a budget of $250,000 for
      2008. We were a sponsor for AsiaBSDCon and provided travel grants
      to three people to attend the conference. We are a sponsor for
      BSDCan and the BSDCan Developer Summit. We have approved travel
      grants for 10 people to attend BSDCan. We are supporting projects
      that will provide Java 1.6 binaries for FreeBSD 6.3 and 7.0. Join
      our mailing list to receive monthly updates. See you at BSDCan!</p>
    </body>
  </project>

  <project cat='docs'>
    <title>Ideas Web Application</title>

    <contact>
      <person>
        <name>
          <given>Murray</given>

          <common>Stokely</common>
        </name>

        <email>murray@FreeBSD.org</email>
      </person>
    </contact>

    <links>
      <url href="http://apps.stokely.org/ideas/">Idea Database</url>

      <url href="http://wiki.freebsd.org/IdeasWebApp">Design
      Document</url>
    </links>

    <body>
      <p>A prototype web application has been written for the
      http://www.FreeBSD.org website which allows authenticated users to
      add new development ideas or comment and vote on ideas added by
      others. This application is a proposed replacement for the static
      webpage that is currently maintained with project ideas for summer
      of code students and others looking to get involved with
      FreeBSD.</p>

      <p>Some of the features currently available include:</p>

      <ul>
        <li>Allows anyone to propose a new idea.</li>

        <li>Allows anyone to comment and vote on previously proposed
        ideas.</li>

        <li>Provides an RSS feed of the newest ideas.</li>

        <li>Provides an RSS feed of the comments/votes for any specific
        idea.</li>

        <li>Allows one to sort and search the ideas list by category,
        proposer, votes, summary title, or full text, and subscribe to
        RSS feed of search results.</li>

        <li>Anonymous ideas/comments are hidden by default until cleared
        by a moderator.</li>

        <li>Moderator bits to be set for certain users so that they can
        moderate the above (can subscribe to an rss file for unmoderated
        ideas and comments needing their attention).</li>

        <li>Import functionality to import the current ideas.xml
        file.</li>

        <li>Graphs and statistics about the ideas in the database are
        provided.</li>
      </ul>

      <p>The code is checked into perforce under 
      <strong>//depot/user/murray/www/apps/django/ideas/...</strong>

      and I would eventually like to see this hosted on FreeBSD.org
      hardware, linked from the main website, and checked into 
      <strong>www/apps/django/ideas</strong>.</p>
    </body>

    <help>
      <task>A thorough security review of the code is needed. If you have
      experience with reviewing web applications for sql injection,
      cross-site scripting, and other vulnerabilities please contact me.
      The application uses the Django framework.</task>

      <task>Better import/export tools to get the data from our current
      ideas.xml web app into the database and back out again.</task>

      <task>More usability review and suggestions needed to make this a
      compelling replacement to the current static XML system.</task>
    </help>
  </project>

  <project cat='kern'>
    <title>Multi-IPv4/v6/no-IP jails</title>

    <contact>
      <person>
        <name>
          <given>Bjoern A.</given>

          <common>Zeeb</common>
        </name>

        <email>bz@FreeBSD.org</email>
      </person>
    </contact>

    <links>
      <url href="http://sources.zabbadoz.net/freebsd/jail.html">Webpage
      for regularly updates and patches</url>

      <url
      href="http://p4web.freebsd.org/@md=d&amp;cd=//depot/user/bz/jail/&amp;rc=s&amp;c=kmz@//depot/user/bz/jail/?ac=43&amp;mx=50">
      Perforce tree</url>
    </links>

    <body>
      <p>The multi-IPv4/v6 jails project was resumed in early January
      after previous work had been abandoned in 2006.</p>

      <p>As an alternate solution to full network stack virtualization,
      this work shall provide a lightweight solution for multi-IP
      virtualization. The changes are even more important because of the
      emerging demand for IPv6.</p>

      <p>The current status includes updated user space utilities. Kernel
      side has grown support for multiple IP addresses for both address
      families in jails, as well as no IP addresses at all. 32bit and
      jail version 1 backward compatibility support were implemented.</p>

      <p>The development was moved to perforce and patches for early
      adopters are available.</p>
    </body>

    <help>
      <task>The TODO list can be found in the TODO file in
      perforce.</task>

      <task>Regression tests and review.</task>
    </help>
  </project>

  <project cat='team'>
    <title>The Ports Collection</title>

    <contact>
      <person>
        <name>
          <given>Mark</given>

          <common>Linimon</common>
        </name>

        <email>linimon@FreeBSD.org</email>
      </person>
    </contact>

    <links>
      <url href="http://www.freebsd.org/ports/">The FreeBSD Ports
      Collection</url>

      <url
      href="http://www.freebsd.org/doc/en_US.ISO8859-1/articles/contributing-ports/">
      Contributing to the FreeBSD Ports Collection</url>

      <url href="http://people.freebsd.org/~fenner/portsurvey/">FreeBSD
      ports unfetchable distfile survey (Bill Fenner's report)</url>

      <url href="http://portsmon.FreeBSD.org/index.html">FreeBSD ports
      monitoring system</url>

      <url href="http://www.freebsd.org/portmgr/index.html">The FreeBSD
      Ports Management Team</url>

      <url href="http://tinderbox.marcuscom.com">marcuscom
      Tinderbox</url>
    </links>

    <body>
      <p>portmgr is pleased to announce that Florent Thoumie (flz) has
      joined us. We immediately put him to work on cleaning up the pkg_*
      tools.</p>

      <p>After the extended freeze and then slush for 7.0R, we have
      finally been able to start catching up on the backlog that built up
      during that time.</p>

      <p>The ports count is now over 18,200. The PR count has only
      dropped to around 1000. We are still turning around PRs fairly
      quickly, but are not making progress on the backlog.</p>

      <p>We have only been able to do 2 -exp runs recently. Although a
      number of PRs have been closed, we are still at 57 portmgr PRs.</p>

      <p>During this period, GNOME has been updated to 2.22.0. Also, a
      new port for linux emulation (emulators/linux_base-f8) has been
      introduced for general testing.</p>

      <p>XFree86 has been removed. (It had been deprecated for quite some
      time; modern development seems to be happening in X.Org.) This
      simplifies the infrastructure. A few other stale ports have been
      reaped.</p>

      <p>The following large changes are in the pipeline:</p>

      <ul>
        <li>Upgrade of KDE to 4.0 (being tested)</li>

        <li>Upgrade of automake to 1.10.1</li>

        <li>Upgrade of gettext to 0.17</li>

        <li>Upgrade of libtool to 1.5.26 (not 2.x at this time)</li>

        <li>Upgrade of m4 to 1.14.11</li>

        <li>Introduction of Perl 5.10</li>
      </ul>

      <p>We are currently building packages for amd64-5, amd64-6,
      amd64-7, amd64-8, i386-5, i386-6, i386-7, i386-8, sparc64-6, and
      sparc64-7. Note, however, that RELENG_5 will reach end of its
      supported life May 31, 2008, and package builds for those 2
      buildenvs will stop as of that date.</p>

      <p>We have been able to use some new machines to speed up the
      package builds (in particular, amd64) -- in fact, to the point that
      we are now outrunning the capacity of some of the mirrors to stay
      current. A solution for the problem is being investigated.</p>

      <p>We have added 4 new committers since the last report.</p>
    </body>

    <help>
      <task>Most of the remaining ports PRs are "existing port/PR
      assigned to committer". Although the maintainer-timeout policy is
      helping to keep the backlog down, we are going to need to do more
      to get the ports in the shape they really need to be in.</task>

      <task>Although we have added many maintainers, we still have over
      4,000 unmaintained ports (see, for instance, the list on portsmon).
      We are always looking for dedicated volunteers to adopt at least a
      few unmaintained ports. As well, the packages on amd64 and sparc64
      lag behind i386, and we need more testers for those.</task>
    </help>
  </project>

  <project cat='proj'>
    <title>Rewriting the TTY layer</title>

    <contact>
      <person>
        <name>
          <given>Ed</given>

          <common>Schouten</common>
        </name>

        <email>ed@80386.nl</email>
      </person>
    </contact>

    <links>
      <url
      href="http://p4web.freebsd.org/@md=d&amp;cd=//&amp;c=7ru@//depot/user/ed/mpsafetty/?ac=83">
      Perforce branch</url>
    </links>

    <body>
      <p>About 10 weeks ago I started rewriting the TTY layer. The
      existing TTY code is about 20-25 years old and has been extended
      over and over, without really improving its design.</p>

      <p>The new TTY layer will allow us to remove usage of the Giant
      from drivers. It also includes an improved buffering mechanism,
      which has more constant-time operations and prevents copying data
      multiple times when moving data to userspace.</p>

      <p>Right now the code should work quite well for most users. The
      code in Perforce includes a new pseudo-TTY driver, which is finally
      capable of destroying TTY's and their associated buffers when
      needed. The syscons, uart and ucom drivers have also been ported to
      the new TTY layer.</p>

      <p>The code is quite complete, but it still misses driver
      interaction for carrier/connection detection and sending breaks.
      Many drivers still need to be ported.</p>
    </body>

    <help>
      <task>People who are willing to test. Contact me if you cannot
      perform Perforce checkouts.</task>

      <task>Not all drivers have been ported. Patches or hardware are
      welcome.</task>

      <task>Some changes could already be backported.</task>
    </help>
  </project>

  <project cat='soc'>
    <title>Summer of Code</title>

    <contact>
      <person>
        <name>
          <given>Murray</given>

          <common>Stokely</common>
        </name>

        <email>murray@FreeBSD.org</email>
      </person>

      <person>
        <name>
          <given>Robert</given>

          <common>Watson</common>
        </name>

        <email>rwatson@FreeBSD.org</email>
      </person>
    </contact>

    <links>
      <url href="http://www.FreeBSD.org/projects/summerofcode.html" />

      <url href="http://wiki.freebsd.org/SummerOfCode" />
    </links>

    <body>
      <p>The student application period for the Summer of Code is over
      and the mentors and administrators are carefully reviewing the
      applications, clarifying the project parameters, and deciding which
      students to recommend for funding from Google.</p>

      <p>This year we received over 100 student applications from
      students in 26 different countries. We also have over 60 potential
      mentors that we are currently matching up with students. We will
      soon announce the winning students on the summer of code website
      and the process of bringing these students into our development
      community will begin.</p>

      <p>Each student will again be given Perforce and wiki access and
      all developers are encouraged to contact any students working in
      related areas, as we don't want the students to have access to our
      community only through their formal assigned mentor.</p>
    </body>

    <help>
      <task>Help introduce our new summer of code students to FreeBSD
      development. Some students are very experienced at developing on
      FreeBSD and others are new to our environment and could use more
      assistance.</task>

      <task>Update the ideas database with new project ideas that you'd
      like to see for next year's Summer of Code.</task>
    </help>
  </project>

  <project cat='kern'>
    <title>UnionFS Improvements</title>

    <contact>
      <person>
        <name>
          <given>Daichi</given>

          <common>GOTO</common>
        </name>

        <email>daichi@freebsd.org</email>
      </person>

      <person>
        <name>
          <given>Masanori</given>

          <common>OZAWA</common>
        </name>

        <email>ozawa@ongs.co.jp</email>
      </person>
    </contact>

    <links>
      <url href="http://people.freebsd.org/~daichi/unionfs/" />
    </links>

    <body>
      <p>Our implementation of UnionFS has been merged into HEAD,
      7-stable and 6-stable already. Now we are working on UnionFS
      stability improvement. We have developed the following 5 patches.
      If you are interested, please try them and report your results.</p> 
      <ul>
        <li>
          <a
          href="http://people.freebsd.org/~daichi/unionfs/experiments/unionfs-p20-1.diff">
          unionfs-p20-1.diff</a>
        </li>

        <li>
          <a
          href="http://people.freebsd.org/~daichi/unionfs/experiments/unionfs-p20-2.diff">
          unionfs-p20-2.diff</a>
        </li>

        <li>
          <a
          href="http://people.freebsd.org/~daichi/unionfs/experiments/unionfs-p20-3.diff">
          unionfs-p20-3.diff</a>
        </li>

        <li>
          <a
          href="http://people.freebsd.org/~daichi/unionfs/experiments/unionfs-p20-4.diff">
          unionfs-p20-4.diff</a>
        </li>

        <li>
          <a
          href="http://people.freebsd.org/~daichi/unionfs/experiments/unionfs-p20-5.diff">
          unionfs-p20-5.diff</a>
        </li>
      </ul>
    </body>

    <help>
      <task>Robert Watson has pointed out that unionfs-p20-5.diff has
      some problems around how it treats sockets. We are researching
      those.</task>
    </help>
  </project>

  <project cat='proj'>
    <title>USB</title>

    <contact>
      <person>
        <name>
          <given>Hans Petter</given>

          <common>Sirevaag Selasky</common>
        </name>

        <email>hselasky@freebsd.org</email>
      </person>
    </contact>

    <links>
      <url
      href="http://p4web.freebsd.org/@md=d&amp;cd=//depot/projects/usb/src/sys/dev/usb/&amp;c=A2y@//depot/projects/usb/src/sys/dev/usb/?ac=83">
      Current USB files</url>

      <url
      href="http://p4web.freebsd.org/@md=d&amp;cd=//depot/projects/usb/src/sys/dev/usb/&amp;cdf=//depot/projects/usb/src/sys/dev/usb/README&amp;sr=136513&amp;c=2Ro@//depot/projects/usb/src/sys/dev/usb/README">
      Current USB API README file</url>

      <url href="http://www.selasky.org/hans_petter/usb4bsd">Install
      instructions</url>
    </links>

    <body>
      <p>During the last three months there has mostly been bugfix and
      documentation commits. The code is currently in a stable and full
      featured state. The FreeBSD P4 USB project now has a fully
      symmetric USB stack at API level and has been tested to work with
      AT91RM9200 ARM based boards and USS820 based devices. There are
      currently two USB device side drivers implemented, namely CDC
      Ethernet and Mass Storage (SCSI+BBB) so that you can now make your
      custom USB Flash Disk using FreeBSD. Don't confuse USB device side
      drivers with USB host side drivers.</p>

      <p>Currently the USB P4 project is under review.</p>

      <p>Ideas and comments with regard to the new USB API are welcome on
      the FreeBSD 
      <a href="http://lists.freebsd.org/mailman/listinfo/freebsd-usb">USB
      Mailing List</a>

      .</p>
    </body>
  </project>

  <project cat='docs'>
    <title>The Spanish Documentation Project</title>

    <contact>
      <person>
        <name>
          <given>José Vicente</given>

          <common>Carrasco Vayá</common>
        </name>

        <email>carvay@FreeBSD.org</email>
      </person>

      <person>
        <name>
          <given>Gábor</given>

          <common>Kövesdán</common>
        </name>

        <email>gabor@FreeBSD.org</email>
      </person>
    </contact>

    <links>
      <url href="http://FreeBSD.org/es">FreeBSD Spanish Website</url>

      <url href="http://www.freebsd.org/doc/es_ES.ISO8859-1/">Spanish
      Translations</url>
    </links>

    <body>
      <p>We are progressing better these days again. We have made some
      updates to the website and to the Handbook, including the complete
      translation of the jails chapter. We have also added a new
      translation of an article and an another one is under review.</p>
    </body>

    <help>
      <task>Complete updating of the website.</task>

      <task>Update the Handbook and translate new chapters.</task>
    </help>
  </project>

  <project cat='docs'>
    <title>The Hungarian Documentation Project</title>

    <contact>
      <person>
        <name>
          <given>Gábor</given>

          <common>Kövesdán</common>
        </name>

        <email>gabor@FreeBSD.org</email>
      </person>

      <person>
        <name>
          <given>Gábor</given>

          <common>Páli</common>
        </name>

        <email>pgj@FreeBSD.org</email>
      </person>
    </contact>

    <links>
      <url href="http://FreeBSD.org/hu">Hungarian website</url>

      <url href="http://www.freebsd.org/doc/hu_HU.ISO8859-2/articles/">
      Hungarian articles</url>
    </links>

    <body>
      <p>We are pleased to welcome Gábor Páli as a doc committer. He has
      successfully completed the translation of the
      FreeBSD&nbsp;Handbook. The final review of his work is pending now
      and we will import it soon to the repository. We consider the
      translation of the release notes the next important milestone of
      this translation project.</p>
    </body>

    <help>
      <task>Review the translated Handbook.</task>

      <task>Translate release notes for -CURRENT and 7.X.</task>
    </help>
  </project>
</report>

