aboutsummaryrefslogtreecommitdiff
path: root/en/news/status/report-2004-05-2004-06.xml
diff options
context:
space:
mode:
Diffstat (limited to 'en/news/status/report-2004-05-2004-06.xml')
-rw-r--r--en/news/status/report-2004-05-2004-06.xml1103
1 files changed, 0 insertions, 1103 deletions
diff --git a/en/news/status/report-2004-05-2004-06.xml b/en/news/status/report-2004-05-2004-06.xml
deleted file mode 100644
index 135a9a9291..0000000000
--- a/en/news/status/report-2004-05-2004-06.xml
+++ /dev/null
@@ -1,1103 +0,0 @@
-<!-- $FreeBSD: www/en/news/status/report-may-2004-june-2004.xml,v 1.4 2004/08/04 01:30:13 cperciva Exp $ -->
-<report>
- <date>
- <month>May-June</month>
- <year>2004</year>
- </date>
-
- <section>
- <title>Introduction</title>
-
- <p>This installment of the Bi-Monthly Status Report is a few days late,
- but I'm pleased to say that it is chocked full of over 30 articles.
- May and June were yet again busy months; the Netperf project passed
- major milestones and can now be run with the debug.mpsafenet tunable
- turned on from sources in CVS. The ARM, MIPS, and PPC ports saw quite
- a bit of progress, as did several other SMPng and Netgraph projects.
- FreeBSD 5.3 is just around the corner, so don't hesitate to grab a
- snapshot and test the progress!</p>
-
- <p>On a more serious note, it's very important to remember that code
- freeze for FreeBSD 5.3 will happen on August 15, 2004. This is only
- a few weeks away and there is still a lot to do. The TODO list for
- the release can be found at
- <a href="http://www.freebsd.org/releases/5.3R/todo.html">
- http://www.freebsd.org/releases/5.3R/todo.html</a>. If
- you are looking for a way to contribute to the release, this TODO list
- has several items that are in urgent and in need of attention.
- Testing is also very important. The tree has had some stability
- stability problems in the past few weeks, but there are work-arounds
- that should allow everyone to continue testing and using FreeBSD. We
- absolutely must have FreeBSD 5.3 be a rock-solid release, so every
- little bit of contributed effort helps!</p>
- <p>Thanks,</p>
- <p>Scott Long</p>
- </section>
-
- <project>
- <title>Network Stack Locking</title>
-
- <contact>
- <person>
- <name>
- <given>Robert</given>
- <common>Watson</common>
- </name>
- <email>rwatson@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.freebsd.org/smp/">FreeBSD SMPng Web Page</url>
- <url href="http://www.watson.org/~robert/freebsd/netperf/">Netperf Web Page</url>
- </links>
-
- <body>
- <p>This project is aimed at converting the FreeBSD network stack from
- running under the single Giant kernel lock to permitting it to
- run in a fully parallel manner on multiple CPUs (i.e., a fully
- threaded network stack). This will improve performance/latency
- through reentrancy and preemption on single-processor machines, and
- also on multi-processor machines by permitting real parallelism in
- the processing of network traffic. As of FreeBSD 5.2, it was
- possible to run low level network functions, as well as the IP
- filtering and forwarding plane, without the Giant lock, as well as
- "process to completion" in the interrupt handler. This permitted
- both inbound and outbound traffic to run in parallel across
- multiple interfaces and CPUs.</p>
-
- <p>Work continues to improve the maturity and completeness of the
- locking (and performance) of the network stack for 5.3. The network
- stack development branch has been updated to the latest CVS HEAD,
- as well as the following and more. Many but not all of these
- changes have been merged to the FreeBSD CVS tree as of the writing
- of this report. Complete details and more minor changes are
- documented in the README file on the netperf web page.</p>
-
- <ul>
- <li>Addition of hard-coded WITNESS lock orders for socket-related
- locks, route locks, interface locks, file descriptor locks,
- SLIP, and PCB locks for various protocols (UDP, TCP, UNIX
- domain sockets). (Merged)</li>
- <li>Modified MAC Framework to use inpcbs as the source for mbuf
- labels rather than reaching up to the socket layer, avoiding the
- additional acquisition of socket locks. Locked access to
- so_label and so_peerlabel using the socket lock throughout;
- assert socket lock in the MAC Framework where depended on. MAC
- Framework now makes a copy of the socket label before
- externalizing to prevent a copyout while holding the label lock
- (and potentially seeing an inconsistent label). (Merged)</li>
- <li>Extensive annotation of locking state throughout the network
- stack, especially relating to sockets.</li>
- <li>Several locking fixes for ng_base.c, the basic Netgraph
- infrastructure. (Merged)</li>
- <li>Global accept filter list locking, especially during registration.
- (Partially merged)</li>
- <li>Revise locking in socket state transition helpers, such as
- soisconnecting(), soisconnected(), etc, to simplify lock
- handling. (Merged)</li>
- <li>Fix bugs in netatalk DDP locking, merge all netatalk locking to
- CVS. (Merged)</li>
- <li>soref() socket locking assertions and associated fixes.
- (Merged)</li>
- <li>Fifofs now uses its own mutex instead of the vnode interlock to
- synchronize fifo operations, avoiding lock order issues with
- socket buffer locking. (Merged)</li>
- <li>Cleanup of locking related to file descriptor close and Giant
- requirements. Experimentation with reducing locking here.</li>
- <li>Review and fix several instances of socket locking in the TCP
- code. (Merged)</li>
- <li>NFS server locking merged to FreeBSD CVS. (Merged)</li>
- <li>Accept locking merged to rwatson_netperf, and to FreeBSD CVS.
- A new global mutex, accept_mtx, now protects all socket related
- accept queue and state fields (SS_COMP, SS_INCOMP), and flags
- relating to accept are moved from the generic so_state field to
- so_qstate. accept1() rearranged, as with sonewconn() as a result,
- and a file descriptor leak fixed. Close a variety of races in
- socket referencing during accept. soabort() and other partially
- connected socket related functions updated to take locking into
- account. (Merged)</li>
- <li>Issue associated with non-atomic setting of SS_NBIO in fifofs
- resolved by adding MSG_NBIO. (Merged)</li>
- <li>Several flags from so_state moved to sb_state so they can be
- locked properly using the socket buffer mutex. (Merged)</li>
- <li>Socket locks are now not held over calls into the protocol
- preventing many lock order issues between socket and protocol
- locks, and avoiding a substantial amount of conditional locking.
- (Merged)</li>
- <li>mbuma, the UMA-based mbuf allocator, is merged to CVS. This
- reduces the kernel to one widely used memory allocator, improves
- performance, and allows memory from mbufs to be reclaimed and
- reused for other types of storage when pressure lowers.
- (Merged)</li>
- <li>sb_flags now properly locked. (Merged)</li>
- <li>Global MAC label ifnet lock introduced to protect labels on
- network interfaces. (Merged)</li>
- <li>Rewrites of parts of soreceive() and sosend() to improve
- MP safety merged to CVS, including modifications to make sure
- socket buffer cache state is consistent when locks are released.
- sockbuf_pushsync() added to guarantee consistency of cached
- pointers. (Merged)</li>
- <li>UNIX domain socket locking revised to use a subsystem lock due
- to inconsistencies in lock order and inconsistent coverage ofunpcb
- fields. Cleanup of global variable locking in UNIX domain
- sockets, Giant handling when entering VFS. All UNIX domain socket
- locking merged to CVS. (Merged)</li>
- <li>netisr dispatch introduced in the routing code such that routing
- socket message delivery is performed asynchronously from routing
- events to avoid lock order issues. (Merged)</li>
- <li>IGMP and multicast locking merged to CVS. (Merged)</li>
- <li>Cleanup of lasting recursive Giant acquisition left over from
- forwarding/bridging plane only locking. (Merged)</li>
- <li>ALTQ imported into the FreeBSD in a locked state. (Merged)</li>
- <li>Conditional locking in sbdrop(), sbdroprecord(), sbrelease(),
- sbflush(), spappend(), sbappendstream(), sbappendrecord(),
- sbinsertoob(), sbappendaddr(), sbappendcontrol() eliminated.
- (Merged)</li>
- <li>Some cleanup of IP stack management ioctls and lock order issues.
- (Merged)</li>
- <li>Cleanup and annotation of sorflush() use of a temporary stack held
- socket buffer during flush. (Merged)</li>
- <li>Substantial cleanup of socket wakeup mechanisms to drop locks in
- advance of wakeup, avoid holding locks over upcalls, and
- assertions of proper lock state. (Merged)</li>
- <li>With the integration of revised ifnet cloning, cloning data
- structures are now better locked. (Merged)</li>
- <li>Socket locking for portalfs. (Merged)</li>
- <li>Global so_global_mtx introduced to protect generation numbers and
- socket counts. (Merged)</li>
- <li>KAME IPSEC and FAST_IPSEC now use rawcb_mtx to protect raw socket
- list integration. More work required here. (Merged)</li>
- <li>Socket locking around SO_SNDLOWAT and SO_RCVLOWAT. (Merged)</li>
- <li>soreserve() and sbreserve() reformulation to improve locking and
- consistency. Similar cleanup in the use of reservation
- functions in tcp_mss(). (Merged)</li>
- <li>Locking cost reduction in sbappend*(). (Merged)</li>
- <li>Global locking for a number of Netgraph modules, including
- ng_iface, ng_ppp, ng_socket, ng_pppoe, ng_frame_relay, ng_tty,
- ng_eiface. (Merged)</li>
- <li>IPv6 inpcb locking. Resulting cleanup of inpcb locking
- assertions, and enabling of inpcb locking assertions by default
- even with IPv6 compiled in.</li>
- <li>if_xl now MPSAFE. (Merged)</li>
- <li>soreceive() non-inline OOB support placed in its own function.
- (Merged)</li>
- <li>NFS client socket locking. (Merged)</li>
- <li>SLIP now uses a asynchronous task queue to prevent Giant-free
- entrance of the TTY code.</li>
- <li>E-mail sent to current@ providing Giant-free operation guidelines
- and details.</li>
- </ul>
- </body>
- </project>
-
- <project>
- <title>FreeBSD/MIPS Status Report</title>
-
- <contact>
- <person>
- <name>
- <given>Juli</given>
- <common>Mallett</common>
- </name>
- <email>jmallett@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.FreeBSD.org/projects/mips/" />
- <url href="http://www.mdstud.chalmers.se/~md1gavan/mips64emul/">mips64emul</url>
- </links>
-
- <body>
- <p>In the past two months, opportunities to perform a good chunk of
- work on FreeBSD/MIPS have arisen and significant issues with
- context switching, clocks, interrupts, and kernel virtual memory
- have been resolved. A number of issues with caches were fixed,
- however those are far from complete and at last check, there
- were issues when running cached which would prevent booting
- sometimes.
- Due to toolchain issues in progress, current kernels are no
- longer bootable on real hardware.</p>
- <p>A 64-bit MIPS emulator has arisen giving the ability to test and
- debug in an emulator, and much testing has taken place in it.
- It has been added to the FreeBSD ports tree, and the port will be
- actively tracking the main codebase as possible. In general,
- FreeBSD/MIPS kernels should run fine in it.</p>
- <p>Before toolchain and cache issues, the first kernel threads would
- run, busses and some devices would attach, and the system would
- boot to a mountroot prompt.</p>
- </body>
- </project>
-
- <project>
- <title>PowerPC Port</title>
-
- <contact>
- <person>
- <name>
- <given>Peter</given>
- <common>Grehan</common>
- </name>
-
- <email>grehan@FreeBSD.org</email>
- </person>
- </contact>
-
- <body>
- <p>The port has been moving along steadily. There have been
- reports of buildworld running natively. Works is almost complete
- on make release so there will be bootable CD images in the near
- future.</p>
- </body>
- </project>
-
- <project>
- <title>IPFilter Upgraded to 3.4.35</title>
- <contact>
- <person>
- <name>
- <given>Darren</given> <common>Reed</common>
- </name>
- <email>darrenr@FreeBSD.org</email>
- </person>
- </contact>
- <links>
- <url href="http://coombs.anu.edu.au/~avalon/ip-filter.html">IPFilter home page</url>
- </links>
- <body>
- <p>IPFilter has been upgraded in both FreeBSD-current and 4-STABLE
- (post 4.10) from version 3.4.31 to 3.4.35.</p>
- </body>
- </project>
-
- <project>
- <title>Low-overhead performance monitoring for FreeBSD</title>
-
- <contact>
- <person>
- <name>
- <given>Joseph</given>
- <common>Koshy</common>
- </name>
- <email>jkoshy@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://people.freebsd.org/~jkoshy/projects/perf-measurement/">A
- best-in-class performance monitoring system for FreeBSD built
- over the hardware performance monitoring facilities of modern
- CPUs.</url>
- </links>
-
- <body>
- <p>The current design attempts to support both per-process and
- system-wide statistical profiling and per-process "virtual"
- performance counters. The userland API libpmc(3) is somewhat
- stable now, but the kernel module's design is being redone to
- handle MP better. Initial development is targeting the AMD
- Athlon CPUs, but the intent is to support all the CPUs that
- FreeBSD runs on.</p>
-
- <p>An early prototype is available under Perforce [under
- //depot/user/jkoshy/projects/pmc/].</p>
- </body>
- </project>
-
- <project>
- <title>FreeBSD profile.sh</title>
-
- <contact>
- <person>
- <name>
- <given>Tobias</given>
-
- <common>Roth</common>
- </name>
-
- <email>ports@fsck.ch</email>
- </person>
- </contact>
-
- <links>
- <url href="https://projects.fsck.ch/profile/" />
- </links>
-
- <body>
- <p>FreeBSD profile.sh is an enhancement to the FreeBSD 5 rcng boot
- system, targeted at laptops. One can configure multiple network
- environments (eg, home, work, university). After this initial
- configuration, the laptop detects automatically in what environment
- it is started and configures itself accordingly. Not only network
- settings, but almost everything from under /etc can be configured
- per environment. It is also possible to suspend the machine in one
- environment and wake it up in a different one, and reconfiguration
- will happen automatically.</p>
- </body>
- </project>
-
- <project>
- <title>Sync protocols (Netgraph and SPPP)</title>
-
- <contact>
- <person>
- <name>
- <given>Roman</given>
- <common>Kurakin</common>
- </name>
- <email>rik@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.freebsd.org/~rik">Current code, ideas, problems.</url>
- </links>
-
- <body>
- <p>Currently I work on two directions: if_spppfr.c and sppp locking
- (on behalf of netperf). At the moment of writing this sppp locking
- is not ready yet. But it would be ready in couple of days. Also you
- may find as a part of this work some user space fixes for rwatson
- netperf code (Only that I was able to catch while world compilation.
- If you know some others let me know and I'll try to fix them
- too).</p>
-
- <p>Since sppp code is quite big and state machine is very complicated,
- it would be difficult to test all code paths. I will glad to get
- any help in testing all this stuff. More tester more probability to
- test all possible cases.</p>
-
- <p>Work on FRF.12 (ng_frf12) is frozen since of low interest and
- lack of time. Current state of stable code: support of FRF.12
- End-to-End fragmentation. Support of FRF.12 Interface (UNI and NNI)
- fragmentation is not tested.</p>
- </body>
- </project>
-
- <project>
- <title>Cronyx Adapters Drivers</title>
-
- <contact>
- <person>
- <name>
- <given>Roman</given>
- <common>Kurakin</common>
- </name>
- <email>rik@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.cronyx.ru/hardware/wan.html">Cronyx WAN Adapters.</url>
- </links>
-
- <body>
- <p>cp(4) driver for Cronyx Tau-PCI was added. Cronyx Tau-PCI is family
- of synchronous WAN adapters with various set of interfaces such as
- V.35, RS-232, RS-530(449), X.21, E1, E3, T3, STS-1. This is a third
- family of Cronyx adapters that is supported by FreeBSD now. Now all
- three drivers cx(4), ctau(4) and cp(4) are on both major branches
- (HEAD and RELENG_4).</p>
- <p>Busdma conversion was recently finished. Current work is
- concentrated on locking both for adapters drivers and for sppp (see
- my other report for additional information).</p>
- </body>
- </project>
-
- <project>
- <title>Network interface naming changes</title>
-
- <contact>
- <person>
- <name>
- <given>Brooks</given>
- <common>Davis</common>
- </name>
- <email>brooks@FreeBSD.org</email>
- </person>
- </contact>
-
- <body>
- <p>An enhanced network interface cloning API has been committed. It
- allows interfaces to support more complex names then the current
- <code>name#</code> style. This functionality has been used to
- enable interesting cloners like auto-configuring vlan interfaces.
- Other features include locking of cloner structures and the ability
- of drivers to reject destroy requests.</p>
- <p>Work on userland support for this functionality is ongoing.</p>
- </body>
- </project>
-
- <project>
- <title>SMPng Status Report</title>
-
- <contact>
- <person>
- <name>
- <given>John</given>
- <common>Baldwin</common>
- </name>
- <email>jhb@FreeBSD.org</email>
- </person>
- <person>
- <email>smp@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.FreeBSD.org/smp/" />
- </links>
-
- <body>
- <p>Not a lot happened on the SMPng front outside of the work on
- locking the network stack (which is a large amount of work).
- The priorities of the various software interrupt threads were
- corrected and locking for taskqueues was improved. The return
- value of the sema_timedwait() function was adjusted to be more
- consistent with cv_timedwait(). A small fix was made to the
- sleepqueue code to shorten the amount of time that a
- sleepqueue chain lock is held when waking up threads. Some
- simple debug code for profiling the hash tables used in the
- sleep queue and turnstile code was added. This will allow
- developers to measure the impact of any tweaks to the hash
- table sizes or the hash algorithm.</p>
- </body>
- </project>
-
- <project>
- <title>i386 Interrupt Code &amp; PCI Interrupt Routing</title>
-
- <contact>
- <person>
- <name>
- <given>John</given>
- <common>Baldwin</common>
- </name>
- <email>jhb@FreeBSD.org</email>
- </person>
- </contact>
-
- <body>
- <p>Support for programming the polarity and trigger mode of
- interrupt sources at runtime was added. This includes a
- mini-driver for the ELCR register used to control the
- configuration for ISA and EISA interrupts. The atpic driver
- reprograms the ELCR as necessary, while the apic driver
- reprograms the interrupt pin associated with an interrupt
- source as necessary. The information about which
- configuration to use mostly comes from ACPI. However,
- non-ACPI systems also force any ISA interrupts used to route
- PCI interrupts to use active-low polarity and level
- trigger.</p>
-
- <p>Support for suspend and resume on i386 was also slightly
- improved. Suspend and resume support was added to the ELCR,
- $PIR, and apic drivers.</p>
-
- <p>The ACPI PCI-PCI bridge driver was fixed to fall back to the
- PCI-PCI bridge swizzle method for routing interrupts when a
- routing table was not provided by the BIOS.</p>
-
- <p>Mixed mode can now be disabled or enabled at boot time via a
- loader tunable.</p>
- </body>
- </project>
-
- <project>
- <title>KDE on FreeBSD</title>
-
- <contact>
- <person>
- <name>
- <given>Michael</given>
- <common>Nottebrock</common>
- </name>
- <email>lofi@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://freebsd.kde.org" />
- </links>
-
- <body>
- <p>The work on converting the build switches/OPTIONS
- currently present in the ports of the main KDE modules into
- separate ports in order to make packages available for the
- software/features they provide is progressing. Porting of
- KOffice 1.3.2 are nearly completed. The Swedish FreeBSD
- snapshot server <a href="http://snapshots.se.freebsd.org">
- http://snapshots.se.freebsd.org</a>,
- operated and maintained by members of the KDE/FreeBSD team,
- is back up and running at full steam. Additional amd64
- hardware has been added and amd64 snapshots will be available
- soon.</p>
- </body>
- </project>
-
- <project>
- <title>Various GEOM classes and geom(8) utility</title>
-
- <contact>
- <person>
- <name>
- <given>Pawel Jakub</given>
- <common>Dawidek</common>
- </name>
- <email>pjd@FreeBSD.org</email>
- </person>
- </contact>
-
- <body>
- <p>I'm working on various GEOM classes. Some of them are already
- committed and ready for use (GATE, CONCAT, STRIPE, LABEL, NOP). The
- MIRROR class is finished in 90% and will be committed in very near
- future. Next I want to work on RAID3 and RAID5 implementations.
- Userland utility to control GEOM classes (geom(8)) is already in
- the tree.</p>
- </body>
- </project>
-
- <project>
- <title>FreeBSD Handbook, 3rd Edition, Volume II: Administrator Guide</title>
-
- <contact>
- <person>
- <name>
- <given>Murray</given>
- <common>Stokely</common>
- </name>
- <email>murray@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.freebsd.org/docproj/handbook3.html">FreeBSD Handbook 3rd Edition Task List.</url>
- </links>
-
- <body>
- <p>The Third Edition of the FreeBSD Handbook has been split
- into two volumes. The first volume, the User Guide, has been
- published. Work is progressing on the second volume. The
- following chapters are included in the second volume :
- advanced-networking, network-servers, config, boot, cutting-edge,
- disks, l10n, mac, mail, ppp-and-slip, security, serialcomms,
- users, vinum, eresources, bibliography, mirrors. Please see the
- Task List for information about what work remains to be done. In
- addition to technical and grammatical review, a number of HTML
- output assumptions in the document need to be corrected.</p>
- </body>
- </project>
-
- <project>
- <title>VuXML and portaudit</title>
-
- <contact>
- <person>
- <name>
- <given>Tom</given>
- <common>Rhodes</common>
- </name>
- <email>trhodes@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.vuxml.org">VuXML DTD and more information</url>
- <url href="http://vuxml.FreeBSD.org">Rendered contents of FreeBSD VuXML</url>
- <url href="http://www.freebsd.org/ports/portaudit/">Rendered version of portaudit.txt</url>
- </links>
-
- <body>
- <p>The portaudit utility is currently an add-on to FreeBSD
- designed to give administrators and users a heads up
- with regards to security vulnerabilities in third
- party software. The VuXML database keeps a record
- of these security vulnerabilities along with internal
- security holes. When installed, the portaudit utility
- periodically downloads a database with known issues and
- checks all installed ports or packages against it; should
- it find vulnerable software installed the administrator
- or user is notified during the daily run output of the
- periodic scripts.</p>
-
- <p>These utilities are considered to be of production
- quality and discussion is taking place over whether or not
- they should be included as part of the base system. All
- ports committers are urged to add entries when when a
- vulnerability is discovered; any questions may be sent to
- eik@ or myself.</p>
- </body>
- </project>
-
- <project>
- <title>
- Bluetooth stack for FreeBSD (Netgraph implementation)
- </title>
-
- <contact>
- <person>
- <name>
- <given>Maksim</given>
- <common>Yevmenkin</common>
- </name>
- <email>m_evmenkin@yahoo.com</email>
- </person>
- </contact>
-
- <body>
- <p>Bluetooth code was marked as non-i386 specific. It is now possible
- to build it on all supported platforms. Please help with testing.
- Other then this there was not much progress during last few months.
- I've been very busy with Real Life.</p>
- </body>
- </project>
-
- <project>
- <title>FreeBSD Dutch Documentation Project</title>
- <contact>
- <person>
- <name>
- <given>Remko</given>
- <common>Lodder</common>
- </name>
- <email>remko@elvandar.org</email>
- </person>
- </contact>
- <links>
- <url href="http://www.evilcoder.org/freebsd_html">Preview html documentation</url>
- <url href="http://www.evilcoder.org/freebsd/handbook.tbz">Preview documentation tree</url>
- <url href="http://www.evilcoder.org/freebsd/html.tbz">Preview html in in tbz</url>
- </links>
- <body>
- <p>The FreeBSD Dutch Documentation project is a ongoing project
- translating the FreeBSD handbook {and others} to the dutch
- language. We are still on the look for translators and people
- that are willing to check the current html documentation.
- If you are interested, contact me at the email address shown
- above. We currently are reading for some checkups and then
- insert the first documents into the documentation tree.</p>
- </body>
- </project>
-
- <project>
- <title>FreeBSD Brazilian Documentation Project</title>
-
- <contact>
- <person>
- <name>
- <given>DOC-BR</given>
- <common>Discussion List</common>
- </name>
- <email>doc@fugspbr.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://doc.fugspbr.org" />
- <url href="http://lists.fugspbr.org/listinfo.cgi/doc-fugspbr.org" />
- <url href="http://developer.berlios.de/projects/doc-br/" />
- </links>
-
- <body>
- <p>The FreeBSD Brazilian Documentation Project is an effort of
- the Brazilian FreeBSD Users Group (FUG-BR) to translate the
- available documentation to pt_BR. We are proud to announce
- that we've finished the Handbook and FDP Primer translation and
- they are being revised. Both should be integrated to the FreeBSD
- CVS repository shortly.</p>
- <p>There are many other articles being translated and their status
- can be checked at our website. If you want to help please
- create an account at BerliOS, since our CVS repository is being
- hosted there, and contact us through our mailing list. Any help is
- welcome!</p>
- </body>
- </project>
-
- <project>
- <title>Packet Filter - pf</title>
-
- <contact>
- <person>
- <name>
- <given>Max</given>
- <common>Laier</common>
- </name>
- <email>mlaier@FreeBSD.org</email>
- </person>
- <person>
- <name>
- <given>Daniel</given>
- <common>Hartmeier</common>
- </name>
- <email>dhartmei@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.benzedrine.cx/pf.html">The pf homepage.</url>
- </links>
-
- <body>
- <p>We imported pf as of OpenBSD 3.5 stable on June, 17th which will be
- the base for 5-STABLE pf (according to the current schedule). The
- most important improvement in this release is the new interface
- handling which makes it possible to write pf rule sets for
- hot-pluggable devices and pseudo cloning devices, before they exist.
- The import of the ALTQ framework enabled us to finally provide the
- related pf functions as well.</p>
-
- <p>Before 5-STABLE we will import some bug fixes from OpenBSD-current,
- which have not been merged to their stable branch, as well as some
- FreeBSD specific features. The planned ALTQ API make-over will also
- affect pf.</p>
-
- <p>We are (desperately) looking for non-manpage documentation for
- FreeBSD pf and somebody to write it. Few things have changed
- so a port of the excellent "PF FAQ" on the OpenBSD homepage should
- be fitting. There are, however, a couple of points that need
- conversion. A simple tutorial how to setup a NAT gateway with pf
- would also help. The in-kernel NAT engine is very easy to use, we
- should tell people about this alternative. This is even more true
- since the pf module now plugs into GENERIC without modifications.</p>
- </body>
- </project>
-
- <project>
- <title>ALTQ import</title>
-
- <contact>
- <person>
- <name>
- <given>Max</given>
- <common>Laier</common>
- </name>
- <email>mlaier@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.csl.sony.co.jp/person/kjc/kjc/software.html#ALTQ"> ALTQ homepage.</url>
- <url href="http://www.rofug.ro/projects/freebsd-altq/">ALTQ integration in FreeBSD project.</url>
- <url href="http://kerneltrap.org/node.php?id=505">ALTQ merged into pf.</url>
- <url href="http://people.freebsd.org/~mlaier/ALTQ_driver/" />
-
- </links>
- <body>
- <p>The ALTQ framework is part of KAME for more than 4 years and has
- been adopted by Net- and OpenBSD since more than 3 years. It
- provides means of managing outgoing packets to do QoS and bandwidth
- limitations. OpenBSD developed a different way to interact with
- ALTQ using pf, which was adopted by KAME as the "default for
- everyday use".</p>
-
- <p>The Romanian FreeBSD Users Group has had a project to work towards
- integration of ALTQ into FreeBSD, which provided a very good
- starting point for the final import. The import only provides the
- "pf mode" configuration and classification API as the older ALTQ3
- API does not suit to our SMP approach.</p>
-
- <p>A reworked configuration API (decoupled from pf) is in the making
- as are additional driver modifications. Both should be done before
- 5-STABLE is branched, although additional drivers can be imported
- during the lifetime of 5-STABLE as well.</p>
- </body>
- </project>
-
- <project>
- <title>HP Network Scanjet 5</title>
-
- <contact>
- <person>
- <name>
- <given>Julian</given>
- <common>Stacey</common>
- </name>
- <email>jhs@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://berklix.com/scanjet/">HP Network Scanjet 5 Running FreeBSD Inside</url>
- </links>
-
- <body>
- <p>HP Network Scanjet 5 can unobtrusively run FreeBSD <i>inside</i> the
- scanner. Those who miss their Unix at work can have a FreeBSD box,
- un-noticed &amp; un-challenged by blinkered managers who block any
- non Microsoft PC in the building. http://berklix.com/scanjet/</p>
- </body>
- </project>
-
- <project>
- <title>EuroBSDCon 2004 registration now open</title>
-
- <contact>
- <person>
- <name>
- <given>Patrick M.</given>
- <common>Hausen</common>
- </name>
- <email>hausen@punkt.de</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.eurobsdcon2004.de/">EuroBSDCon 2004 official website</url>
- </links>
-
- <body>
- <p>Registration for EuroBSDCon 2004 taking place in Karlsruhe, Germany,
- from Oct. 29th to 31st has just opened. An early bird discount will
- be offered to all registering until Aug. 15th. Please see the
- conference website for details.</p>
- </body>
- </project>
-
- <project>
- <title>Buf Junta project</title>
-
- <contact>
- <person>
- <name>
- <given>Poul-Henning</given>
- <common>Kamp</common>
- </name>
- <email>phk@FreeBSD.org</email>
- </person>
- </contact>
-
- <body>
- <p>The buf-junta project is underway, I am trying to bisect the code
- such that we get a struct bufobj which is the handle and method
- carrier for a buffer-cache object. All vnodes contain a bufobj, but
- as filesystems get migrated to GEOM backing, bufobj's will exist
- which do not have an associated vnode. The work is ongoing.</p>
- </body>
- </project>
-
- <project>
- <title>TTY subsystem realignment</title>
-
- <contact>
- <person>
- <name>
- <given>Poul-Henning</given>
- <common>Kamp</common>
- </name>
- <email>phk@FreeBSD.org</email>
- </person>
- </contact>
-
- <body>
- <p>An effort to get the tty subsystem out from under Giant has
- morphed into an more general effort to eliminate a lot of
- code which have been improperly copy &amp; pasted into device
- drivers. In an ideal world, tty drivers would never get
- near a cdevsw, but since some drivers are more than just
- tty drivers (for instance sync) a more sensible compromise
- must be reached. The work is ongoing.</p>
- </body>
- </project>
-
- <project>
- <title>kgi4BSD</title>
-
- <contact>
- <person>
- <name>
- <given>Nicholas</given>
- <common>Souchu</common>
- </name>
- <email>nsouch@FreeBSD.org</email>
- </person>
- </contact>
-
- <links>
- <url href="http://www.FreeBSD.org/~nsouch/kgi4BSD"> Project URL</url>
- </links>
-
- <body>
- <p>KGI is going slowly but surely. The port of the KGI/Linux accel to
- FreeBSD is in progress. It's no more than a double buffering API for
- graphic command passing to the HW engine.</p>
-
- <p>Most of the work in the past months was about console management
- and more especially dual head console. Otherwise a new driver
- building tree is now ready to compile Linux and FreeBSD drivers in
- the same tree.</p>
-
- <p>Documentation about KGI design is in progress.</p>
- </body>
- </project>
-
- <project>
- <title>FreeBSD ports monitoring system</title>
-
- <contact>
- <person>
- <name>
- <given>Mark</given>
- <common>Linimon</common>
- </name>
-
- <email>linimon_at_lonesome_dot_com</email>
- </person>
- </contact>
-
- <links>
- <url href="http://portsmon.firepipe.net/index.html">FreeBSD ports monitoring system</url>
- </links>
-
- <body>
- <p>The system continues to function well. The accuracy of the
- automatic classification algorithm has been improved by
- assigning a higher priority to port names found in pieces of
- Makefiles.</p>
- <p>Several bugs had to be fixed due to the transition from bento to
- pointyhat. For about two weeks the URLs to the build errors
- were wrong. This has now been corrected (but note that some of the
- pointyhat summary pages themselves still show the broken
- links.)</p>
- <p>A report was added to show only PRs in the 'feedback' state, so
- that committers can focus on maintainer and/or responsible timeouts.
- (As a reminder, the policy is 2 weeks). Another report on 'ports
- that are in ports/MOVED, but still exist' has also been added to the
- Anomalies page. Sometimes these are actual errors but not always.</p>
- <p>Here are my latest observations about the trends in ports PRs:</p>
- <ul>
- <li>We were (very briefly) down to 650 ports PRs. From looking
- at the graphs, this appears to be the lowest number since 2001.
- This is despite the fact that between the two time periods the
- number of ports had increased 70%.</li>
- <li>We have made a little bit of progress on the number of PRs
- which apply to existing ports and have been assigned to a FreeBSD
- committer, from 400 to around 350. This is partly due to some
- committers going through the database, putting old PRs into the
- 'feedback' state, and then later invoking the 'maintainer timeout'
- rule mentioned above. (In some cases the PRs are now too old to
- still apply, and those are just closed.)</li>
- <li>A few maintainers are currently responsible for one-third of
- those 350. Please, if you feel that you are over committed,
- consider asking for new volunteers to maintain these ports.</li>
- <li>In terms of build errors, there is some new breakage from
- the preliminary testing with gcc3.4, which is even stricter with
- respect to the code it will accept than was gcc3.3. Many of these
- errors are shown as 'unknown' by the classification script. I
- have submitted a patch to fix this.</li>
- <li>The majority of the build errors are still due to compilation
- problems, primarily from the gcc upgrades. Since FreeBSD tends to
- be at the forefront of gcc adaptation, this is to be expected, but
- IMHO we should really try to fix as many of these as possible
- before 5.3 is released.</li>
- <li>The next highest number of build errors are caused by code
- that does not build on our 64-bit architectures due to the
- assumption that "all the world's a PC".
- <a href="http://portsmon.firepipe.net/ploticus/uniqueerrorcounts.html">
- Here is the entire list</a>; the individual bars are
- clickable.</li>
- </ul>
- </body>
- </project>
-
- <project>
- <title>Improved Multibyte/Wide Character Support</title>
- <contact>
- <person>
- <name>
- <given>Tim</given>
- <common>Robbins</common>
- </name>
- <email>tjr@FreeBSD.org</email>
- </person>
- </contact>
- <body>
- <p>Many more text-processing utilities in the FreeBSD base system have
- been updated to work with multibyte characters, including comm, cut,
- expand, fold, join, paste, unexpand, and uniq. New versions of GNU
- grep and GNU sort (from coreutils) have been imported, together with
- multibyte support patches from developers at IBM and Red Hat.</p>
- <p>Future work will focus on modifying the regular expression
- functions to work with multibyte characters, improving performance
- of the C library routines, and updating the remaining utilities (sed
- and tr are two important ones still remaining).</p>
- </body>
- </project>
-
- <project>
- <title>FreeBSD/arm</title>
-
- <contact>
- <person>
- <name>
- <given>Olivier</given>
- <common>Houchard</common>
- </name>
- <email>cognet@FreeBSD.org</email>
- </person>
- </contact>
-
- <body>
- Not much to report, Xscale support is in progress, and should
- boot at least single user really soon on an Intel IQ31244
- <p>Evaluation board.</p>
- </body>
- </project>
-
- <project>
- <title>CAM Lockdown</title>
-
- <contact>
- <person>
- <name>
- <given>Scott</given>
- <common>Long</common>
- </name>
- <email>scottl@freebsd.org</email>
- </person>
- </contact>
-
- <body>
- <p>Not much coding has taken place on this lately, with the recent
- focus being on refining the design. We are currently investigating
- per-CPU completion queues and threads in order to reduce locks and
- increase concurrency. Also reviewing the BSD/OS CAM lockdown to see
- what ideas can be shared. Work should hopefully puck back up in late
- July. Development is taking place in the FreeBSD Perforce repository
- under the <tt>//depot/projects/scottl-camlock/...</tt> branch for now.</p>
- </body>
- </project>
-
- <project>
- <title>Project Mini-Evil</title>
-
- <contact>
- <person>
- <name>
- <given>Scott</given>
- <common>Long</common>
- </name>
- <email>scottl@freebsd.org</email>
- </person>
- </contact>
-
- <body>
- <p>Project Mini-Evil is an attempt to extend Bill Paul's 'Project Evil'
- Windows NDIS wrapper layer to the SCSI MiniPort and StorePort layers.
- While drivers exist for most storage controllers that are on the
- market today, many companies are integrating software RAID into their
- products but not providing any source code or design specs. Instead
- of constantly reverse-engineering these raid layers and attempting to
- shoehorn them into the ata-raid driver, Project Mini-Evil will run
- the Windows drivers directly. It will hopefully also run most any
- SCSI/ATA/RAID drivers that conform to the SCSI Miniport or Storeport
- specification.</p>
- <p>Work on this project is split between making the NDIS wrapper code
- more general and implementing the new APIs. Development is taking
- place in the FreeBSD Perforce repository under the
- //depot/projects/sonofevil/... branch.</p>
- </body>
- </project>
-
-</report>