Page MenuHomeFreeBSD

D24619.id.diff
No OneTemporary

D24619.id.diff

Index: head/en_US.ISO8859-1/books/developers-handbook/testing/chapter.xml
===================================================================
--- head/en_US.ISO8859-1/books/developers-handbook/testing/chapter.xml
+++ head/en_US.ISO8859-1/books/developers-handbook/testing/chapter.xml
@@ -419,8 +419,7 @@
<para>The official Tinderbox build servers are hosted by <link
xlink:href="http://www.sentex.ca">Sentex Data
- Communications</link>, who also host the <link
- xlink:href="https://www.freebsd.org/projects/netperf/cluster.html">&os;
+ Communications</link>, who also host the &os;
Netperf Cluster</link>.</para>
<para>Three build servers currently exist:</para>
Index: head/en_US.ISO8859-1/htdocs/projects/Makefile
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/Makefile
+++ head/en_US.ISO8859-1/htdocs/projects/Makefile
@@ -20,6 +20,6 @@
INDEXLINK= projects.html
-SUBDIR= busdma ideas mips netperf
+SUBDIR= mips
.include "${DOC_PREFIX}/share/mk/web.site.mk"
Index: head/en_US.ISO8859-1/htdocs/projects/busdma/Makefile
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/busdma/Makefile
+++ head/en_US.ISO8859-1/htdocs/projects/busdma/Makefile
@@ -1,17 +0,0 @@
-# Summary for busdma project status
-#
-# $FreeBSD$
-
-MAINTAINER= rwatson
-
-.if exists(../Makefile.conf)
-.include "../Makefile.conf"
-.endif
-.if exists(../Makefile.inc)
-.include "../Makefile.inc"
-.endif
-
-DOCS= index.xml
-DATA= style.css
-
-.include "${DOC_PREFIX}/share/mk/web.site.mk"
Index: head/en_US.ISO8859-1/htdocs/projects/busdma/index.xml
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/busdma/index.xml
+++ head/en_US.ISO8859-1/htdocs/projects/busdma/index.xml
@@ -1,1540 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//FreeBSD//DTD XHTML 1.0 Transitional-Based Extension//EN"
-"http://www.FreeBSD.org/XML/share/xml/xhtml10-freebsd.dtd" [
-<!ENTITY title "FreeBSD busdma and SMPng driver conversion project">
-<!ENTITY email 'mux'>
-
-<!-- Status levels -->
-<!ENTITY status.na "<font xmlns='http://www.w3.org/1999/xhtml' color='magenta'>N/A</font>">
-<!ENTITY status.done "<font xmlns='http://www.w3.org/1999/xhtml' color='green'>Done</font>">
-<!ENTITY status.wip "<font xmlns='http://www.w3.org/1999/xhtml' color='blue'>In progress</font>">
-<!ENTITY status.untested "<font xmlns='http://www.w3.org/1999/xhtml' color='orange'>Needs testing</font>">
-<!ENTITY status.new "<font xmlns='http://www.w3.org/1999/xhtml' color='red'>Not done</font>">
-<!ENTITY status.unknown "<font xmlns='http://www.w3.org/1999/xhtml' color='purple'>Unknown</font>">
-
-<!-- The list of contributors was moved to a separate file so that it can
- be used by other documents in the FreeBSD web site. -->
-]>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>&title;</title>
-
- <cvs:keyword xmlns:cvs="http://www.FreeBSD.org/XML/CVS">$FreeBSD$</cvs:keyword>
- </head>
-
- <body class="navinclude.developers">
-
- <h2>Contents</h2>
- <ul>
- <li><a href="#goal">Project Goal</a></li>
- <li><a href="#resources">Resources and Links</a></li>
- <li><a href="#platform-status">Platform Support Status</a></li>
- <li><a href="#ifnet-status">Network Interface Driver Status</a></li>
- <li><a href="#storage-status">Storage Device Driver Status</a></li>
- <li><a href="#misc-status">Miscellaneous Device Driver Status</a></li>
- <li><a href="#doc-status">Documentation Status</a></li>
- </ul>
-
- <a name="goal"></a>
- <h2>Project Goal</h2>
-
- <p><b>busdma</b></p>
- <p>The busdma interfaces permit hardware device drivers to operate
- on a variety of platforms avoiding the encoding of platform-specific
- access methods into drivers. This lowers the maintenance costs
- for drivers across platforms, and improves the chances that a driver
- will "just work" on a new platform. Modifying a driver to make use
- of busdma is relatively straight forward, but does require
- familiarity with both the device driver and busdma primitives.
- For busdma to be used in FreeBSD, two sets of changes are generally
- required: adaptation of the busdma implementation to run on all
- platforms, and adaptation of drivers to use the framework. As such,
- status information on this project is broken down into platform
- support, and driver support (sorted by category). Completing
- this work requires a thorough audit of the system device drivers,
- then prioritized conversion of drivers. Drivers are also
- expected to use bus_space functions, and this column is
- sometimes used to denote a driver in need of conversion to
- bus_space as well.</p>
-
- <p><b>INTR_MPSAFE</b></p>
- <p>Hardware drivers register their interrupt handler with the
- <code>bus_setup_intr()</code> function. Setting the flag
- <code>INTR_MPSAFE</code> tells the system interrupt code
- to call the interrupt routine without holding the Giant
- mutex. This can give a significant performance gain on SMP
- systems.</p>
- <p>Drivers can set this flag even if they are not fully locked
- down as long as their interrupt routine is careful about not
- touching other data structures in the driver. An easy way to
- do this is to check and clear the hardware interrupt status
- registers and then schedule the interrupt processing for a
- taskqueue or kernel thread.</p>
-
- <p><b>SMPng locked</b></p>
- <p>Drivers should employ mutexes and sx locks to protect their
- data structures and hardware registers from competing threads.
- Mutex operations are somewhat expensive, so a good strategy is
- combine as many atomic operations into a single mutex acquisition
- as possible.</p>
-
- <p><b>p!=a safety</b></p>
- <p>Intel PAE support requires that pointers and physical address
- representations be of differing sizes. This means that drivers
- must be written to use vm_paddr_t or bus_addr_t rather than
- assuming that physical addresses can be represented using a
- void *. In addition, format strings and casts must be
- carefully handled.</p>
-
- <p>The task list below is not intended to be complete, but does
- represent a set of relevant and/or important components of the
- overall work. The "Responsible" field identifies a developer who
- has expressed willingness to be responsible for completing the
- identified task; this doesn't preclude others working on it,
- but suggests that coordination with the responsible party might
- be appropriate so as to avoid unnecessary duplication of work,
- and to maximize forward progress. If beginning work on a new
- area of substantial size, or one that appears unclaimed, it may
- be worth dropping an e-mail to &a.mux; to see if any progress
- has been made.</p>
-
- <p>The definition of the date field varies depending on the status
- of a task. For completed tasks, it refers to the date completed
- or reported completed. For in-progress tasks, it refers to the
- date of the last update of the entry. For stalled tasks, it
- refers to the date that the task was declared stalled. For
- new tasks, it refers to the date the task was added to the list.</p>
-
- <p>Tasks are sorted first by status, then by date.</p>
-
- <a name="resources"></a>
- <h2>Resources and Links</h2>
- <p>A series of manual pages related to this project can be found
- here:</p>
-
- <ul>
- <li>Physical Address Extensions -
- <a href="&cgibase;/man.cgi?query=pae&amp;sektion=4&amp;arch=i386">pae(4)</a></li>
- <li>Bus and Machine-independent DMA Mapping Interface -
- <a href="&cgibase;/man.cgi?query=busdma&amp;sektion=9">bus_dma(9)</a></li>
- <li>Machine-dependent part of the Virtual Memory (VM) system -
- <a href="&cgibase;/man.cgi?query=pmap&amp;sektion=9">pmap(9)</a></li>
- <li>Resource Management Functions -
- <a href="&cgibase;/man.cgi?query=rman&amp;sektion=9">rman(9)</a></li>
- </ul>
-
- <a name="platform-status"></a>
- <h2>Platform Support Status</h2>
-
- <table class="tblbasic">
- <tr>
- <th> Task </th>
- <th> Responsible </th>
- <th> Last updated </th>
- <th> Status </th>
- <th> Details </th>
- </tr>
-
- <tr>
- <td>amd64</td>
- <td>&a.peter;</td>
- <td>July 1, 2003</td>
- <td>&status.done;</td>
- <td>Fully supported.</td>
- </tr>
-
- <tr>
- <td>arm</td>
- <td>&a.cognet;</td>
- <td>December 23, 2005</td>
- <td>&status.done;</td>
- <td>Fully supported.</td>
- </tr>
-
- <tr>
- <td>ia64</td>
- <td>&a.marcel;</td>
- <td>December 10, 2002</td>
- <td>&status.done;</td>
- <td>There may be problems for systems with large amounts
- of memory.</td>
- </tr>
-
- <tr>
- <td>i386</td>
- <td>&a.sam;</td>
- <td>December 9, 2002</td>
- <td>&status.done;</td>
- <td>Fully supported.</td>
- </tr>
-
- <tr>
- <td>powerpc</td>
- <td>&a.grehan;</td>
- <td>January 15, 2003</td>
- <td>&status.done;</td>
- <td>Fully supported.</td>
- </tr>
-
- <tr>
- <td>sparc64</td>
- <td>&a.tmm;</td>
- <td>January 6, 2003</td>
- <td>&status.done;</td>
- <td>Fully supported.</td>
- </tr>
-
- </table>
-
- <a name="ifnet-status"></a>
- <h2>Network Interface Driver Status</h2>
-
- <table class="tblbasic">
- <tr>
- <th> Driver </th>
- <th> Responsible </th>
- <th> Last updated </th>
- <th> busdma </th>
- <th> INTR_MPSAFE </th>
- <th> SMPng locked </th>
- <th> a!=p </th>
- <th> Notes </th>
- </tr>
-
- <tr>
- <td> if_an </td>
- <td> &nbsp; </td>
- <td> December 23, 2005 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_ar </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> kvtop() </td>
- </tr>
-
- <tr>
- <td> if_arl </td>
- <td> &nbsp; </td>
- <td> August 27, 2006 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_ath </td>
- <td> &nbsp; </td>
- <td> August 27, 2006 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_aue </td>
- <td> &nbsp; </td>
- <td> September 3, 2006 </td>
- <td> &status.na; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_awi </td>
- <td> &nbsp; </td>
- <td> August 27, 2006 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_axe </td>
- <td> &nbsp; </td>
- <td> September 3, 2006 </td>
- <td> &status.na; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_bce </td>
- <td> &nbsp; </td>
- <td> August 25, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_bfe </td>
- <td> &a.silby; </td>
- <td> August 23, 2006 </td>
- <td> &status.done; </td>
- <td> &status.wip; </td>
- <td> &status.wip; </td>
- <td> &status.wip; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_bge </td>
- <td> &a.wpaul; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_cdce </td>
- <td> &nbsp; </td>
- <td> September 3, 2006 </td>
- <td> &status.na; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_cnw </td>
- <td> &nbsp; </td>
- <td> August 27, 2006 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_cp </td>
- <td> &a.rik; </td>
- <td> October 31, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_cs </td>
- <td> &a.imp; </td>
- <td> December 23, 2005 </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> Needs bus_space conversion </td>
- </tr>
-
- <tr>
- <td> if_ct </td>
- <td> &a.rik; </td>
- <td> October 31, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_cue </td>
- <td> &nbsp; </td>
- <td> September 3, 2006 </td>
- <td> &status.na; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_cx </td>
- <td> &a.rik; </td>
- <td> June 24, 2004 </td>
- <td> &status.done; </td>
- <td> &status.wip; </td>
- <td> &status.wip; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_dc </td>
- <td> &a.mux; </td>
- <td> August 19, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_de </td>
- <td> &a.mux; </td>
- <td> August 17, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_ed </td>
- <td> &a.imp; </td>
- <td> December 23, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_em </td>
- <td> &a.pdeuskar; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_en </td>
- <td> &a.harti; </td>
- <td> November 2, 2005 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> Locking present; not yet marked INTR_MPSAFE? </td>
- </tr>
-
- <tr>
- <td> if_ep </td>
- <td> &a.mdodd;,&a.imp; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_ex </td>
- <td> &a.imp; </td>
- <td> Dcember 23, 2005 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_fatm </td>
- <td> &a.harti; </td>
- <td> November 2, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_fwe </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_fxp </td>
- <td> &a.mux; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_gem </td>
- <td> &a.tmm; </td>
- <td> July 31, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_hatm </td>
- <td> &a.harti; </td>
- <td> November 2, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_hme </td>
- <td> &a.tmm; </td>
- <td> January 30, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_idt </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_ipw </td>
- <td> &nbsp; </td>
- <td> August 27, 2006 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_iwi </td>
- <td> &nbsp; </td>
- <td> August 27, 2006 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_ixgb </td>
- <td> &nbsp; </td>
- <td> August 21, 2006 </td>
- <td> &status.untested; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_kue </td>
- <td> &nbsp; </td>
- <td> September 3, 2006 </td>
- <td> &status.na; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_le </td>
- <td> &a.marius; </td>
- <td> January 31, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_lge </td>
- <td> &nbsp; </td>
- <td> November 23, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_lmc </td>
- <td> &nbsp; </td>
- <td> February 11, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.unknown; </td>
- <td> Untested on PAE </td>
- </tr>
-
- <tr>
- <td> if_mn </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys(). Please contact &a.phk; for info/hardware. </td>
- </tr>
-
- <tr>
- <td> if_mxge </td>
- <td> &a.gallatin; </td>
- <td> August 23, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_my </td>
- <td> &nbsp; </td>
- <td> August 17, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_nfe </td>
- <td> &nbsp; </td>
- <td> August 23, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_nge </td>
- <td> &nbsp; </td>
- <td> August 17, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_nve </td>
- <td> &nbsp; </td>
- <td> November 23, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_pcn </td>
- <td> &a.obrien; </td>
- <td> August 19, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_pdq </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> Mostly busdma, except for vtophys(). </td>
- </tr>
-
- <tr>
- <td> if_ral </td>
- <td> &nbsp; </td>
- <td> August 27, 2006 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_ray </td>
- <td> &nbsp; </td>
- <td> August 27, 2006 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_re </td>
- <td> &nbsp; </td>
- <td> May 30, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_rl </td>
- <td> &a.wpaul; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_rue </td>
- <td> &nbsp; </td>
- <td> September 3, 2006 </td>
- <td> &status.na; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_sf </td>
- <td> &nbsp; </td>
- <td> August 19, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_sis </td>
- <td> &a.wpaul; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_sk </td>
- <td> &nbsp; </td>
- <td> August 24, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_sn </td>
- <td> &a.imp; </td>
- <td> December 23, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_snc </td>
- <td> &nbsp; </td>
- <td> December 23, 2005 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> pc98 only device (although it could work with many
- cardbus bridges) </td>
- </tr>
-
- <tr>
- <td> if_sr </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_ste </td>
- <td> &nbsp; </td>
- <td> August 31, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> if_stge </td>
- <td> &a.yongari; </td>
- <td> August 23, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_ti </td>
- <td> &nbsp; </td>
- <td> December 13, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_tl </td>
- <td> &nbsp; </td>
- <td> September 15, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_tx </td>
- <td> &a.mux; </td>
- <td> April 19, 2003 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.untested; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_txp </td>
- <td> &nbsp; </td>
- <td> September 22, 2005 </td>
- <td> &status.wip; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_udav </td>
- <td> &nbsp; </td>
- <td> September 3, 2006 </td>
- <td> &status.na; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_ural </td>
- <td> &nbsp; </td>
- <td> September 3, 2006 </td>
- <td> &status.na; </td>
- <td> &status.new; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_vge </td>
- <td> &nbsp; </td>
- <td> August 23, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_vr </td>
- <td> &nbsp; </td>
- <td> April 23, 2004 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_vx </td>
- <td> &nbsp; </td>
- <td> September 22, 2005 </td>
- <td> &status.na; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> Uses PIO to copy mbufs to and from hardware. </td>
- </tr>
-
- <tr>
- <td> if_wb </td>
- <td> &nbsp; </td>
- <td> September 22, 2005 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_wi </td>
- <td> &a.sam;, &a.imp; </td>
- <td> November 4, 2003 </td>
- <td> &status.unknown; </td>
- <td> &status.done; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> This driver needs lots of help </td>
- </tr>
-
- <tr>
- <td> if_xe </td>
- <td> &a.imp; </td>
- <td> December 23, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> if_xl </td>
- <td> &a.mux; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- </table>
-
- <a name="storage-status"></a>
- <h2>Storage Device Driver Status</h2>
-
- <table class="tblbasic">
- <tr>
- <th> Driver </th>
- <th> Responsible </th>
- <th> Last updated </th>
- <th> busdma </th>
- <th> INTR_MPSAFE </th>
- <th> SMPng locked </th>
- <th> a!=p </th>
- <th> Notes </th>
- </tr>
-
- <tr>
- <td> aac </td>
- <td> &nbsp; </td>
- <td> January 31, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> Not endian clean. </td>
- </tr>
-
- <tr>
- <td> adv </td>
- <td> &nbsp; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> aha </td>
- <td> &nbsp; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.wip; </td>
- <td> &status.wip; </td>
- <td> &status.new; </td>
- <td> Uses BUSDMA, but may pun bus address with host address. </td>
- </tr>
-
- <tr>
- <td> ahb </td>
- <td> &nbsp; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> ahc </td>
- <td> &a.gibbs; </td>
- <td> January 31, 2005 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> ahd </td>
- <td> &a.gibbs; </td>
- <td> January 31, 2005 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> aic </td>
- <td> &nbsp; </td>
- <td> December 23, 2005 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> Neeeds evaluation </td>
- </tr>
-
- <tr>
- <td> amd </td>
- <td> &nbsp; </td>
- <td> December 14, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> amr </td>
- <td> &nbsp; </td>
- <td> January 30, 2005 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> asr </td>
- <td> &nbsp; </td>
- <td> January 4, 2003 </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys(). Requires major work. A new I2O framework would be desirable. </td>
- </tr>
-
- <tr>
- <td> ata </td>
- <td> &a.sos; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> buslogic </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> ciss </td>
- <td> &nbsp; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> ct </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> dpt </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> fdc </td>
- <td> &nbsp; </td>
- <td> December 23, 2005 </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> Needs evaluation </td>
- </tr>
-
- <tr>
- <td> ida </td>
- <td> &nbsp; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> iir </td>
- <td> &nbsp; </td>
- <td> March 1, 2006 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> 64-bit DMA without bouncing is possible, but needs work. </td>
- </tr>
-
- <tr>
- <td> isp </td>
- <td> &nbsp; </td>
- <td> February 8, 2003 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> ips </td>
- <td> &nbsp; </td>
- <td> January 30, 2005</td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> mlx </td>
- <td> &nbsp; </td>
- <td> February 8, 2003 </td>
- <td> &status.done; </td>
- <td> &status.wip; </td>
- <td> &status.wip; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> mly </td>
- <td> &nbsp; </td>
- <td> February 8, 2003 </td>
- <td> &status.done; </td>
- <td> &status.wip; </td>
- <td> &status.wip; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> mpt </td>
- <td> &nbsp; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> ncr </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys(). Please contact &a.phk; for a possible source
- of hardware. </td>
- </tr>
-
- <tr>
- <td> ncv </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> Needs evaluation </td>
- </tr>
-
- <tr>
- <td> nsp </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> &status.unknown; </td>
- <td> Needs evaluation </td>
- </tr>
-
- <tr>
- <td> pst </td>
- <td> &nbsp; </td>
- <td> April 11, 2003 </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> stg </td>
- <td> &nbsp; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> At least, it looks like it may well be. </td>
- </tr>
-
- <tr>
- <td> sym </td>
- <td> &nbsp; </td>
- <td> December 19, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> trm </td>
- <td> &a.cognet; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> twe </td>
- <td> &nbsp; </td>
- <td> December 9, 2002 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> wds </td>
- <td> &nbsp; </td>
- <td> February 2, 2005 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- </table>
- <a name="misc-status"></a>
- <h2>Miscellaneous Device Driver Status</h2>
-
- <table class="tblbasic">
- <tr>
- <th> Driver </th>
- <th> Responsible </th>
- <th> Last updated </th>
- <th> busdma </th>
- <th> INTR_MPSAFE </th>
- <th> SMPng locked </th>
- <th> a!=p </th>
- <th> Notes </th>
- </tr>
-
- <tr>
- <td> agp </td>
- <td> &nbsp; </td>
- <td> October 31, 2005 </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> bktr </td>
- <td> &a.cognet; </td>
- <td> January 15, 2003 </td>
- <td> &status.wip; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> digi </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> drm </td>
- <td> &a.anholt; </td>
- <td> October 27, 2003 </td>
- <td> &status.wip; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.wip; </td>
- <td> vtophys(). The locking could use some review. </td>
- </tr>
-
- <tr>
- <td> fb </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> firewire </td>
- <td> &a.simokawa; </td>
- <td> April 17, 2003 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.done; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> hfa </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys() </td>
- </tr>
-
- <tr>
- <td> hifn </td>
- <td> &a.sam; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> musycc </td>
- <td> &nbsp; </td>
- <td> &nbsp; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> vtophys(). Please contact &a.phk; for info/hardware. </td>
- </tr>
-
- <tr>
- <td> pcm </td>
- <td> &a.cognet; </td>
- <td> February 20, 2003 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &nbsp; </td>
- </tr>
-
- <tr>
- <td> ubsec </td>
- <td> &a.sam; </td>
- <td> April 13, 2004 </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> vtophys() is used in debugging printf. </td>
- </tr>
-
- <tr>
- <td> usb </td>
- <td> &a.jmg; </td>
- <td> July 24, 2003 </td>
- <td> &status.done; </td>
- <td> &status.new; </td>
- <td> &status.new; </td>
- <td> &status.untested; </td>
- <td> a!=p should be clean, but requires further testing. </td>
- </tr>
-
- </table>
-
- <a name="doc-status"></a>
- <h2>Documentation Status</h2>
-
- <table class="tblbasic">
- <tr>
- <th> Task </th>
- <th> Responsible </th>
- <th> Last updated </th>
- <th> Status </th>
- <th> Notes </th>
- </tr>
-
- <tr>
- <td> Manual pages for the busdma API </td>
- <td> &a.hmp; </td>
- <td> January 15, 2003 </td>
- <td> &status.done; </td>
- <td> &nbsp; </td>
- </tr>
- </table>
-
- </body>
-</html>
Index: head/en_US.ISO8859-1/htdocs/projects/busdma/style.css
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/busdma/style.css
+++ head/en_US.ISO8859-1/htdocs/projects/busdma/style.css
@@ -1,38 +0,0 @@
-BODY {
-}
-
-BODY TD {
- font-size: 13px;
-}
-
-BODY SMALL {
- width: 615px;
- font-size: 11px;
-}
-
-.heading {
- font-size: 15px;
- background-color: #cbd2ec;
-}
-
-.section {
- font-size: 15px;
- font-weight: bold;
- background-color: #e7e9f7;
-}
-
-.notes {
- font-size: 13px;
- font-weight: normal;
-}
-
-.main {
- width: 615px;
- height: auto;
- text-align: justify;
-}
-
-.list {
- width: 550px;
- height: auto;
-}
Index: head/en_US.ISO8859-1/htdocs/projects/ideas/Makefile
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/ideas/Makefile
+++ head/en_US.ISO8859-1/htdocs/projects/ideas/Makefile
@@ -1,18 +0,0 @@
-# FreeBSD list of projects and ideas for volunteers
-#
-# $FreeBSD$
-
-MAINTAINER= joel
-
-.if exists(../Makefile.conf)
-.include "../Makefile.conf"
-.endif
-.if exists(../Makefile.inc)
-.include "../Makefile.inc"
-.endif
-
-DATA= style.css
-
-DOCS= ideas.xml
-
-.include "${DOC_PREFIX}/share/mk/web.site.mk"
Index: head/en_US.ISO8859-1/htdocs/projects/ideas/ideas.xml
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/ideas/ideas.xml
+++ head/en_US.ISO8859-1/htdocs/projects/ideas/ideas.xml
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//FreeBSD//DTD XHTML 1.0 Transitional-Based Extension//EN"
-"http://www.FreeBSD.org/XML/share/xml/xhtml10-freebsd.dtd" [
-<!ENTITY title "The &os; list of projects and ideas for volunteers">
-<!ENTITY email "freebsd-www">
-]>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>&title;</title>
-
- <cvs:keyword xmlns:cvs="http://www.FreeBSD.org/XML/CVS">$FreeBSD$</cvs:keyword>
- </head>
-
- <body class="navinclude.developers">
-
-<p>The ideas page has moved to the <a
- href="http://wiki.freebsd.org/IdeasPage">FreeBSD wiki</a>.</p>
-
- </body>
-</html>
Index: head/en_US.ISO8859-1/htdocs/projects/ideas/style.css
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/ideas/style.css
+++ head/en_US.ISO8859-1/htdocs/projects/ideas/style.css
@@ -1,38 +0,0 @@
-BODY {
-}
-
-BODY TD {
- font-size: 13px;
-}
-
-BODY SMALL {
- width: 615px;
- font-size: 11px;
-}
-
-.heading {
- font-size: 15px;
- background-color: #cbd2ec;
-}
-
-.section {
- font-size: 15px;
- font-weight: bold;
- background-color: #e7e9f7;
-}
-
-.notes {
- font-size: 13px;
- font-weight: normal;
-}
-
-.main {
- width: 615px;
- height: auto;
- text-align: justify;
-}
-
-.list {
- width: 550px;
- height: auto;
-}
Index: head/en_US.ISO8859-1/htdocs/projects/netperf/Makefile
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/netperf/Makefile
+++ head/en_US.ISO8859-1/htdocs/projects/netperf/Makefile
@@ -1,18 +0,0 @@
-# Summary for busdma project status
-#
-# $FreeBSD$
-
-MAINTAINER= rwatson
-
-.if exists(../Makefile.conf)
-.include "../Makefile.conf"
-.endif
-.if exists(../Makefile.inc)
-.include "../Makefile.inc"
-.endif
-
-DOCS= index.xml
-DOCS+= cluster.xml
-DATA= style.css
-
-.include "${DOC_PREFIX}/share/mk/web.site.mk"
Index: head/en_US.ISO8859-1/htdocs/projects/netperf/cluster.xml
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/netperf/cluster.xml
+++ head/en_US.ISO8859-1/htdocs/projects/netperf/cluster.xml
@@ -1,141 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//FreeBSD//DTD XHTML 1.0 Transitional-Based Extension//EN"
-"http://www.FreeBSD.org/XML/share/xml/xhtml10-freebsd.dtd" [
-<!ENTITY title "FreeBSD Netperf Cluster">
-<!ENTITY email 'mux'>
-
-
-]>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>&title;</title>
-
- <cvs:keyword xmlns:cvs="http://www.FreeBSD.org/XML/CVS">$FreeBSD$</cvs:keyword>
- </head>
-
- <body class="navinclude.developers">
-
- <h2>Contents</h2>
- <ul>
- <li><a href="#introduction">Introduction</a></li>
- <li><a href="#donors">Donors</a></li>
- <li><a href="#admins">Netperf Cluster Admins</a></li>
- <li><a href="#resources">Netperf Cluster Resources</a></li>
- <li><a href="#procedures">Netperf Cluster Procedures</a></li>
- <li><a href="#notes">Current Configuration Notes and News</a></li>
- </ul>
-
- <a name="introduction"></a>
- <h2>Introduction</h2>
-
- <p>The netperf cluster provides a multi-node, SMP-capable, network
- functionality and performance test capability for the <a
- href="../../">FreeBSD Project</a>, supporting a variety of on-going
- sub-projects including the <a href="./index.html">netperf project</a>,
- and on-going work on
- high performance threading. The cluster is available on a check out
- basis for developers, who must request accounts be created by
- contacting one of the <a href="#admins">netperf cluster admins</a>.
- The cluster includes both 1gbps and 10gbps test segments, with
- network hardware from a number of vendors.</p>
-
- <a name="donors"></a>
- <h2>Donors</h2>
-
- <p>The netperf cluster was made possible through the generous donation
- of a number of organizations, including:</p>
-
- <ul>
- <li><p><a href="http://www.sentex.ca/">Sentex Data Communications</a>,
- who not only host the complete cluster, provide front-end build
- system, several test systems, and the management infrastructure
- (remote power, serial console, network switch, etc), but also appear
- to be endlessly willing to help configure, reconfigure, and
- troubleshoot at almost any time of day or night.</p></li>
-
- <li><p><a href="http://www.freebsdsystems.com/">FreeBSD Systems</a>,
- who through a generous matching grant with the FreeBSD Foundation,
- provide the majority of testing hardware used in the cluster,
- including three dual-Xeon test systems.</p></li>
-
- <li><p>The <a href="https://www.freebsdfoundation.org/">FreeBSD
- Foundation</a>, who provided a matching grant for the purposes of
- purchasing testing hardware, as well as taking ownership of hardware,
- offering tax receipts to donors in its role as a non-profit, and
- participating in cluster planning.</p></li>
-
- <li><p><a href="http://www.ironport.com">IronPort Systems</a>, who have
- donated a test server.</p></li>
-
- <li><p><a href="http://www.ixsystems.com/">iXsystems</a>, who have
- donated several test servers.</p></li>
-
- <li><p><a href="http://www.google.com/">Google, Inc.</a>, who have
- donated two test servers.</p></li>
-
- <li><p><a href="http://www.cisco.com/">Cisco, Inc.</a>, who have
- donated a 10gbps switch.</p></li>
-
- <li><p><a href="http://www.chelsio.com/">Chelsio Communications</a>,
- who have donated two 10gbps network cards.</p></li>
-
- <li><p><a href="http://www.myricom.com/">Myricom, Inc.</a>, who have
- donated two 10gbps network cards.</p></li>
-
- <li><p><a href="http://www.intel.com/">Intel Corporation</a>, who
- have donated two 10gbps network cards.</p></li>
-
- <li><p><a href="http://www.meinberg-usa.com/">Meinberg</a>, who
- have donated a LANTIME M600 IEEE 1588 Grandmaster Clock.</p></li>
-
- <li><p>&a.gnn;, who has donated a quad-core AMD test
- system.</p></li>
-
- <li><p>&a.rwatson;, who has donated a dual-CPU PIII system and a
- Portmaster terminal server.</p></li>
- </ul>
-
- <p>Donations to support the netperf cluster have an immediate and
- substantial impact on the success of a number of on-going performance
- projects, providing access to high-end hardware to a large number of
- developers. If you or your company are interested in helping to
- support continued development of the netperf cluster as a resource for
- FreeBSD development, please contact the <a href="#admins">netperf
- cluster admins</a>.</p>
-
- <a name="admins"></a>
- <h2>Netperf Cluster Admins</h2>
-
- <p>The FreeBSD netperf cluster is managed by a small team of
- developer/administrators to support SMP development and performance
- testing on high-end hardware. If you have any questions, including
- questions about access to the cluster as a developer, or about possible
- future donations of testing hardware, please feel free to contact them
- via netperf-admin at FreeBSD.org.</p>
-
- <a name="resources"></a>
- <h2>Netperf Cluster Resources</h2>
-
- <p>The Netperf cluster consists of several systems interconnected using a
- management network, as well as individual back-to-back gigabit ethernet
- links for a test network. Please refer to the <a
- href="https://wiki.freebsd.org/TestClusterOneReservations">Test
- Cluster One Reservations</a> page on the &os; wiki for the
- current allocations.</p>
-
- <a name="procedures"></a>
- <h2>Netperf Cluster Procedures</h2>
-
- <p>As the netperf cluster is a centrally managed and shared resource,
- understanding and consistent following of its procedures is important.
- In particular, following of the procedures makes it easier for
- developers to have reasonable expectations about the configuration of
- systems in the cluster, as well as to avoid treading on each others
- toes.</p>
-
- <p>Pointers and documentation on Netperf Cluster procedures can be found
- on the <a href="https://wiki.freebsd.org/TestClusterOnePointers">Test
- Cluster One Pointers</a> page on the FreeBSD wiki.</p>
- </body>
-</html>
Index: head/en_US.ISO8859-1/htdocs/projects/netperf/index.xml
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/netperf/index.xml
+++ head/en_US.ISO8859-1/htdocs/projects/netperf/index.xml
@@ -1,386 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!DOCTYPE html PUBLIC "-//FreeBSD//DTD XHTML 1.0 Transitional-Based Extension//EN"
-"http://www.FreeBSD.org/XML/share/xml/xhtml10-freebsd.dtd" [
-<!ENTITY title "FreeBSD Network Performance Project (netperf)">
-<!ENTITY email 'mux'>
-
-<!ENTITY status.na "<font xmlns='http://www.w3.org/1999/xhtml' color='green'>N/A</font>">
-<!ENTITY status.done "<font xmlns='http://www.w3.org/1999/xhtml' color='green'>Done</font>">
-<!ENTITY status.prototyped "<font xmlns='http://www.w3.org/1999/xhtml' color='blue'>Prototyped</font>">
-<!ENTITY status.head "<font xmlns='http://www.w3.org/1999/xhtml' color='orange'>Merged to HEAD; RELENG_5 candidate</font>">
-<!ENTITY status.new "<font xmlns='http://www.w3.org/1999/xhtml' color='red'>Not done</font>">
-<!ENTITY status.unknown "<font xmlns='http://www.w3.org/1999/xhtml' color='red'>Unknown</font>">
-]>
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>&title;</title>
-
- <cvs:keyword xmlns:cvs="http://www.FreeBSD.org/XML/CVS">$FreeBSD$</cvs:keyword>
- </head>
-
- <body class="navinclude.developers">
-
- <h2>Contents</h2>
- <ul>
- <li><a href="#goal">Project Goal</a></li>
- <li><a href="#strategies">Project Strategies</a></li>
- <li><a href="#tasks">Project Tasks</a></li>
- <li><a href="#cluster">Netperf Cluster</a></li>
- <li><a href="#papers">Papers and Reports</a></li>
- <li><a href="#links">Links</a></li>
- </ul>
-
- <a name="goal"></a>
- <h2>Project Goal</h2>
-
- <p>The netperf project is working to enhance the performance of the
- FreeBSD network stack. This work grew out of the
- SMPng Project, which moved the FreeBSD kernel from
- a "Giant Lock" to more fine-grained locking and multi-threading. SMPng
- offered both performance improvement and degradation for the network
- stack, improving parallelism and preemption, but substantially
- increasing per-packet processing costs. The netperf project is
- primarily focussed on further improving parallelism in network
- processing while reducing the SMP synchronization overhead. This in
- turn will lead to higher processing throughput and lower processing
- latency.</p>
-
- <a name="strategies"></a>
- <h2>Project Strategies</h2>
- <p>Robert Watson</p>
-
- <p>The two primary focuses of this work are to increase parallelism
- while decreasing overhead. Several activities are being performed that
- will work toward these goals:</p>
-
- <ul>
- <li><p>The Netperf project has completed locking work for all components
- of the network stack; as of FreeBSD 7.0 we have removed non-MPSAFE
- protocol shims, and as of FreeBSD 8.0 we have removed non-MPSAFE
- device driver shims.</p></li>
-
- <li><p>Optimize locking strategies to find better balances between
- locking granularity and locking overhead. In the first cut at locking
- for the kernel, the goal was to adopt a medium-grained locking
- approach based on data locking. This approach identifies critical
- data structures, and inserts new locks and locking operations to
- protect those data structures. Depending on the data model of the
- code being protected, this may lead to the introduction of a
- substantial number of locks offering unnecessary granularity, where
- the overhead of locking overwhelms the benefits of available
- parallelism and preemption. By selectively reducing granularity, it
- is possible to improve performance by decreasing locking overhead.
- </p></li>
-
- <li><p>Amortize the cost of locking by processing queues of packets or
- events. While the cost of individual synchronization operations may
- be high, it is possible to amortize the cost of synchronization
- operations by grouping processing of similar data (packets, events)
- under the same protection. This approach focuses on identifying
- places where similar locking occurs frequently in succession, and
- introducing queueing or coalescing of lock operations across the
- body of the work. For example, when a series of packets is inserted
- into an outgoing interface queue, a basic locking approach would
- lock the queue for each insert operation, unlock it, and hand off to
- the interface driver to begin the send, repeating this sequence as
- required. With a coalesced approach, the caller would pass off a
- queue of packets in order to reduce the locking overhead, as well as
- eliminate unnecessary synchronization due to the queue being
- thread-local. This approach can be applied at several levels in the
- stack, and is particularly applicable at lower levels of the stack
- where streams of packets require almost identical processing.
- </p></li>
-
- <li><p>Introduce new synchronization strategies with reduced overhead
- relative to traditional strategies. Most traditional strategies
- employ a combination of interrupt disabling and atomic operations to
- achieve mutual exclusion and non-preemption guarantees. However,
- these operations are expensive on modern CPUs, leading to the desire
- for cheaper primitives with weaker semantics. For example, the
- application of uni-processor primitives where synchronization is
- required only on a single processor, and optimizations to critical
- section primitives to avoid the need for interrupt disabling.
- </p></li>
-
- <li><p>Modify synchronization strategies to take advantage of
- additional, non-locking, synchronization primitives. This approach
- might take the form of making increased use of per-CPU or per-thread
- data structures, which require little or no synchronization. For
- example, through the use of critical sections, it is possible to
- synchronize access to per-CPU caches and queues. Through the use of
- per-thread queues, data can be handed off between stack layers
- without the use of synchronization.</p></li>
-
- <li><p>Increase the opportunities for parallelism through increased
- threading in the network stack. The current network stack model
- offers the opportunity for substantial parallelism, with outbound
- processing typically taking place in the context of the sending
- thread in kernel, crypto occurring in crypto worker threads, and
- receive processing taking place in a combination of the receiving
- ithread and dispatched netisr thread. While handoffs between
- threads introduces overhead (synchronization, context switching),
- there is the opportunity to increase parallelism in some workloads
- through introducing additional worker threads. Identifying work
- that may be relocated to new threads must be done carefully to
- balance overhead, and latency concerns, but can pay off by
- increasing effective CPU utilization and hence throughput. For
- example, introducing additional netisr threads capable of running on
- more than one CPU at a time can increase input parallelism, subject
- to maintaining desirable packet ordering (present in FreeBSD
- 8.0).</p></li>
- </ul>
-
- <a name="tasks"></a>
- <h2>Project Tasks</h2>
-
- <table class="tblbasic">
- <tr>
- <th> Task </th>
- <th> Responsible </th>
- <th> Last updated </th>
- <th> Status </th>
- <th> Notes </th>
- </tr>
-
- <tr>
- <td> Prefer file descriptor reference counts to socket reference
- counts for system calls. </td>
- <td> &a.rwatson; </td>
- <td> 20041124 </td>
- <td> &status.done; </td>
- <td> Sockets and file descriptors both have reference counts in order
- to prevent these objects from being free'd while in use. However,
- if a file descriptor is used to reach the socket, the reference
- counts are somewhat interchangeable, as either will prevent
- undesired garbage collection. For socket system calls, overhead
- can be reduced by relying on the file descriptor reference count,
- thus avoiding the synchronized operations necessary to modify the
- socket reference count, an approach also taken in the VFS code.
- This change has been made for most socket system calls, and has
- been committed to HEAD (6.x). It has also been merged to RELENG_5
- for inclusion in 5.4.</td>
- </tr>
-
- <tr>
- <td> Mbuf queue library </td>
- <td> &a.rwatson; </td>
- <td> 20041124 </td>
- <td> &status.prototyped; </td>
- <td> In order to facilitate passing off queues of packets between
- network stack components, create an mbuf queue primitive, struct
- mbufqueue. The initial implementation is complete, and the
- primitive is now being applied in several sample cases to determine
- whether it offers the desired semantics and benefits. The
- implementation can be found in the rwatson_dispatch Perforce
- branch. Additional work must also be done to explore the
- performance impact of "queues" vs arrays of mbuf pointers, which
- are likely to behave better from a caching perspective. </td>
- </tr>
-
- <tr>
- <td> Employ queued dispatch in interface send API </td>
- <td> &a.rwatson; </td>
- <td> 20041106 </td>
- <td> &status.prototyped; </td>
- <td> An experimental if_start_mbufqueue() interface to struct ifnet
- has been added, which passes an mbuf queue to the device driver for
- processing, avoiding redundant synchronization against the
- interface queue, even in the event that additional queueing is
- required. This has not yet been benchmarked. A subset change to
- dispatch a single mbuf to a driver has also been prototyped, and
- benchmarked at a several percentage point improvement in packet send
- rates from user space. </td>
- </tr>
-
- <tr>
- <td> Employ queued dispatch in the interface receive API </td>
- <td> &a.rwatson; </td>
- <td> 20041106 </td>
- <td> &status.new; </td>
- <td> Similar to if_start_mbufqueue, allow input of a queue of mbufs
- from the device driver into the lowest protocol layers, such as
- ether_input_mbufqueue. </td>
- </tr>
-
- <tr>
- <td> Employ queued dispatch across netisr dispatch API </td>
- <td> &a.rwatson; </td>
- <td> 20090601 </td>
- <td> &status.done; </td>
- <td> Pull all of the mbufs in the netisr queue into a thread-local
- mbuf queue to avoid repeated lock operations to access the queue.
- This work was completed as part of the netisr2 project, and will
- ship with 8.0-RELEASE. </td>
- </tr>
-
- <tr>
- <td> Modify UMA allocator to use critical sections not mutexes for
- per-CPU caches. </td>
- <td> &a.rwatson; </td>
- <td> 20050429 </td>
- <td> &status.done; </td>
- <td> The mutexes protecting per-CPU caches require atomic operations
- on SMP systems; as they are per-CPU objects, the cost of
- synchronizing access to the caches can be reduced by combining
- CPU pinning and/or critical sections instead. This change has now
- been committed and will appear in 6.0-RELEASE; it results in a
- several percentage performance in UDP send from user space, and
- there have been reports of 20%+ improvements in allocation
- intensive code within the kernel. In micro-benchmarks, the cost
- of allocation on SMP is dramatically reduced. </td>
- </tr>
-
- <tr>
- <td> Modify malloc(9) allocator to use per-CPU statistics with
- critical sections to protect malloc_type statistics rather than
- global statistics with a mutex. </td>
- <td> &a.rwatson; </td>
- <td> 20050529 </td>
- <td> &status.done; </td>
- <td> Previously, malloc(9) used a single statistics structure
- protected by a mutex to hold global malloc statistics for each
- malloc type. This change moves to per-CPU statistics structures,
- which are coalesced when reporting memory allocation statistics to
- the user, and protects them using critical sections. This reduces
- cache line contention for common allocation types by avoiding
- shared lines, and also reduces synchronization costs by using
- critical sections to synchronize access instead of a mutex. While
- malloc(9) is less frequently used in the network stack than uma(9),
- it is used for socket address data, so is on performance critical
- paths for datagram operations. This has been committed and appeared
- 6.0-RELEASE. </td>
- </tr>
-
- <tr>
- <td> Optimize critical section performance </td>
- <td> &a.jhb; </td>
- <td> 20050404 </td>
- <td> &status.done; </td>
- <td> Critical sections prevent preemption of a thread on a CPU, as
- well as preventing migration of that thread to another CPU, and
- maybe used for synchronizing access to per-CPU data structures, as
- well as preventing recursion in interrupt processing. Currently,
- critical sections disable interrupts on the CPU. In previous
- versions of FreeBSD (4.x and before), optimizations were present
- that allowed for software interrupt disabling, which lowers the
- cost of critical sections in the common case by avoiding expensive
- microcode operations on the CPU. By restoring this model, or a
- variation on it, critical sections can be made substantially
- cheaper to enter. In particular, this change lowers the cost
- of critical sections on UP such that it is approximately the same
- cost as a mutex, meaning that optimizations on SMP to use critical
- sections instead of mutexes will not harm UP performance. This
- change has now been committed, and appeared in 6.0-RELEASE. </td>
- </tr>
-
- <tr>
- <td> Normalize socket and protocol control block reference model </td>
- <td> &a.rwatson; </td>
- <td> 20060401 </td>
- <td> &status.done; </td>
- <td> The socket/protocol boundary is characterized by a set of data
- structures and API interfaces, where the socket code acts as both
- a consumer and a service library for protocols. This task is to
- normalize the reference model by which protocol state is attached
- to and detached from socket state in order to strengthen
- invariants, allowing the removal of countless unused code paths
- (especially error handling), the removal of unnecessary locking
- in TCP, and a general improve the structure of the code. This
- serves both the immediate purpose of improving the quality and
- performance of this code, as well as being necessary for future
- optimization work. These changes have been prototyped in
- Perforce, and now merged to 7-CURRENT. They will be merged into
- RELENG_6 once they have been thoroughly tested.</td>
- </tr>
-
- <tr>
- <td> Add true inpcb reference count support </td>
- <td> &a.mohans;, &a.rwatson;, &a.peter; </td>
- <td> 20081208 </td>
- <td> &status.done; </td>
- <td> Historically, the in-bound TCP and UDP socket paths relied on
- global pcbinfo info locks to prevent PCBs being delivered to from
- being garbage collected by another thread while in use. This set
- of changes introduces a true reference model for PCBs so that the
- global lock can be released during in-bound process, and appear
- in 8.0-RELEASE.</td>
- </tr>
-
- <tr>
- <td> Fine-grained locking for UNIX domain sockets </td>
- <td> &a.rwatson; </td>
- <td> 20070226 </td>
- <td> &status.done; </td>
- <td> UNIX domain sockets in FreeBSD 5.x and 6.x use a single global
- subsystem lock. This is sufficient to allow it to run without
- Giant, but results in contention with large numbers of processors
- simultaneously operating on UNIX domain sockets. This task
- introduced per-protocol control block locks in order to reduce
- contention on a larger subsystem lock, and the results appeared in
- 7.0-RELEASE. </td>
- </tr>
-
- <tr>
- <td> Multiple netisr threads </td>
- <td> &a.rwatson; </td>
- <td> 20090601 </td>
- <td> &status.done; </td>
- <td> Historically, the BSD network stack has used a single network
- software interrupt context, for deferred network processing. With
- the introduction of multi-processing, this became a single
- software interrupt thread. In FreeBSD 8.0, multiple netisr
- threads are now supported, up to the number of CPUs present in the
- system.</td>
- </tr>
-
- </table>
-
- <a name="cluster"></a>
- <h2>Netperf Cluster</h2>
-
- <p>Through the generous donations and investment of Sentex Data
- Communications, FreeBSD Systems, IronPort Systems, and the FreeBSD
- Foundation, a network performance testbed has been created in Ontario,
- Canada for use by FreeBSD developers working in the area of network
- performance. A similar cluster, made possible through the generous
- donation of Verio, is being prepared for use in more general SMP
- performance work in Virginia, US. Each cluster consists of several SMP
- systems inter-connected with giga-bit ethernet such that relatively
- arbitrary topologies can be constructed in order to test host-host, IP
- forwarding, and bridging performance scenarios. Systems are network
- booted, have serial console, and remote power, in order to maximize
- availability and minimize configuration overhead. These systems are
- available on a check-out basis for experimentation and performance
- measurement to FreeBSD developers working on the Netperf project, and
- in related areas.</p>
-
- <p><a href="cluster.html">More detailed information on the netperf
- cluster can be found by following this link.</a></p>
-
- <a name="papers"></a>
- <h2>Papers and Reports</h2>
-
- <p>The following paper(s) have been produced by or are related to the
- Netperf Project:</p>
-
- <ul>
- <li><p><a href="http://www.watson.org/~robert/freebsd/netperf/20051027-eurobsdcon2005-netperf.pdf">"Introduction to Multithreading and Multiprocessing in the FreeBSD SMPng Network Stack", EuroBSDCon 2005, Basel, Switzerland</a>.</p></li>
- </ul>
-
- <a name="links"></a>
- <h2>Links</h2>
-
- <p>Some useful links relating to the netperf work:</p>
-
- <ul>
- <li><p>SMPng Project -- Project to introduce
- finer grained locking in the FreeBSD kernel.</p></li>
-
- <li><p><a href="http://www.watson.org/~robert/freebsd/netperf/">Robert
- Watson's netperf web page</a> -- Web page that includes a change log
- and performance measurement/debugging information.</p></li>
- </ul>
-
- </body>
-</html>
Index: head/en_US.ISO8859-1/htdocs/projects/netperf/style.css
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/netperf/style.css
+++ head/en_US.ISO8859-1/htdocs/projects/netperf/style.css
@@ -1,38 +0,0 @@
-BODY {
-}
-
-BODY TD {
- font-size: 13px;
-}
-
-BODY SMALL {
- width: 615px;
- font-size: 11px;
-}
-
-.heading {
- font-size: 15px;
- background-color: #cbd2ec;
-}
-
-.section {
- font-size: 15px;
- font-weight: bold;
- background-color: #e7e9f7;
-}
-
-.notes {
- font-size: 13px;
- font-weight: normal;
-}
-
-.main {
- width: 615px;
- height: auto;
- text-align: justify;
-}
-
-.list {
- width: 550px;
- height: auto;
-}
Index: head/en_US.ISO8859-1/htdocs/projects/projects.xml
===================================================================
--- head/en_US.ISO8859-1/htdocs/projects/projects.xml
+++ head/en_US.ISO8859-1/htdocs/projects/projects.xml
@@ -155,14 +155,6 @@
<h3>Device drivers</h3>
<ul>
-<li><a name="busdma" href="&base;/projects/busdma/index.html">busdma
-and SMPng driver conversion</a>: busdma provides a portable abstraction
-to the Direct Memory Access (DMA) hardware primitives used by many high
-performance device drivers. By using this abstraction, device driver
-authors avoid adding platform-specific DMA management code, improving
-the portability of drivers between hardware architectures. This page
-also tracks the progress of drivers towards being SMPng-safe.</li>
-
<li><a name="homeauto" href="https://people.FreeBSD.org/~fsmp/HomeAuto/HomeAuto.html">Home Automation</a>:
Using FreeBSD to run appliance controllers, infra-red controllers,
automated telephone systems, and more.</li>
Index: head/en_US.ISO8859-1/htdocs/search/sitemap.xml
===================================================================
--- head/en_US.ISO8859-1/htdocs/search/sitemap.xml
+++ head/en_US.ISO8859-1/htdocs/search/sitemap.xml
@@ -870,16 +870,6 @@
</term>
<term>
- <text>busdma and SMPng driver conversion project</text>
- <destination>&base;/projects/busdma/index.html</destination>
- </term>
-
- <term>
- <text>SMPng driver conversion</text>
- <destination>&base;/projects/busdma/index.html</destination>
- </term>
-
- <term>
<text>C99 &amp; POSIX Conformance Project</text>
<destination>&base;/projects/c99/index.html</destination>
</term>
@@ -1454,11 +1444,6 @@
</item>
<item>
- <text>Busdma and SMPng driver conversion</text>
- <destination>&base;/projects/busdma/index.html</destination>
- </item>
-
- <item>
<text>FreeBSD Project Ideas</text>
<destination>https://wiki.freebsd.org/IdeasPage</destination>
</item>
@@ -1466,11 +1451,6 @@
<item>
<text>FreeBSD/MIPS</text>
<destination>&base;/projects/mips/index.html</destination>
- </item>
-
- <item>
- <text>Network Performance (netperf)</text>
- <destination>&base;/projects/netperf/index.html</destination>
</item>
</category>
</sitemap>

File Metadata

Mime Type
text/plain
Expires
Wed, Nov 19, 4:46 AM (5 h, 42 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25594789
Default Alt Text
D24619.id.diff (67 KB)

Event Timeline