From 1daee4f2083450662fc0a629126b422ac1ad28bd Mon Sep 17 00:00:00 2001 From: Doc Manager Date: Sun, 20 Aug 2006 06:31:52 +0000 Subject: Create tag 'HRS_XML_CLEANUP'. --- en/cgi/man-wrapper.cgi | 8 - en/cgi/man.cgi | 1273 ---------------- en/news/status/report-2001-06.xml | 830 ---------- en/news/status/report-2001-07.xml | 1206 --------------- en/news/status/report-2001-08.xml | 1523 ------------------- en/news/status/report-2001-09.xml | 948 ------------ en/news/status/report-2001-11.xml | 1029 ------------- en/news/status/report-2001-12-2002-01.xml | 721 --------- en/news/status/report-2002-02-2002-04.xml | 1301 ---------------- en/news/status/report-2002-05-2002-06.xml | 1450 ------------------ en/news/status/report-2002-07-2002-08.xml | 1061 ------------- en/news/status/report-2002-09-2002-10.xml | 1025 ------------- en/news/status/report-2002-11-2002-12.xml | 881 ----------- en/news/status/report-2003-01-2003-02.xml | 704 --------- en/news/status/report-2003-03-2003-09.xml | 974 ------------ en/news/status/report-2003-10-2003-12.xml | 1365 ----------------- en/news/status/report-2004-01-2004-02.xml | 869 ----------- en/news/status/report-2004-03-2004-04.xml | 1156 -------------- en/news/status/report-2004-05-2004-06.xml | 1107 -------------- en/news/status/report-2004-07-2004-12.xml | 2341 ----------------------------- en/news/status/report-2005-01-2005-03.xml | 2147 -------------------------- en/news/status/report-2005-03-2005-06.xml | 2173 -------------------------- en/news/status/report-2005-07-2005-10.xml | 2037 ------------------------- en/news/status/report-2005-10-2005-12.xml | 1370 ----------------- en/news/status/report-2006-01-2006-03.xml | 1467 ------------------ en/news/status/report-2006-04-2006-06.xml | 2141 -------------------------- 26 files changed, 33107 deletions(-) delete mode 100755 en/cgi/man-wrapper.cgi delete mode 100755 en/cgi/man.cgi delete mode 100644 en/news/status/report-2001-06.xml delete mode 100644 en/news/status/report-2001-07.xml delete mode 100644 en/news/status/report-2001-08.xml delete mode 100644 en/news/status/report-2001-09.xml delete mode 100644 en/news/status/report-2001-11.xml delete mode 100644 en/news/status/report-2001-12-2002-01.xml delete mode 100644 en/news/status/report-2002-02-2002-04.xml delete mode 100644 en/news/status/report-2002-05-2002-06.xml delete mode 100644 en/news/status/report-2002-07-2002-08.xml delete mode 100644 en/news/status/report-2002-09-2002-10.xml delete mode 100644 en/news/status/report-2002-11-2002-12.xml delete mode 100644 en/news/status/report-2003-01-2003-02.xml delete mode 100644 en/news/status/report-2003-03-2003-09.xml delete mode 100644 en/news/status/report-2003-10-2003-12.xml delete mode 100644 en/news/status/report-2004-01-2004-02.xml delete mode 100644 en/news/status/report-2004-03-2004-04.xml delete mode 100644 en/news/status/report-2004-05-2004-06.xml delete mode 100644 en/news/status/report-2004-07-2004-12.xml delete mode 100644 en/news/status/report-2005-01-2005-03.xml delete mode 100644 en/news/status/report-2005-03-2005-06.xml delete mode 100644 en/news/status/report-2005-07-2005-10.xml delete mode 100644 en/news/status/report-2005-10-2005-12.xml delete mode 100644 en/news/status/report-2006-01-2006-03.xml delete mode 100644 en/news/status/report-2006-04-2006-06.xml diff --git a/en/cgi/man-wrapper.cgi b/en/cgi/man-wrapper.cgi deleted file mode 100755 index f05975c292..0000000000 --- a/en/cgi/man-wrapper.cgi +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/perl -T -# Copyright (c) Wolfram Schneider, Berlin. Sep 1997. -# -# FreeBSD man script -# -# $FreeBSD: www/en/cgi/man.cgi,v 1.4 2000/01/05 15:47:44 phantom Exp $ - -require '/usr/local/www/bsddoc/bin/man.cgi'; diff --git a/en/cgi/man.cgi b/en/cgi/man.cgi deleted file mode 100755 index 006245fc55..0000000000 --- a/en/cgi/man.cgi +++ /dev/null @@ -1,1273 +0,0 @@ -#!/usr/bin/perl -T -# -# Copyright (c) 1996-2004 Wolfram Schneider -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -# SUCH DAMAGE. -# -# man.cgi - HTML hypertext FreeBSD man page interface -# -# based on bsdi-man.pl,v 2.17 1995/10/05 16:48:58 sanders Exp -# bsdi-man -- HTML hypertext BSDI man page interface -# based on bsdi-man.pl,v 2.10 1993/10/02 06:13:23 sanders Exp -# by polk@BSDI.COM 1/10/95 -# BSDI Id: bsdi-man,v 1.2 1995/01/11 02:30:01 polk Exp -# Dual CGI/Plexus mode and new interface by sanders@bsdi.com 9/22/1995 -# -# $Id: man.cgi,v 1.165 2006-07-11 12:10:38 www Exp $ - -#use Data::Dumper; -#use Carp; - - -$www{'title'} = 'FreeBSD Hypertext Man Pages'; -$www{'home'} = 'http://www.FreeBSD.org'; -$www{'head'} = qq[$www{'title'} ] . - qq[] . - ""; - -$command{'man'} = 'man'; # 8Bit clean man -$command{'man'} = '/home/wosch/bin/cgi-man'; # 8Bit clean man -$command{'man'} = '/usr/bin/man'; # 8Bit clean man - - -# Config Options -# map sections to their man command argument(s) -%sections = ( - '', '', - 'All', '', - '0', '', - - '1', '-S1', - '1c', '-S1', - '1C', '-S1', - '1g', '-S1', - '1m', '-S1', - '2', '-S2', - '2j', '-S2', - '3', '-S3', - '3S', '-S3', - '3f', '-S3', - '3j', '-S3', - '3m', '-S3', - '3n', '-S3', - '3r', '-S3', - '3s', '-S3', - '3x', '-S3', - '4', '-S4', - '5', '-S5', - '6', '-S6', - '7', '-S7', - '8', '-S8', - '8c', '-S8', - '9', '-S9', - 'l', '-Sl', - 'n', '-Sn', -); - -$sectionpath = { - 'HP-UX 11.22' => { 'path' => '1:1m:2:3:4:5:7:9' }, - 'HP-UX 11.20' => { 'path' => '1:1m:2:3:4:5:7:9' }, - 'HP-UX 11.11' => { 'path' => '1:1m:2:3:4:5:7:9' }, - 'HP-UX 11.00' => { 'path' => '1:1m:2:3:4:5:7:9' }, - 'HP-UX 10.20' => { 'path' => '1:1m:2:3:4:5:7:9' }, - 'HP-UX 10.10' => { 'path' => '1:1m:2:3:4:5:7:9' }, - 'HP-UX 10.01' => { 'path' => '1:1m:2:3:4:5:7:9' }, - 'SunOS 5.10' => { - 'path' => '1:1m:1s:1as:2:3:3c:3malloc:3nsl:3socket:3ldap:3nisdb:3rac:3resolv:3rpc:3slp:3proc:3rt:3c_db:3elf:3kvm:3kstat:3m:3mp:3mvec:3pam:3aio:3bsm:3tsol:3contract:3cpc:3sec:3secdb:3smartcard:3cfgadm:3crypt:3devid:3devinfo:3door:3lib:3libucb:3head:3nvpair:3rsm:7:7d:7fs:7i:7ipp:7m:7p:9:9e:9f:9p:9s:4:5:4b:3gen:3exacct:3sysevent:3uuid:3wsreg:3dmi:3snmp:3tnf:3volmgt:3mail:3layout:3ext:3picl:3picltree:3pool:3project:3perl:3lgrp:3sasl:3scf:3dat:3hbaapi:3tecla:1b:1c:1f:3ucb:3xnet:3curses:3plot:3xcurses:3gss:6:3tiff:3fontconfig:3mlib:l:n', - }, - 'SunOS 5.9' => { - 'path' => '1:1m:1s:2:3:3c:3malloc:3dl:3nsl:3socket:3ldap:3nisdb:3rac:3resolv:3rpc:3slp:3xfn:3proc:3rt:3thr:3elf:3kvm:3kstat:3m:3mp:3pam:3sched:3aio:3bsm:3cpc:3sec:3secdb:3cfgadm:3crypt:3devid:3devinfo:3door:3lib:3libucb:3head:3nvpair:3rsm:7:7d:7fs:7i:7m:7p:9:9e:9f:9p:9s:4:5:4b:3gen:3exacct:3sysevent:3wsreg:3dmi:3snmp:3tnf:3volmgt:3mail:3layout:3ext:3picl:3picltree:3pool:3project:1b:1c:1f:3ucb:3xnet:3curses:3plot:3xcurses:3gss:6:l:n', - }, - 'SunOS 5.8' => { - 'path' => '1:1m:1s:2:3:3c:3malloc:3dl:3nsl:3socket:3ldap:3krb:3nisdb:3rac:3resolv:3rpc:3slp:3xfn:3proc:3rt:3thr:3elf:3kvm:3kstat:3m:3mp:3pam:3sched:3aio:3bsm:3cpc:3sec:3secdb:3cfgadm:3crypt:3devid:3devinfo:3door:3lib:3libucb:3head:7:7d:7fs:7i:7m:7p:9:9e:9f:9s:4:5:4b:3gen:3dmi:3snmp:3tnf:3volmgt:3mail:3layout:3ext:1b:1c:1f:3ucb:3xnet:3curses:3plot:3xcurses:6:l:n', - }, - 'SunOS 5.7' => { - 'path' => '1:1m:1c:1f:1s:1b:2:3:3c:3s:3x:3xc:3n:3r:3t:3xn:3m:3k:3g:3e:3b:9f:9s:9e:9:4:5:7:7d:7i:7m:7p:7fs:4b:6:l:n', - }, - 'SunOS 5.6' => { - 'path' => '1:1m:1c:1f:1s:1b:2:3:3c:3s:3x:3xc:3xn:3r:3t:3n:3m:3k:3g:3e:3b:9f:9s:9e:9:4:5:7:7d:7i:7m:7p:7fs:4b:6:l:n', - }, - 'SunOS 5.5.1' => { - 'path' => '1:1m:1c:1f:1s:1b:2:3:3c:3s:3x:3xc:3xn:3r:3t:3n:3m:3k:3g:3e:3b:9f:9s:9e:9:4:5:7:7d:7i:7m:7p:7fs:4b:6:l:n', - }, - 'OpenBSD 3.0' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.1' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.2' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.3' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.4' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.5' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.6' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.7' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.8' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, - 'OpenBSD 3.9' => { 'path' => '1:2:3:3p:4:5:6:7:8:9', }, -}; - -foreach my $os (keys %$sectionpath) { - foreach my $section (split(/:/, $sectionpath->{$os}{'path'})) { - $section =~ /(.)(.*)/; - $sectionpath->{$os}{$1} .= - ($sectionpath->{$os}{$1} ? ':' : '') . $section; - } -} - - -%sectionName = - ( - '0', 'All Sections', - '1', '1 - General Commands', - '2', '2 - System Calls', - '3', '3 - Subroutines', - '4', '4 - Special Files', - '5', '5 - File Formats', - '6', '6 - Games', - '7', '7 - Macros and Conventions', - '8', '8 - Maintenance Commands', - '9', '9 - Kernel Interface', - 'n', 'n - New Commands', - ); - -$manLocalDir = '/usr/local/www/bsddoc/man'; -$manPathDefault = 'FreeBSD 6.1-RELEASE'; - -%manPath = - ( - 'FreeBSD 6.1-RELEASE and Ports', "$manLocalDir/FreeBSD-6.1-RELEASE/man:$manLocalDir/FreeBSD-6.1-RELEASE/openssl/man:$manLocalDir/FreeBSD-ports", - - 'FreeBSD 7.0-current', "$manLocalDir/FreeBSD-7-current", - 'FreeBSD 5.5-stable', "$manLocalDir/FreeBSD-5.5-stable", - - 'FreeBSD 6.1-RELEASE', "$manLocalDir/FreeBSD-6.1-RELEASE/man:$manLocalDir/FreeBSD-6.1-RELEASE/openssl/man", - 'FreeBSD 6.0-RELEASE', "$manLocalDir/FreeBSD-6.0-RELEASE/man:$manLocalDir/FreeBSD-6.0-RELEASE/openssl/man", - 'FreeBSD 5.5-RELEASE', "$manLocalDir/FreeBSD-5.5-RELEASE/man:$manLocalDir/FreeBSD-5.5-RELEASE/openssl/man", - 'FreeBSD 5.4-RELEASE', "$manLocalDir/FreeBSD-5.4-RELEASE/man:$manLocalDir/FreeBSD-5.4-RELEASE/openssl/man", - 'FreeBSD 5.3-RELEASE', "$manLocalDir/FreeBSD-5.3-RELEASE/man:$manLocalDir/FreeBSD-5.3-RELEASE/openssl/man", - 'FreeBSD 5.2.1-RELEASE', "$manLocalDir/FreeBSD-5.2-RELEASE/man:$manLocalDir/FreeBSD-5.2-RELEASE/openssl/man", - 'FreeBSD 5.2-RELEASE', "$manLocalDir/FreeBSD-5.2-RELEASE/man:$manLocalDir/FreeBSD-5.2-RELEASE/openssl/man", - 'FreeBSD 5.1-RELEASE', "$manLocalDir/FreeBSD-5.1-RELEASE/man:$manLocalDir/FreeBSD-5.1-RELEASE/openssl/man", - 'FreeBSD 5.0-RELEASE', "$manLocalDir/FreeBSD-5.0-RELEASE", - 'FreeBSD 4.11-RELEASE', "$manLocalDir/FreeBSD-4.11-RELEASE/man:$manLocalDir/FreeBSD-4.11-RELEASE/openssl/man:$manLocalDir/FreeBSD-4.11-RELEASE/perl/man", - 'FreeBSD 4.10-RELEASE', "$manLocalDir/FreeBSD-4.10-RELEASE/man:$manLocalDir/FreeBSD-4.10-RELEASE/openssl/man:$manLocalDir/FreeBSD-4.10-RELEASE/perl/man", - 'FreeBSD 4.9-RELEASE', "$manLocalDir/FreeBSD-4.9-RELEASE", - 'FreeBSD 4.8-RELEASE', "$manLocalDir/FreeBSD-4.8-RELEASE", - 'FreeBSD 4.7-RELEASE', "$manLocalDir/FreeBSD-4.7-RELEASE", - 'FreeBSD 4.6.2-RELEASE', "$manLocalDir/FreeBSD-4.6.2-RELEASE", - 'FreeBSD 4.6-RELEASE', "$manLocalDir/FreeBSD-4.6-RELEASE", - 'FreeBSD 4.5-RELEASE', "$manLocalDir/FreeBSD-4.5-RELEASE", - 'FreeBSD 4.4-RELEASE', "$manLocalDir/FreeBSD-4.4-RELEASE", - 'FreeBSD 4.3-RELEASE', "$manLocalDir/FreeBSD-4.3-RELEASE", - 'FreeBSD 4.2-RELEASE', "$manLocalDir/FreeBSD-4.2-RELEASE", - 'FreeBSD 4.1.1-RELEASE', "$manLocalDir/FreeBSD-4.1.1-RELEASE", - 'FreeBSD 4.1-RELEASE', "$manLocalDir/FreeBSD-4.1-RELEASE", - 'FreeBSD 4.0-RELEASE', "$manLocalDir/FreeBSD-4.0-RELEASE", - 'FreeBSD 3.5.1-RELEASE', "$manLocalDir/FreeBSD-3.5.1-RELEASE", - 'FreeBSD 3.4-RELEASE', "$manLocalDir/FreeBSD-3.4-RELEASE", - 'FreeBSD 3.3-RELEASE', "$manLocalDir/FreeBSD-3.3-RELEASE", - 'FreeBSD 3.2-RELEASE', "$manLocalDir/FreeBSD-3.2-RELEASE", - 'FreeBSD 3.1-RELEASE', "$manLocalDir/FreeBSD-3.1-RELEASE", - 'FreeBSD 3.0-RELEASE', "$manLocalDir/FreeBSD-3.0-RELEASE", - 'FreeBSD 2.2.5-RELEASE', "$manLocalDir/FreeBSD-2.2.5-RELEASE", - 'FreeBSD 2.2.6-RELEASE', "$manLocalDir/FreeBSD-2.2.6-RELEASE", - 'FreeBSD 2.2.7-RELEASE', "$manLocalDir/FreeBSD-2.2.7-RELEASE", - 'FreeBSD 2.2.8-RELEASE', "$manLocalDir/FreeBSD-2.2.8-RELEASE", - 'FreeBSD 2.2.2-RELEASE', "$manLocalDir/FreeBSD-2.2.2-RELEASE", - 'FreeBSD 2.2.1-RELEASE', "$manLocalDir/FreeBSD-2.2.1-RELEASE", - 'FreeBSD 2.1.7.1-RELEASE', "$manLocalDir/FreeBSD-2.1.7.1-RELEASE", - 'FreeBSD 2.1.6.1-RELEASE', "$manLocalDir/FreeBSD-2.1.6.1-RELEASE", - 'FreeBSD 2.1.5-RELEASE', "$manLocalDir/FreeBSD-2.1.5-RELEASE", - 'FreeBSD 2.1.0-RELEASE', "$manLocalDir/FreeBSD-2.1.0-RELEASE", - 'FreeBSD 2.0.5-RELEASE', "$manLocalDir/FreeBSD-2.0.5-RELEASE", - 'FreeBSD 2.0-RELEASE', "$manLocalDir/FreeBSD-2.0-RELEASE", - 'FreeBSD 1.1.5.1-RELEASE', "$manLocalDir/FreeBSD-1.1.5.1-RELEASE", - 'FreeBSD 1.1-RELEASE', "$manLocalDir/FreeBSD-1.1-RELEASE", - 'FreeBSD 1.0-RELEASE', "$manLocalDir/FreeBSD-1.0-RELEASE", - - 'FreeBSD Ports 6.1-RELEASE', "$manLocalDir/FreeBSD-ports-6.1-RELEASE", - 'FreeBSD Ports 5.1-RELEASE', "$manLocalDir/FreeBSD-ports-5.1-RELEASE", - 'FreeBSD Ports 5.0-RELEASE', "$manLocalDir/FreeBSD-ports-5.0-RELEASE", - 'FreeBSD Ports 4.7-RELEASE', "$manLocalDir/FreeBSD-ports-4.7-RELEASE", - - 'OpenBSD 2.0', "$manLocalDir/OpenBSD-2.0", - 'OpenBSD 2.1', "$manLocalDir/OpenBSD-2.1", - 'OpenBSD 2.2', "$manLocalDir/OpenBSD-2.2", - 'OpenBSD 2.3', "$manLocalDir/OpenBSD-2.3", - 'OpenBSD 2.4', "$manLocalDir/OpenBSD-2.4", - 'OpenBSD 2.5', "$manLocalDir/OpenBSD-2.5", - 'OpenBSD 2.6', "$manLocalDir/OpenBSD-2.6", - 'OpenBSD 2.7', "$manLocalDir/OpenBSD-2.7", - 'OpenBSD 2.8', "$manLocalDir/OpenBSD-2.8", - 'OpenBSD 2.9', "$manLocalDir/OpenBSD-2.9", - 'OpenBSD 3.0', "$manLocalDir/OpenBSD-3.0", - 'OpenBSD 3.1', "$manLocalDir/OpenBSD-3.1", - 'OpenBSD 3.2', "$manLocalDir/OpenBSD-3.2", - 'OpenBSD 3.3', "$manLocalDir/OpenBSD-3.3", - 'OpenBSD 3.4', "$manLocalDir/OpenBSD-3.4/share/man:$manLocalDir/OpenBSD-3.4/X11R6/man", - 'OpenBSD 3.5', "$manLocalDir/OpenBSD-3.5/share/man:$manLocalDir/OpenBSD-3.5/X11R6/man", - 'OpenBSD 3.6', "$manLocalDir/OpenBSD-3.6/share/man:$manLocalDir/OpenBSD-3.6/X11R6/man", - 'OpenBSD 3.7', "$manLocalDir/OpenBSD-3.7", - 'OpenBSD 3.8', "$manLocalDir/OpenBSD-3.8", - 'OpenBSD 3.9', "$manLocalDir/OpenBSD-3.9", - - #'NetBSD 0.9', "$manLocalDir/NetBSD-0.9", - 'NetBSD 1.0', "$manLocalDir/NetBSD-1.0", - 'NetBSD 1.1', "$manLocalDir/NetBSD-1.1", - 'NetBSD 1.2', "$manLocalDir/NetBSD-1.2", - 'NetBSD 1.2.1', "$manLocalDir/NetBSD-1.2.1", - 'NetBSD 1.3', "$manLocalDir/NetBSD-1.3", - 'NetBSD 1.3.1', "$manLocalDir/NetBSD-1.3.1", - 'NetBSD 1.3.2', "$manLocalDir/NetBSD-1.3.2", - 'NetBSD 1.3.3', "$manLocalDir/NetBSD-1.3.3", - 'NetBSD 1.4', "$manLocalDir/NetBSD-1.4", - 'NetBSD 1.4.1', "$manLocalDir/NetBSD-1.4.1", - 'NetBSD 1.4.2', "$manLocalDir/NetBSD-1.4.2", - 'NetBSD 1.4.3', "$manLocalDir/NetBSD-1.4.3", - 'NetBSD 1.5', "$manLocalDir/NetBSD-1.5", - 'NetBSD 1.5.1', "$manLocalDir/NetBSD-1.5.1", - 'NetBSD 1.5.2', "$manLocalDir/NetBSD-1.5.2", - 'NetBSD 1.5.3', "$manLocalDir/NetBSD-1.5.3", - 'NetBSD 1.6', "$manLocalDir/NetBSD-1.6", - 'NetBSD 1.6.1', "$manLocalDir/NetBSD-1.6.1", - 'NetBSD 1.6.2', "$manLocalDir/NetBSD-1.6.2", - 'NetBSD 2.0', "$manLocalDir/NetBSD-2.0", - 'NetBSD 2.0.2', "$manLocalDir/NetBSD-2.0.2", - 'NetBSD 2.1', "$manLocalDir/NetBSD-2.1", - 'NetBSD 3.0', "$manLocalDir/NetBSD-3.0", - - '2.8 BSD', "$manLocalDir/2.8BSD", - '2.9.1 BSD', "$manLocalDir/2.9.1BSD", - '2.10 BSD', "$manLocalDir/2.10BSD", - '2.11 BSD', "$manLocalDir/2.11BSD", - '386BSD 0.0', "$manLocalDir/386BSD-0.0", - '386BSD 0.1', "$manLocalDir/386BSD-0.1", - '4.3BSD Reno', "$manLocalDir/4.3BSD-Reno", - '4.3BSD NET/2', "$manLocalDir/net2", - '4.4BSD Lite2', "$manLocalDir/4.4BSD-Lite2", - - 'Linux Slackware 3.1', "$manLocalDir/Slackware-3.1", - 'Red Hat Linux/i386 4.2', "$manLocalDir/RedHat-4.2", - 'Red Hat Linux/i386 5.0', "$manLocalDir/RedHat-5.0", - 'Red Hat Linux/i386 5.2', "$manLocalDir/RedHat-5.2-i386", - 'Red Hat Linux/i386 6.1', "$manLocalDir/RedHat-6.1-i386", - 'Red Hat Linux/i386 6.2', "$manLocalDir/RedHat-6.2-i386", - 'Red Hat Linux/i386 7.0', "$manLocalDir/RedHat-7.0-i386", - 'Red Hat Linux/i386 7.1', "$manLocalDir/RedHat-7.1-i386", - 'Red Hat Linux/i386 7.2', "$manLocalDir/RedHat-7.2-i386", - 'Red Hat Linux/i386 7.3', "$manLocalDir/RedHat-7.3-i386", - 'Red Hat Linux/i386 8.0', "$manLocalDir/RedHat-8.0-i386", - 'Red Hat Linux/i386 9', "$manLocalDir/RedHat-9-i386", - - 'SuSE Linux/i386 4.3', "$manLocalDir/SuSE-4.3-i386", - 'SuSE Linux/i386 5.0', "$manLocalDir/SuSE-5.0-i386", - 'SuSE Linux/i386 5.2', "$manLocalDir/SuSE-5.2-i386", - 'SuSE Linux/i386 5.3', "$manLocalDir/SuSE-5.3-i386", - 'SuSE Linux/i386 6.0', "$manLocalDir/SuSE-6.0-i386", - 'SuSE Linux/i386 6.1', "$manLocalDir/SuSE-6.1-i386", - 'SuSE Linux/i386 6.3', "$manLocalDir/SuSE-6.3-i386", - 'SuSE Linux/i386 6.4', "$manLocalDir/SuSE-6.4-i386", - 'SuSE Linux/i386 7.0', "$manLocalDir/SuSE-7.0-i386", - 'SuSE Linux/i386 7.1', "$manLocalDir/SuSE-7.1-i386", - 'SuSE Linux/i386 7.2', "$manLocalDir/SuSE-7.2-i386", - 'SuSE Linux/i386 7.3', "$manLocalDir/SuSE-7.3-i386", - 'SuSE Linux/i386 8.0', "$manLocalDir/SuSE-8.0-i386", - 'SuSE Linux/i386 8.1', "$manLocalDir/SuSE-8.1-i386", - 'SuSE Linux/i386 8.2', "$manLocalDir/SuSE-8.2-i386", - - 'HP-UX 11.22', "$manLocalDir/HP-UX-11.22", - 'HP-UX 11.20', "$manLocalDir/HP-UX-11.20", - 'HP-UX 11.11', "$manLocalDir/HP-UX-11.11", - 'HP-UX 11.00', "$manLocalDir/HP-UX-11.00", - 'HP-UX 10.20', "$manLocalDir/HP-UX-10.20", - 'HP-UX 10.10', "$manLocalDir/HP-UX-10.10", - 'HP-UX 10.01', "$manLocalDir/HP-UX-10.01", - - 'SunOS 5.10', "$manLocalDir/SunOS-5.10", - 'SunOS 5.9', "$manLocalDir/SunOS-5.9", - 'SunOS 5.8', "$manLocalDir/SunOS-5.8", - 'SunOS 5.7', "$manLocalDir/SunOS-5.7", - 'SunOS 5.6', "$manLocalDir/SunOS-5.6", - 'SunOS 5.5.1', "$manLocalDir/SunOS-5.5.1", - 'SunOS 4.1.3', "$manLocalDir/SunOS-4.1.3", - - 'XFree86 3.2', "$manLocalDir/XFree86-3.2", - 'XFree86 3.3', "$manLocalDir/XFree86-3.3", - 'XFree86 3.3.6', "$manLocalDir/XFree86-3.3.6", - 'XFree86 4.0', "$manLocalDir/XFree86-4.0", - 'XFree86 4.0.1', "$manLocalDir/XFree86-4.0.1", - 'XFree86 4.0.2', "$manLocalDir/XFree86-4.0.2", - 'XFree86 4.1.0', "$manLocalDir/XFree86-4.1.0", - 'XFree86 4.2.0', "$manLocalDir/XFree86-4.2.0", - 'XFree86 4.2.99.3', "$manLocalDir/XFree86-4.2.99.3", - 'XFree86 4.3.0', "$manLocalDir/XFree86-4.3.0", - 'XFree86 4.4.0', "$manLocalDir/XFree86-4.4.0", - - 'X11R6.7.0', "$manLocalDir/X11R6.7.0", - - 'ULTRIX 4.2', "$manLocalDir/ULTRIX-4.2", - 'OSF1 V4.0/alpha', "$manLocalDir/OSF1-V4.0-alpha", - 'OSF1 V5.1/alpha', "$manLocalDir/OSF1-V5.1-alpha", - - 'Plan 9', "$manLocalDir/plan9", - 'Minix 2.0', "$manLocalDir/Minix-2.0", - 'Unix Seventh Edition', "$manLocalDir/v7man", - 'deutsch - Linux/GNU', "$manLocalDir/linux-de-0.4", - "Darwin 1.3.1/x86", "$manLocalDir/Darwin-1.3.1-x86", - "Darwin 1.4.1/x86", "$manLocalDir/Darwin-1.4.1-x86", - "Darwin 6.0.2/x86", "$manLocalDir/Darwin-6.0.2-x86", - "Darwin 7.0.1", "$manLocalDir/Darwin-7.0.1", - "Darwin 8.0.1/ppc", "$manLocalDir/Darwin-8.0.1-ppc", - "OpenDarwin 20030208pre4/ppc", "$manLocalDir/OpenDarwin-20030208pre4-ppc", - "OpenDarwin 6.6.1/x86", "$manLocalDir/OpenDarwin-6.6.1-x86", - "OpenDarwin 6.6.2/x86", "$manLocalDir/OpenDarwin-6.6.2-x86", - "OpenDarwin 7.2.1", "$manLocalDir/OpenDarwin-7.2.1", -); - -# delete not existing releases -while (($key,$val) = each %manPath) { - my $counter = 0; - - # if the manpath contains colons, at least one directory must exists - foreach (split(/:/, $val)) { - $counter++ if -d; - } - - # give up and delete release - delete $manPath{"$key"} if !$counter && $key ne $manPathDefault; -} - -# keywords must be in lower cases. -%manPathAliases = - ( - 'freebsd', 'FreeBSD 6.1-RELEASE', - 'freebsd-stable', 'FreeBSD 6.1-stable', - 'freebsd-stable4', 'FreeBSD 4.11-stable', - 'freebsd-stable5', 'FreeBSD 5.5-stable', - 'freebsd-stable6', 'FreeBSD 6.1-stable', - 'freebsd-current', 'FreeBSD 7-current', - 'slackware', 'Linux Slackware 3.1', - 'linux-de', 'deutsch - Linux/GNU', - 'redhat', 'Red Hat Linux/i386 9', - 'suse', 'SuSE Linux/i386 8.2', - 'linux', 'Red Hat Linux/i386 9', - 'darwin', 'Darwin 8.0.1/ppc', - 'opendarwin', 'OpenDarwin 7.2.1', - 'macosx', 'Darwin 8.0.1/ppc', - - 'netbsd', 'NetBSD 3.0', - 'openbsd', 'OpenBSD 3.9', - 'v7', 'Unix Seventh Edition', - 'v7man', 'Unix Seventh Edition', - 'x11', 'X11R6.7.0', - 'xfree86', 'XFree86 4.4.0', - 'ultrix', 'ULTRIX 4.2', - 'hpux', 'HP-UX 11.22', - 'solaris', 'SunOS 5.10', - 'sunos5', 'SunOS 5.10', - 'sunos4', 'SunOS 4.1.3', - 'sunos', 'SunOS 4.1.3', - 'freebsd ports', 'FreeBSD Ports 5.1-RELEASE', - 'ports', 'FreeBSD Ports 5.1-RELEASE', - 'plan9', 'Plan 9', - 'osf1', 'OSF1 V5.1/alpha', - 'true64', 'OSF1 V5.1/alpha', -); - -foreach (sort keys %manPathAliases) { - # delete non-existing aliases - if (!defined($manPath{$manPathAliases{$_}})) { - undef $manPathAliases{$_}; - next; - } - - # add aliases, replases spaces with dashes - if (/\s/) { - local($key) = $_; - $key =~ s/\s+/-/g; - $manPathAliases{$key} = $manPathAliases{$_}; - } -} - -@sections = keys %sections; shift @sections; # all but the "" entry -$sections = join("|", @sections); # sections regexp - - -# mailto - Author -# webmaster - who run this service -$mailto = 'wosch@FreeBSD.org'; -$mailtoURL = 'http://wolfram.schneider.org'; -$mailtoURL = "mailto:$mailto" if !$mailtoURL; -$webmaster = $mailto; -$webmasterURL = $mailtoURL; -$manstat = 'http://www.de.freebsd.org/de/stat/man'; - -&secure_env; -# CGI Interface -- runs at load time -&do_man(&env('SCRIPT_NAME'), &env('PATH_INFO'), &env('QUERY_STRING')) - unless defined($main'plexus_configured); - -$enable_include_links = 0; - -# Plexus Native Interface -sub do_man { - local($BASE, $path, $form) = @_; - local($_, %form, $query, $proto, $name, $section, $apropos); - - # spinner is buggy, shit - local($u) = 'http://user.cs.tu-berlin.de/~wosch/man.cgi'; - local($u)= $BASE; - - return &faq_output($u) if ($path =~ /faq.html$/); - return ©right_output($u) if ($path =~ /copyright.html$/); - return &get_the_sources if ($path =~ /source$/); - - return &include_output($path) - if ($enable_include_links && $path =~ m%^/usr/include/% && -f $path); - - return &indexpage if ($form eq ""); - - &decode_form($form, *form, 0); - - $format = $form{'format'}; - $format = 'html' if $format !~ /^(ps|pdf|ascii|latin1|dvi|troff)$/; - - local($fform) = &dec($form); - if ($fform =~ m%^([a-zA-Z_\-]+)$%) { - return &man($1, ''); - } elsif ($fform =~ m%^([a-zA-Z_\-]+)\(([0-9a-zA-Z]+)\)$%) { - return &man($1, $2); - } - - # remove trailing spaces for dumb users - $form{'query'} =~ s/\s+$//; - $form{'query'} =~ s/^\s+//; - - $name = $query = $form{'query'}; - $section = $form{'sektion'}; - $apropos = $form{'apropos'}; - $alttitle = $form{'title'}; - $manpath = $form{'manpath'}; - if (!$manpath) { - $manpath = $manPathDefault; - } elsif (!$manPath{$manpath}) { - local($m) = ($manpath =~ y/A-Z/a-z/); - if ($manPath{$manPathAliases{$manpath}}) { - $manpath = $manPathAliases{$manpath}; - } else { - $manpath = $manPathDefault; - } - } - - # download a man hierarchie as gzip'd tar file - return &download if ($apropos > 1); - - # empty query - return &indexpage if ($manpath && $form !~ /query=/); - - $section = "" if $section eq "ALL" || $section eq ''; - - if (!$apropos && $query =~ m/^(.*)\(([^\)]*)\)/) { - $name = $1; $section = $2; - } - - $apropos ? &apropos($query) : &man($name, $section); -} - -# --------------------- support routines ------------------------ - -sub debug { - &http_header("text/plain"); - print @_,"\n----------\n\n\n"; -} - -sub get_the_sources { - local($file) = '/usr/local/www/bsddoc/bin/man.cgi'; - $file = $0 if ! -f $file; - - open(R, $file) || &mydie("open $file: $!\n"); - print "Content-type: text/plain\n\n"; - while() { print } - close R; - exit; -} - -# download a manual directory as gzip'd tar archive -sub download { - - $| = 1; - my $filename = $manpath; - $filename =~ s/\s+/_/; - $filename = &encode_url($filename); - $filename .= '.tar.gz'; - - print qq{Content-type: application/x-tar\n} . - qq{Content-encoding: x-gzip\n} . - qq{Content-disposition: inline; filename="$filename"\n} . - "\n"; - - local(@m); - local($m) = $manPath{"$manpath"}; - foreach (split(/:/, $m)) { - push(@m, $_) if s%^$manLocalDir/?%%; - } - - chdir($manLocalDir) || do { - print "chdir: $!\n"; exit(0); - }; - - $m = join(" ", @m); - #warn "find $m -print | cpio -o -H tar 2>/dev/null | gzip -cqf"; - - sleep 1; - system("find $m -print | cpio -o -H tar 2>/dev/null | gzip -cqf"); - exit(0); -} - -sub http_header { - local($content_type) = @_; - if (defined($main'plexus_configured)) { - &main'MIME_header('ok', $content_type); - } else { - print "Content-type: $content_type\n\n"; - } -} - -sub env { defined($main'ENV{$_[0]}) ? $main'ENV{$_[0]} : undef; } - -sub apropos { - local($query) = @_; - local($_, $title, $head, *APROPOS); - local($names, $section, $msg, $key); - local($prefix); - - $prefix = "Apropos "; - if ($alttitle) { - $prefix = ""; - $title = &encode_title($alttitle); - $head = &encode_data($alttitle); - } else { - $title = &encode_title($query); - $head = &encode_data($query); - } - - &http_header("text/html"); - print &html_header("Apropos $title"); - print "

$www{'head'}

\n\n"; - &formquery; - - local($mpath) = $manPath{$manpath}; - - open(APROPOS, "env MANPATH=$mpath $command{'man'} -k . |") || do { - warn "$0: Cannot open whatis database for `$mpath'\n"; - print "Cannot open whatis database for `$mpath'\n"; - print "\n\n\n"; - return; - }; - - local($q) = $query; - $q =~ s/(\W)/\\W/g; - local($acounter) = 0; - - while () { - next if !/$q/oi; - $acounter++; - - # matches whatis.db lines: name[, name ...] (sect) - msg - $names = $section = $msg = $key = undef; - ($key, $section) = m/^([^()]+)\(([^)]*)\)/; - $key =~ s/\s+$//; - $key =~ s/.*\s+//; - ($names, $msg) = m/^(.*\))\s+-\s+(.*)/; - print "
", - &encode_data("$names"), "\n
", - &encode_data($msg), "\n"; - } - close(APROPOS); - - if (!$acounter) { - print "Sorry, no data found for `$query'.\n"; - print qq{You may look for other } . - qq{FreeBSD Search Services.\n}; - } - print "\n\n\n"; -} - -sub man { - local($name, $section) = @_; - local($_, $title, $head, *MAN); - local($html_name, $html_section, $prefix); - local(@manargs); - local($query) = $name; - - # $section =~ s/^([0-9ln]).*$/$1/; - $section =~ tr/A-Z/a-z/; - - $prefix = "Man "; - if ($alttitle) { - $prefix = ""; - $title = &encode_title($alttitle); - $head = &encode_data($alttitle); - } elsif ($section) { - $title = &encode_title("${name}($section)"); - $head = &encode_data("${name}($section)"); - } else { - $title = &encode_title("${name}"); - $head = &encode_data("${name}"); - } - - if ($format eq "html") { - &http_header("text/html"); - print &html_header("$title"); - print "

$www{'head'}

\n\n"; - &formquery; - print "
\n";
-    } else {
-	#$format =~ /^(ps|ascii|latin1|dvi|troff)$/')
-	$ENV{'NROFF_FORMAT'} = $format;
-
-	# Content-encoding: x-gzip
-	if ($format eq "ps") {
-	    &http_header("application/postscript");
-	} elsif ($format eq "pdf") {
-	    &http_header("application/pdf");
-	} elsif ($format eq "dvi") {
-	    &http_header("application/x-dvi");
-	} elsif ($format eq "troff") {
-	    &http_header("application/x-troff-mandoc");
-	} else {
-	    &http_header("text/plain");
-	}
-    }
-
-    $html_name = &encode_data($name);
-    $html_section = &encode_data($section);
-
-    #print Dumper($sectionpath);
-    #print "yy $section yy $manpath\n";
-    if ($name =~ /^\s*$/) {	
-	print "Empty input, no man page given.\n";
-	return;
-    }
-
-    if (index($name, '*') != -1) {	
-	print "Invalid character input '*': $name\n";
-	return;
-    }
-
-    if ($section !~ /^[0-9ln]\w*$/ && $section ne '') {
-	print "Sorry, section `$section' is not valid\n";
-	return;
-    }
-
-    if (!$section) {
-	if ($sectionpath->{$manpath}) {
-	    $section = "-S " . $sectionpath->{$manpath}{'path'};
-	} else {
-	    $section =  '';
-	}
-    } else {
-	if ($sectionpath->{$manpath}{$section}) {
-	    $section = "-S " . $sectionpath->{$manpath}{$section};
-	} else {
-	    $section = "-S $section";
-	}
-    }
-
-    @manargs = split(/ /, $section);
-    if ($manpath) {
-	if ($manPath{$manpath}) {
-	    unshift(@manargs, ('-M', $manPath{$manpath}));
-	    &groff_path($manPath{$manpath});
-	} elsif ($manpath{&dec($manpath)}) {
-	    unshift(@manargs, ('-M', $manPath{&dec($manpath)}));
-	    &groff_path( $manPath{&dec($manpath)} );
-	} else {
-	    # unset invalid manpath
-	    print "x $manpath x\n";
-	    print "x " . &dec($manpath) . "x\n";
-	    undef $manpath;
-	}
-    }
-
-    if ($format =~ /^(ps|pdf)$/) {
-        push(@manargs, '-t');
-    }
-
-    # print "X $command{'man'} @manargs -- x $name x\n";
-    &proc(*MAN, $command{'man'}, @manargs, "--", $name) ||
-	&mydie ("$0: open of $command{'man'} command failed: $!\n");
-    if (eof(MAN)) {
-	# print "X $command{'man'} @manargs -- x $name x\n";
-	print "Sorry, no data found for `$html_name" .
-		($html_section ? "($html_section)": '') . "'.\n";
-	print qq{You may look for other } . 
-	    qq{FreeBSD Search Services.\n};
-	return;
-    }
-
-    if ($format ne "html") {
-	if ($format eq "latin1" || $format eq "ascii") {
-	    while() { s/.//g; print; }
-	} elsif ($format eq "pdf") {
-	    # 
-	    # run a PostScript to PDF converter
-	    #
-	    local(@args) = ('mktemp', '/tmp/_man.cgi-ps2pdf-XXXXXXXXXXXX');
-	    open(TMP, "-|") or 
-		exec(@args) or die "open @args: $!\n";
-	    local($tempfile) = ;
-	    close TMP;
-
-	    # chomp, avoid security warnings using -T switch
-	    #chop($tempfile);
-	    if ($tempfile =~ /(\S+)/) {
-		$tempfile = $1;
-	    }
-
-	    if (!$tempfile || ! -f $tempfile) {
-		die "Cannot create tempfile: $tempfile\n";
-	    }
-	    #warn $tempfile;
-
-	    #$tempfile = '/tmp/bla2';
-	    open(TMP, "> $tempfile") or die "open $tempfile: $!\n";
-	    while() {
-		print TMP $_;
-	    }
-	    close TMP;
-	    local($ENV{'PATH'}) = '/bin:/usr/bin:/usr/local/bin';
-	    open(PDF, "-|") or 
-		exec('/usr/local/bin/ps2pdf', $tempfile, '/dev/stdout') or
-		die "open ps2pdf: $!\n";
-
-            # sleep and delete the temp file
-            #select(undef, undef, undef, 0.8);
-	    #unlink($tempfile);
-
-	    while() {
-		print;
-	    }
-	    close PDF;
-	    unlink($tempfile);
-
-	} else {
-	    while() { print; }
-	}
-	close(MAN);
-	exit(0);
-    }
-
-    local($space) = 1;
-    local(@sect);
-    local($i, $j);
-    while() {
-	# remove tailing white space
-	if (/^\s+$/) {
-	    next if $space;
-	    $space = 1;
-	} else {
-	    $space = 0;
-	}
-
-	$_ = &encode_data($_);
-	if($enable_include_links &&
-	   m,()?\#include()?\s+()?\<\;(.*\.h)\>\;()?,) {
-	    $match = $4; ($regexp = $match) =~ s/\./\\\./;
-	    s,$regexp,\$match\,;
-        }
-	/^\s/ && 			# skip headers
-	    s,((<[IB]>)?[\w\_\.\-]+\s*()?\s*\(([1-9ln][a-zA-Z]*)\)),&mlnk($1),oige;
-
-	# detect E-Mail Addreses in manpages
-	if (/\@/) {
-	    s/([a-z0-9_\-\.]+\@[a-z0-9\-\.]+\.[a-z]+)/$1<\/A>/gi;
-	}
-
-	# detect URLs in manpages
-	if (m%tp://%) {
-	    s,((ftp|http)://[^\s<>\)]+),$1,gi;
-	}
-
-	if (/^\S+/ && m%^([^<]+)%) {
-	    $i = $1; $j = &encode_url($i);
-	    s%^([^<]+)%$i%;
-	    push(@sect, $1);
-        }
-	print;
-    }
-    close(MAN);
-    print qq{
\n\n
\n}; - - for ($i = 0; $i <= $#sect; $i++) { - print qq{
$sect[$i]} . ($i < $#sect ? " |\n" : "\n"); - } - - print "\n"; - print "\n"; - - # Sleep 0.35 seconds to avoid DoS attacs - select undef, undef, undef, 0.35; -} - -# -# You may need to precreate some mdoc.local files for every system you -# support (every collection of man pages), maybe like: -# -# $manLocalDir/NetBSD-1.4.2/tmac -# -# and then in your cgi script itself set the GROFF_TMAC_PATH as appropriate -# like: -# -# GROFF_TMAC_PATH=$manLocalDir/NetBSD-1.4.2/tmac:/usr/share/tmac/ -# -sub groff_path { - local $manpath = shift; - - local @groff_path; - foreach (split(/:/, $manpath)) { - push(@groff_path, $_ . '/tmac'); - } - - $ENV{'GROFF_TMAC_PATH'} = join(':', @groff_path, '/usr/share/tmac'); -} - -sub mlnk { - local($matched) = @_; - local($link, $section); - ($link = $matched) =~ s/[\s]+//g; - $link =~ s/<\/?[IB]>//g; - ($link, $section) = ($link =~ m/^([^\(]*)\((.*)\)/); - $link = &encode_url($link); - $section = &encode_url($section); - local($manpath) = &encode_url($manpath); - return qq{$matched}; -} - -sub proc { - local(*FH, $prog, @args) = @_; - local($pid) = open(FH, "-|"); - return undef unless defined($pid); - if ($pid == 0) { - exec $prog, @args; - &mydie("exec $prog failed\n"); - } - 1; -} - -# $indent is a bit of optional data processing I put in for -# formatting the data nicely when you are emailing it. -# This is derived from code by Denis Howe -# and Thomas A Fine -sub decode_form { - local($form, *data, $indent, $key, $_) = @_; - foreach $_ (split(/&/, $form)) { - ($key, $_) = split(/=/, $_, 2); - $_ =~ s/\+/ /g; # + -> space - $key =~ s/\+/ /g; # + -> space - $_ =~ s/%([\da-f]{1,2})/pack(C,hex($1))/eig; # undo % escapes - $key =~ s/%([\da-f]{1,2})/pack(C,hex($1))/eig; # undo % escapes - $_ =~ s/[\r\n]+/\n\t/g if defined($indent); # indent data after \n - $data{$key} = &escape($_); - } -} - -# block cross-site scripting attacks (css) -sub escape($) { $_ = $_[0]; s/&/&/g; s//>/g; $_; } - -sub dec { - local($_) = @_; - - s/\+/ /g; # '+' -> space - s/%(..)/pack("c",hex($1))/ge; # '%ab' -> char ab - - return($_); -} - -# -# Splits up a query request, returns an array of items. -# usage: @items = &main'splitquery($query); -# -sub splitquery { - local($query) = @_; - grep((s/%([\da-f]{1,2})/pack(C,hex($1))/eig, 1), split(/\+/, $query)); -} - -# encode unknown data for use in a URL -sub encode_url { - local($_) = @_; - # rfc1738 says that ";"|"/"|"?"|":"|"@"|"&"|"=" may be reserved. - # And % is the escape character so we escape it along with - # single-quote('), double-quote("), grave accent(`), less than(<), - # greater than(>), and non-US-ASCII characters (binary data), - # and white space. Whew. - s/([\000-\032\;\/\?\:\@\&\=\%\'\"\`\<\>\177-\377 ])/sprintf('%%%02x',ord($1))/eg; - s/%20/+/g; - $_; -} -# encode unknown data for use in ...</TITILE> -sub encode_title { - # like encode_url but less strict (I couldn't find docs on this) - local($_) = @_; - s/([\000-\031\%\&\<\>\177-\377])/sprintf('%%%02x',ord($1))/eg; - $_; -} -# encode unknown data for use inside markup attributes <MARKUP ATTR="..."> -sub encode_attribute { - # rfc1738 says to use entity references here - local($_) = @_; - s/([\000-\031\"\'\`\%\&\<\>\177-\377])/sprintf('\&#%03d;',ord($1))/eg; - $_; -} -# encode unknown text data for using as HTML, -# treats ^H as overstrike ala nroff. -sub encode_data { - local($_) = @_; - local($str); - - # Escape &, < and > - s,\010[><&],,g; - s/\&/\&\;/g; - s/\</\<\;/g; - s/\>/\>\;/g; - - s,((_\010.)+),($str = $1) =~ s/.\010//g; "<I>$str</I>";,ge; - s,(.\010)+,$1,g; - - if (!s,((.\010.)+\s+(.\010.)+),($str = $1) =~ s/.\010//g; "<B>$str</B>";,ge) { - s,((.\010.)+),($str = $1) =~ s/.\010//g; "<B>$str</B>";,ge; - } - - - # Escape binary data except for ^H which we process below - # \375 gets turned into the & for the entity reference - #s/([^\010\012\015\032-\176])/sprintf('\375#%03d;',ord($1))/eg; - # Process ^H sequences, we use \376 and \377 (already escaped - # above) to stand in for < and > until those characters can - # be properly escaped below. - #s,\376[IB]\377_\376/[IB]\377,,g; - #s/.[\b]//g; # just do an erase for anything else - # Now convert our magic chars into our tag markers - #s/\375/\&/g; s/\376/</g; s/\377/>/g; - - s,.\010,,g; - - $_; -} - -sub indexpage { - &http_header("text/html"); - print &html_header("$www{'title'}: Index Page") . - "<H1>$www{'head'}</H1>\n\n" . &intro; - &formquery; - - local($m) = ($manpath ? $manpath : $manPathDefault); - $m = &encode_url($m); - - print "<B><I>Section Indexes</I></B>: "; - foreach ('1', '2', '3', '4', '5', '6', '7', '8', '9', 'n') { - print qq{¤ <A HREF="$BASE?query=($_)&sektion=&apropos=1&manpath=$m&title=Section%20$_Index">$_</A>\n}; - } - - print "<BR><B><I>Explanations of Man Sections:</I></B>"; - foreach ('1', '2', '3', '4', '5', '6', '7', '8', '9') { - print qq{¤ <A HREF="$BASE?query=intro&sektion=$_&apropos=0&manpath=$m&title=Introduction%20Section%20$_">intro($_)</A>\n}; - } - - print "<BR>\n<B><I>Quick Reference Categories:</I></B>\n"; - foreach ('database', 'disk', 'driver', 'ethernet', 'mail', 'net', 'nfs', - 'nis', 'protocol', 'ppp', 'roff', 'string', 'scsi', - 'statistic', 'tcl', 'tcp', 'time') - { - print qq{¤ <A HREF="$BASE?query=$_&sektion=&apropos=1&manpath=$m&title=Quick%20Ref%20$_">$_</A>\n}; - } - - print <<ETX if $mailto; -<HR noshade> -<img ALIGN="RIGHT" src="/gifs/powerlogo.gif"> -Please direct questions about this server to -<I><A HREF="$webmasterURL">$webmaster</A></I><br> -URL: <A HREF="$BASE" target=_parent>$www{'home'}$BASE</a><br> -ETX - - print "<br>\n"; - print "</BODY>\n</HTML>\n"; - 0; -} - -sub formquery { - local($astring, $bstring); - if (!$apropos) { - $astring = " CHECKED"; - } else { - $bstring = " CHECKED"; - } - - print <<ETX; -<FORM METHOD="GET" ACTION="$BASE"> -<B><I>Man Page or Keyword Search:</I></B> -<INPUT VALUE="$query" NAME="query"> -<INPUT TYPE="submit" VALUE="Submit"> -<INPUT TYPE="reset" VALUE="Reset"> -<BR> -<INPUT NAME="apropos" VALUE="0" TYPE="RADIO"$astring> <A HREF="$BASE?query=man&sektion=1&apropos=0">Man</A> -<SELECT NAME="sektion"> -ETX - - - foreach $key (sort keys %sectionName) { - print "<OPTION" . (($key eq $section) ? ' SELECTED ' : ' ') . - qq{VALUE="$key">$sectionName{$key}</OPTION>\n}; - }; - - - print qq{</SELECT>\n<SELECT NAME="manpath">\n}; - - local($l) = ($manpath ? $manpath : $manPathDefault); - foreach (sort keys %manPath) { - $key = $_; - print "<OPTION" . (($key eq $l) ? ' SELECTED ' : ' ') . - qq{VALUE="$key">$key</OPTION>\n}; - } - - local($m) = &encode_url($l); - print <<ETX; -</SELECT> -<BR> -<INPUT NAME="apropos" VALUE="1" TYPE="RADIO"$bstring> <A HREF="$BASE?query=apropos&sektion=1&apropos=0">Apropos</A> Keyword Search (all sections) -<SELECT NAME="format"> -ETX - - foreach ('html', 'ps', 'pdf', - # 'dvi', # you need a 8 bit clean man, e.g. jp-man - 'ascii', 'latin1') { - print qq{<OPTION VALUE="$_">$_</OPTION>\n}; - }; - - print <<ETX; -</SELECT> -Output format -</FORM> - -<A HREF="$BASE?manpath=$m">Index Page and Help</A> | -<A HREF="$BASE/faq.html">FAQ</A> | -<A HREF="$BASE/copyright.html">Copyright</A> -<HR> -ETX - 0; -} - -sub copyright { - $id = '$Id: man.cgi,v 1.165 2006-07-11 12:10:38 www Exp $'; - - return qq{\ -<PRE> -Copyright (c) 1996-2004 Wolfram Schneider <A HREF="$mailtoURL"><$mailto></A> -Copyright (c) 1993-1995 Berkeley Software Design, Inc. - -This data is part of a licensed program from BERKELEY SOFTWARE -DESIGN, INC. Portions are copyrighted by BSDI, The Regents of -the University of California, Massachusetts Institute of -Technology, Free Software Foundation, FreeBSD Inc., and others. - -</PRE>\n -This script has the revsion: $id -<p> - -Copyright (c) for man pages by OS vendors. -<p> -<a href="ftp://ftp.2bsd.com">2.11 BSD</a>, -<a href="http://www.hp.com">HP</a>, -<a href="http://www.freebsd.org">FreeBSD</a>, -<a href="http://www.cs.vu.nl/~ast/minix.html">Minix</a>, -<a href="http://slackware.com">Linux Slackware</a>, -<a href="http://www.linux.de">Linux/de</a>, -<a href="http://www.netbsd.org">NetBSD</a>, -<a href="http://www.openbsd.org">OpenBSD</a>, -<a href="http://plan9.bell-labs.com/plan9/">Plan 9</a>, -<a href="http://www.sun.com">SunOS</a>, -<a href="http://www.digital.com">ULTRIX</a>, -<a href="ftp://elib.zib.de/pub/netlib/att/cs/v7man">Unix Seventh Edition</a>, -<a href="http://www.xfree86.org">XFree86</a>, -<a href="http://www.x.org">X11R6</a> -}; -} - -sub faq { - - local(@list, @list2); - local($url); - foreach (sort keys %manPath) { - $url = &encode_url($_); - push(@list, - qq{<li><a href="$BASE?apropos=2&manpath=$url">[download]} . - qq{</a> "$_" -> $BASE?manpath=$url}); - } - - foreach (sort keys %manPathAliases) { - push(@list2, qq[<li>"$_" -> "$manPathAliases{$_}" -> ] . - "$BASE?manpath=" . - &encode_url($_) . "\n") if $manPathAliases{$_}; - } - - return qq{\ -<PRE> -Copyright (c) 1996-2004 Wolfram Schneider <a href="$mailtoURL"><$mailto></a> -</PRE> - -<h2>FAQ</h2> -<UL> -<li>Get the <a href="$BASE/source">source</a> of the man.cgi script -<li>Troff macros works only if defined in FreeBSD/groff. OS specific -macros like `appeared in NetBSD version 1.2' are not supported. -<li>Netscape is buggy, you may press twice the link 'Index Page and Help' -<li>Some OSs provide only formated manual pages (catpages), e.g. NetBSD -and OpenBSD. In this case it is not possible to create Postscript -and troff output. -<li>The <a href="http://cvsweb.freebsd.org/src/share/misc/bsd-family-tree"> -Unix family tree, BSD part</a>. -<li>The <a href="http://www.freebsd.org/cgi/ports.cgi"> -FreeBSD Ports Changes</a> script. -<li>Copyright (c) and download for man pages by <a href="$BASE/copyright.html"> -OS vendors</a> -</UL> - -<h2>Releases</h2> - -Releases and Releases Aliases are information how -to make a link to this script to the right OS version. -<p> -You may download the manpages as gzip'd tar archive -for private use. A tarball is usually 5MB big. -<p> -<ul> -@list -</ul> - -<h2>Releases Aliases</h2> -Release aliases are for lazy people. Plus, they have a longer -lifetime, eg. 'openbsd' points always to the latest OpenBSD release. -<ul> -@list2 -</ul> -}; -} - - -sub intro { - return qq{\ -<P> -<I>Man Page Lookup</I> searches for man pages name and section as -given in the selection menu and the query dialog. <I>Apropos -Keyword Search</I> searches the database for the string given in -the query dialog. There are also several hypertext links provided -as short-cuts to various queries: <I>Section Indexes</I> is apropos -listings of all man pages by section. <I>Explanations of Man -Sections</I> contains pointers to the intro pages for various man -sections. Or you can select a category from <I>Quick Reference -Categories</I> and see man pages relevant to the selected topic. -<P> -}; -} - -sub copyright_output { - &http_header("text/html"); - print &html_header("HTML hypertext FreeBSD man page interface") . - "<H1>$www{'head'}</H1>\n" . ©right . qq{\ -<HR> - -<A HREF="$_[0]">Index Page and Help</A> -</BODY> -</HTML> -}; -} - -sub faq_output { - &http_header("text/html"); - print &html_header("HTML hypertext FreeBSD man page interface") . - "<H1>$www{'head'}</H1>\n" . &faq . qq{\ -<HR> - -<A HREF="$_[0]">Index Page and Help</A> -</BODY> -</HTML> -}; -} - -sub html_header { - return qq{<HTML> -<HEAD> -<TITLE>$_[0] - - - - - -\n\n}; -} - -sub secure_env { - $main'ENV{'PATH'} = '/bin:/usr/bin'; - $main'ENV{'MANPATH'} = $manPath{$manPathDefault}; - $main'ENV{'IFS'} = " \t\n"; - $main'ENV{'PAGER'} = 'cat'; - $main'ENV{'SHELL'} = '/bin/sh'; - $main'ENV{'LANG'} = 'en_US.ISO_8859-1'; - undef $main'ENV{'DISPLAY'}; -} - -sub include_output { - local($inc) = @_; - - &http_header("text/plain"); - open(I, "$inc") || do { print "open $inc: $!\n"; exit(1) }; - while() { print } - close(I); -} - -# CGI script must die with error status 0 -sub mydie { - local($message) = @_; - &http_header("text/html"); - print &html_header("Error"); - print $message; - -print qq{ -

-Index Page and Help - - -}; - - exit(0); -} - -1; - - diff --git a/en/news/status/report-2001-06.xml b/en/news/status/report-2001-06.xml deleted file mode 100644 index 1dc4b81a35..0000000000 --- a/en/news/status/report-2001-06.xml +++ /dev/null @@ -1,830 +0,0 @@ - - - - - - - - June - - 2001 - - - - - $FreeBSD: www/en/news/status/report-june-2001.xml,v 1.7 2004/04/04 21:46:14 phantom Exp $ - - - -

- Introduction - -

One of the benefits of the FreeBSD development model is a focus - on centralized design and implementation, in which the operating - system is maintained in a central repository, and discussed on - centrally maintained lists. This allows for a high level of - coordination between authors of various components of the system, - and allows policies to be enforced over the entire system, covering - issues ranging from architecture to style. However, as the FreeBSD - developer community has grown, and the rate of both mailing list - traffic and tree modifications has increased, making it difficult - even for the most dedicated developer to remain on top of all the - work going on in the tree.

- -

The FreeBSD Monthly Development Status Report attempts to - address this problem by providing a vehicle that allows developers - to make the broader community aware of their on-going work on - FreeBSD, both in and out of the central source repository. This is - the first issue, and as such is an experiment. For each project and - sub-project, a one paragraph summary is included, indicating - progress since the last summary (in this case, simply recent - progress, as there have been no prior summaries).

- -

This status report may be reproduced in whole or in part, as - long as the source is clearly identified and appropriate credit - given.

-
- -
- Future Editions - -

Assuming there is some positive feedback on this idea, and that - future submissions get made such that there is content for future - issues, the goal is to release a development status report once a - month. As such, the next deadline will be July 31, 2001, with a - scheduled publication date in the first week of August. This will - put the status report on a schedule in line with the calendar, as - well as providing a little over a month until the next deadline, - which will include a number of pertinent events, including the - Annual USENIX Technical Conference in Boston, MA. Submissions - should be e-mailed to:

- -
- - robert+freebsd.monthly@cyrus.watson.org -
- -

Many submitters will want to wait until the last week of July so - as to provide the most up-to-date status report; however, - submissions will be accepted at any time prior to that date.

- -

- -- Robert Watson < - rwatson@FreeBSD.org - - > -

-
- - - Binary Updater Project - - - - - Eric - - Melville - - - eric@FreeBSD.org - - - - - Murray - - Stokely - - - murray@FreeBSD.org - - - - - - - - -

The FreeBSD Binary Updater Project aims to provide a secure - mechanism for the distribution of binary updates for FreeBSD. - This project is complementary to the Open Packages and libh - efforts and there should be very little overlap with those - projects. The system uses a client / server mechanism that allows - clients to install any known "profile" or release of FreeBSD over - the network. Where a specific profile might contain a specific - set of FreeBSD software to install, additional packages, and - configuration actions that make it more ideal for a specific - environment (ie FreeBSD 4.3 Secure Web Server Profile)

- -

The system can currently be used to install a FreeBSD system - or perform the most simple of upgrades but many features are - absent. In particular, the client is in its infancy and much work - remains to be done. We need additional developers so please get - in touch with us at - updater@osd.bsdi.com - - if you are interested in spending some cycles on this.

- -
- - - Problem Reports - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - - - - -

Poul-Henning Kamp kicked off a drive to get our GNATS PR - database cleaned up so the wheat can be sorted from the chaff. - Progress is good, but there is still a lot of work to do. Give a - hand if you can. Remember: every unhandled PR is a pissed off - contributor or user.

- -
- - - CVSROOT script rewrite/tidy - - - - - Josef - - Karthauser - - - joe@FreeBSD.org - - - - -

I'm in the process of rewriting the CVSROOT/scripts to make - them more clean and configurable. A lot of other projects also - use these and so it makes sense to make them as easy to use in - other environments as possible.

- -

Status: work in progress. There is now a configuration file, - but not all the scripts use it yet.

- -
- - - DEVFS - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - -

Work is progressing on implementing true cloning devices in - DEVFS. Brian Somers and Poul-Henning Kamp are working to make - if_tun the first truly cloning driver in the system. Next will be - the pty driver and the bpf driver.

- -

From July 1st DEVFS will be standard in -current.

- -
- - - digi driver - - - - - Brian - - Somers - - - brian@FreeBSD.org - - - - -

Added the digi driver. Initial work was done by John Prince - <johnp@knight-trosoft.com>, but all the modular stuff was - done by me and initial work on supporting Xe and Xi cards (ala - dgb) was done by me. I'm now awaiting an Xe card being sent from - joerg@ (almost a donation) so that I can get that side of things - working properly.

- -
- - - Diskcheckd - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - - - - -

Ben Smithurst has written a "diskcheckd" daemon which will - read all sectors on the disks over a configured period. With - recent increases in disksizes it is by no means a given that disk - read errors will be discovered before they are fatal. This daemon - will hopefully result in the drive firmware being able to - relocate bad sectors before they become unreadable. This code is - now committed to 5.0-CURRENT.

- -
- - - if_fxp driver - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

In the last month (May-June), the new fxp driver was brought - into -stable. This new driver uses the common MII code, so - support for new PHYs is easy to add. Support for the new Intel - 82562 chips was added. The driver was updated to add VLAN support - and a workaround for a bug affecting Intel 815-based boards.

- -
- - - Java Project - - - - - Greg - - Lewis - - - glewis@eyesbeyond.com - - - - -

The FreeBSD Java Project has continued its "behind the scenes" - work over the last month. Progress was made both technically, - with the help of Bill Huey (of Wind River), on a port of JDK - 1.3.1 and legally, with Nate Williams continuing negotiations - with Sun on a mutually acceptable license to release a binary - Java 2 SDK under. The JDK 1.2.2 port has also seen some - development, with a new patchset likely to be released soon which - includes JPDA and NetBSD support (the latter courtesy of Scott - Bartram).

- -
- - - Kernel Graphics Interface port - - - - - Nicolas - - Souchu - - - nsouch@fr.alcove.com - - - - - - - - -

The Kernel Graphics Interface project has worked for several - years to provide a framework for graphic drivers under Linux - receiving input from other groups like the UDI project. Currently - the KGI core implementation is quite settled, as is the driver - coding model as a whole. Work is being done to newbussify KGI and - produce a kld, as part of a future redesign of the graphics - subsystem in FreeBSD. KGI will be an alternative for graphic card - producers that don't accept the XFree86 model of userland graphic - adapters and will also provide accelerated support for any other - graphic alternative.

- -
- - - libh Project - - - - - Alexander - - Langer - - - alex@FreeBSD.org - - - - - Nathan - - Ahlstrom - - - nra@FreeBSD.org - - - - - - - - -

The libh project is a next generation sysinstall. It is - written in C++ using QT for its graphical frontend and tvision - for its console support. The menus are scriptable via an embedded - tcl interpreter. It has been growing functionality quite a bit - lately, including a new disklabel editor. Current work is on - installation scripts for CDROM, FTP, ... installs as well as a - fully functional standalone disk-partition and label editor. The - GUI API was extended a little and many bugs were fixed. There - seems to be some interest in i18n work.

- -
- - - Mount(2) API - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - -

Maxime Henrion is working on implementing a new and more - extensible mount(2) systemcall, mainly to overcome the 32 bits - for mountoptions limit, secondary goal to make it possible to - mount filesystems from inside the kernel.

- -
- - - OLDCARD pccard implementation - - - - - Warner - - Losh - - - imp@FreeBSD.org - - - - -

In the last two months, the OLDCARD pccard implementation was - rototilled to within an inch of its life. Many new pci cardbus - bridges were added. Power handling was improved. PCI Card cardbus - bridges are nearly supported and should be committed in early - June to the tree. This will likely be the last major work done on - OLDCARD. After pci cards are supported, work will shift to - improving NEWCARD.

- -
- - - PowerPC Port - - - - - Benno - - Rice - - - benno@FreeBSD.org - - - - -

The PowerPC port is proceeding well. All seems to be working - in pmap.c after a number of problems encountered where FreeBSD - passes a vm_page_t to a NetBSD-derived function that expects a - vm_offset_t. Then after debugging the atomic operations code, I'm - now at the point where VM appears to be initialized and it's now - hanging while in sys/kern/kern_malloc.c:kmeminit(). Progress - continues. =)

- -
- - - PPP - - - - - Brian - - Somers - - - brian@FreeBSD.org - - - - -

Developing full MPPE support for Andre Opperman @ Monzoon in - Switzerland. Work is now complete and will eventually be brought - into -current, but no dates are yet known.

- -
- - - pseudofs - - - - - Dag-Erling - - Smorgrav - - - des@FreeBSD.org - - - - -

Pseudofs is a framework for pseudo-filesystems, like procfs - and linprocfs. The goal of pseudofs is twofold:

- -
    -
  • eliminate code duplication between (and within) procfs and - linprocfs
  • - -
  • isolate procfs and linprocfs from the complexities of the - vfs system to simplify maintenance and further - development.
  • -
- -

Pseudofs has reached the point where it is sufficiently - functional and stable that linprocfs has been almost fully - reimplemented on top of it; the only bit that's missing is the - proc/<pid>/mem file.

- -

The primary to-do item for pseudofs right now is to add - support for writeable files (which are required for procfs, and - are quite a bit less trivial to handle than read-only files). In - addition, pseudofs needs either generic support for raw - (non-sbuf'ed, possibly mmap'able) files, or failing that, - special-case code to handle proc/<pid>/mem.

- -
- - - RELNOTESng - - - - - Bruce - - A. Mah - - - bmah@FreeBSD.org - - - - - - - - -

RELNOTESng is the name I've given to the rewrite of the *.TXT - files that typically accompany a FreeBSD release. The information - from these files (which include, among other things, the release - notes and the supported hardware list) have been reorganized and - converted to SGML. This helps us produce the documentation in - various formats, as well as facilitating the maintenance of - documentation for multiple architectures. This work was recently - committed to -CURRENT, and I intend to MFC it to 4-STABLE before - 4.4-RELEASE.

- -
- - - SMPng Project - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - - Jake - - Burkholder - - - jake@FreeBSD.org - - - - - SMP - - Mailing list - - - smp@FreeBSD.org - - - - - - - - -

The SMPng project aims to provide multithreaded support for - the FreeBSD kernel. Currently the kernel still runs almost - exclusively under the Giant kernel lock. Recently, progress has - been made in locking the process group and session structures as - well as file descriptors by Seigo Tanimura-san. Alfred Perlstein - has also added in a giant lock around the entire virtual memory - (VM) subsystem which will eventually be split up into several - smaller locks. The locking of the VM subsystem has proved tricky, - and some of the current effort is focused on finding and fixing a - few remaining bugs in on the alpha architecture.

- -
- - - SMPng mbuf allocator - - - - - Bosko - - Milekic - - - bmilekic@FreeBSD.org - - - - - - - - -

mb_alloc is a new specialized allocator for mbufs and mbuf - clusters. Presently, it offers various important advantages over - the old (status quo) mbuf allocator, particularly for MP - machines. Additionally, it is designed with the possibility of - future enhancements in mind.

- -

Presently in initial review & testing stages, most of the - code is already written.

- -
- - - Sparc64 Port - - - - - Jake - - Burkholder - - - jake@FreeBSD.org - - - - -

Work has (re)started on a port of FreeBSD to the UltraSPARC - architecture, specifically targeting PCI based workstations. Jake - Burkholder will be porting the kernel, and Ade Lovett has - expressed an interest in working on userland. Recent work on the - project includes:

- -
    -
  • built a gnu cross toolchain targeting sparc64
  • - -
  • obtained remote access to an ultra 5 development machine - (thanks to emmy)
  • - -
  • developed a minimal set of headers and source files to - allow the kernel to be compiled and linked
  • - -
  • implemented a mini-loader which relocates the kernel, maps - it into the tlbs and calls it
  • - -
  • nabbed Benno Rice's openfirmware console driver which - allows printf and panic to work
  • -
- -

At this point the kernel can be net-booted and prints the - FreeBSD copyright before calling code that is not yet - implemented. I am currently working on a design for the pmap - module and plan to begin implementation in the next few days.

- -
- - - TrustedBSD - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - - - - -

The TrustedBSD Project seeks to improve the security of the - FreeBSD operating system by adding new security features, many - derived from common trusted operating system requirements. This - includes Access Control Lists (ACLs), Fine-grained Event Logging - (Audit), Fine-grained Privileges (Capabilities), Mandatory Access - Control (MAC), and other architecture features, including file - system extended attributes, and improved object labeling.

- -

Individual feature status reports are documented separately - below; in general, basic features (such as EAs, ACLs, and kernel - support for Capabilities) will be initially available in - 5.0-RELEASE, conditional on specific kernel options. A - performance-enhanced version of EAs is currently being targeted - at 6.0-RELEASE, along with an integrated capability-aware - userland, and MAC support.

- -
- - - TrustedBSD: ACLs - - - - - Chris - - D. Faulhaber - - - jedgar@FreeBSD.org - - - - -

Patches are now available to add ACL support to cp(1) and - mv(1) along with preliminary support for install(1). Ilmar's i18n - patches for getfacl(1) and setfacl(1) need to be updated for the - last set of changes and committed. Some other functional - improvements are also in the pipeline.

- -
- - - TrustedBSD Capabilities - - - - - Thomas - - Moestl - - - tmm@FreeBSD.org - - - - -

The kernel part of the capability implementation is mostly - finished; all uses of suser() and suser_xxx() and nearly all - comparisons of uid's with 0 have been converted to use the newly - introduced cap_check() call. Some details still need - clarification. More documentation for this needs to be done.

- -

POSIX.2c-compatible getfcap and setfcap programs have been - written. Experimental capability support in su(1), login(1), - install(1) and bsd.prog.mk is being tested.

- -

Support for capabilities, ACL's, capabilities and MAC labels - in tar(1) is being developed; only the capability part is tested - right now. Generic support for extended attributes is planned, - this will require extensions to the current EA interface, which - are written and will probably be committed to -CURRENT in a few - weeks. A port of these features to pax(1) is planned.

- -
- - - TrustedBSD MAC and Object Labeling - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - - - - -

An initial prototype of a Mandatory Access Control - implementation was completed earlier this year, supporting - Multi-Level Security, Biba Integrity protection, and a more - general jail-based access control model. Based on that - implementation, I'm now in the process of improving the FreeBSD - security abstractions to simplify both the implementation and - integration of MAC support, as well as increase the number of - kernel objects protected by both discretionary and mandatory - protection schemes. Generic object labeling introduces a - structure not dissimilar in properties to the kernel ucred - structure, only it is intended to be associated with kernel - objects, rather than kernel subjects, permitting the creation of - generic security protection routines for objects. This would - allow the easy extension of procfs and devfs to support ACLs and - MAC, for example. A prototype is underway, with compiling and - running code and simple protections now associated with - sysctl's.

- -
- diff --git a/en/news/status/report-2001-07.xml b/en/news/status/report-2001-07.xml deleted file mode 100644 index af34cf7a55..0000000000 --- a/en/news/status/report-2001-07.xml +++ /dev/null @@ -1,1206 +0,0 @@ - - - - - - - - July - - 2001 - - - - - $FreeBSD: www/en/news/status/report-july-2001.xml,v 1.7 2004/04/04 21:46:14 phantom Exp $ - - - -
- Introduction - -

Last month's status report was apparently a great success: I - received countless e-mails with comments, questions, and - suggestions. I've tried to incorporate any suggestions and address - any problems from these e-mails in this month's report, which - captures a far more extensive snapshot of FreeBSD activity in the - last month. Unlike last month's report, it does a better job of - reflecting non-development activity, such as on-going conference - planning, documentation, and so on. This is a trend I hope to see - improve in future months as well.

- -

On the topic of conferences, in the future I'd like to report - more on publication activities relating to FreeBSD, including - online journals with articles relating to FreeBSD, paper journals, - conference papers, and so on. Likewise, I would be interested in - including references to Call for Papers relating to FreeBSD. I'll - take this opportunity to plug both registration and paper - submission for BSDCon Europe in November, which has status included - in this report, and for the general BSD Conference being hosted by - USENIX in February. Your attendance and submissions make these - conferences "happen", and promote FreeBSD as a platform for new - research, feature development, and application products. Work of - extremely high calibre is performed on FreeBSD, and we need to get - the word out.

-
- -
- Submission for Future Editions - -

Next month, we're maintaining much the same submission - requirements: reports should be one or two paragraphs long, sent by - e-mail, and approximate the layout of the entries this month - (Project, Contact, URL, and text). I'll send out reminders again - over the week before the deadline, with more specific instructions. - An area where I'd like to explore improvement lies in the - coordination of related status reports for larger projects, such as - new architectural work or platform ports. This might even have the - effect of encouraging communication within these projects :-). I'd - like to continue to focus on pulling in a broader range of groups - and their activities, including the Security Officer, Release - Engineer, and Core Team.

- -

- -- Robert Watson < - rwatson@FreeBSD.org - - > -

-
- - - ACPI - - - - - Mike - - Smith - - - msmith@FreeBSD.org - - - - -

ACPI (Advanced Configuration and Power Interface) is an - industry standard which obsoletes APM, Intel MPS, PnPBIOS, and - other Intel PC firmware interface standards. It is also used on - the IA64 platform. More information on ACPI is available at

- - - http://developer.intel.com/technology/iapc/acpi - -

The FreeBSD ACPI subsystem project is based heavily on the - Intel ACPI Component Architecture. This status report outlines - the current state of the project; future updates will focus on - changes as they occur.

- -

The Intel ACPI interpreter is fully integrated, although bugs - are still coming out of the woodwork occasionally.

- -
    -
  • PCI bus detection and interrupt routing are functional, but - power management interaction will require work on the core PCI - subsystem.
  • - -
  • Non-PCI motherboard peripheral probing is implemented, but - believed to have problems on some systems.
  • - -
  • A power policy manager has been implemented. The initial - policy manager has two modes, "performance" and "economy".
  • - -
  • CPU speed throttling is integrated with the platform power - policy.
  • - -
  • System thermal monitoring is implemented, but fan control - is believed to have problems.
  • - -
  • Pushbutton suspend and power-off is implemented.
  • - -
  • System timekeeping using the ACPI timer is supported.
  • - -
  • Battery status monitoring is implemented.
  • -
- -

Work is ongoing in the following areas:

- -
    -
  • System suspend and resume.
  • - -
  • Timekeeper accuracy/reliability.
  • - -
  • Power profiles.
  • - -
  • User-level management interfaces.
  • - -
  • PCI power management.
  • - -
  • Bug-hunting.
  • -
- -
- - - ARM Port - - - - - Stephane - - Potvin - - - septovin@videotron.ca - - - - -

The ARM port is currently going pretty well. The kernel is - compiling and is able to boot to the point where it panics trying - to initialize the network subsystem. The current reference - platform is the Netwinder but this may change as many people - expressed interest in a more broadly available platform. Things - that need to be done before it can get further includes adding - footbridge, timer and interrupt supports. The pmap module is not - completed yet either.

- -
- - - BIND 9 - - - - Doug Barton - - dougb@FreeBSD.org - - - - Jeroen Ruigrok - - asmodai@FreeBSD.org - - - - -

Now that BIND 8.2.4 is finally imported the time has come to - look at getting BIND 9 imported into CURRENT. The current idea is - to have it imported alongside BIND 8 so that people can play with - either one until all import problems have been taken care of and - people have tested it a bit.

- -
- - - binup - - - - Eric Melville - - eric@FreeBSD.org - - - - -

Although gaining a new name, the project has been at a - standstill due to both resource availability during the move - between BSDi and Wind River, and other commitments of the - developers. The project should obtain an official mailing list, - as well as return to an active state after the dust settles.

- -
- - - BSDCon Europe - - - - - - - - Paul Richards - - paul@freebsd-services.co.uk - - - - Josef Karthauser - - joe@tao.org.uk - - - - -

The conference will take place at the Thistle Hotel, Brighton, - UK from 9-11 November 2001.

- -

The aim of the conference is to provide a focal point for - European users and developers of all the BSD derived operating - systems. The format will be similar to other conferences, with 2 - days of technical sessions over the Saturday and Sunday.

- -

We'll be finalizing the schedule towards the end of the month - and anybody who is interested in doing a talk should contact us - ASAP. There are no restrictions on the use of talks; if it's been - done before we may still be interested in having it presented to - an European audience, and we make no claims to the talks so - speakers are free to present the talks again at other - conferences.

- -

We're also still looking for sponsors.

- -

We had 80 pre-registrations in the first week so we're - expecting a good turnout.

- -
- - - CAM - - - - Matthew Jacob - - mjacob@FreeBSD.org - - - - Justin Gibbs - - gibbs@FreeBSD.org - - - - -

The new CAM transport code is starting to get supported in - more HBAs and to get refined so that it does the intended - per-protocol support. No progress on doing any SMPng work for CAM - has been made yet. This is a fairly high priority.

- -
- - - Problem Reports - - - - - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - -

Thanks to various outstanding individual efforts, we are now - down to just below 2300 open bug-reports. This means that we have - fought our way back to the level we had around march 2000.

- -
- - - Documentation Project - - - - - - - - - - Documentation Project - - doc@FreeBSD.org - - - - -

Work continues (in large part sponsored by WRS) on updating - the Handbook ready for the second print edition. There has been a - flurry of activity in this area recently, and the ToDo list can - be seen at

- -

- - http://www.FreeBSD.org/docproj/handbook.html -

- -

Dima and others are doing a stellar job of keeping up with the - steady flow of incoming PRs relating to the documentation - project.

- -

The Developers' Handbook,

- -

- - http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/developers-handbook/index.html -

- -

is a year old; it contains a wealth of useful content for - developers developing on, or for, FreeBSD. As ever, more - contributions are always required, not only for the developers' - handbook, but for all of the FreeBSD documentation set.

- -
- - - Fibre Channel Support - - - - Matthew Jacob - - mjacob@feral.com - - - - -

The basic design hasn't changed and this project mainly is in - the phase of continued hardening and test case development. The - next major feature will be to fully integrate into the new CAM - TRAN code and to fully support on the fly device addition and - removal. The only HBA supported is QLogic at this time. Future - support for the QLogic line is planned to have 2300 (2Gb) and IP - support before October.

- -
- - - Hardware Watchpoints in the Kernel Debugger - - - - Brian Dean - - bsd@FreeBSD.org - - - - -

Hardware watchpoints are now available for kernel debugging on - the IA32 (i386) architecture. One can now set hardware - watchpoints using the new ddb command 'hwatch', which is - analogous to the existing 'watch' command. Alternatively, if - greater flexibility is required, direct access to the debug - registers is available using the ddb 'set' command which allows - complete control over the processor hardware debug facilities. - Hardware watchpoints are very useful in tracking down those - elusive memory overwrite bugs in the kernel. Hardware watchpoints - can even be used to set a code breakpoint in ROM, which is - commonly found in embedded systems.

- -
- - - ifconfig support for IEEE 802.11 wireless devices - - - - Brooks Davis - - brooks@FreeBSD.org - - - - -

Support for configuring IEEE 802.11 wireless devices via - ifconfig has been committed to -current and -stable. It contains - most of the functionality needed to configure an wireless device. - Some missing features are being worked on including integrated - support for DHCP so a single entry in /etc/rc.conf can be used to - fully configure a wireless device on a DHCP lan and setting the - CTS/RTS threshold. Currently the an(4) and wi(4) drivers are - supported in -current and -stable with the awi(4) device - supported in -current. Further work is needed to support - Frequency Hopping devices such as ray(4).

- -
- - - jailNG - - - - Robert Watson - - rwatson@FreeBSD.org - - - - -

jailNG is a from-scratch rewrite of the popular jail(8) - service, focusing on improved management functions, as well as - more fine-grained configurability. An initial prototype has been - written, based on explicitly named and configured jails, and work - is proceeding on userland integration. Currently, it's not clear - if the timeline for this will be 5.0-RELEASE, or 5.1-RELEASE.

- -
- - - FreeBSD Java Project - - - - - - - - Greg Lewis - - glewis@eyesbeyond.com - - - - -

The main development in the FreeBSD Java Project over the last - month was the release of an initial "Developers Only" patchset - for the JDK 1.3.1. Since that release progress had been made - towards a much more usable alpha quality patchset which is - likely to be turned into a port, as per the current JDK 1.2.2 - patchset. This new patchset will feature a number of bugfixes, - which essentially get the JDK to a working state for early - adopters, and an initial implementation of "native threads" based - on FreeBSD's userland pthreads. Unfortunately this implementation - isn't fully functional, but is included in the hope of - getting more eyeballs on the code (particularly experienced - pthread programmers). We'd also like to welcome Fuyuhiko - Maruyama-san as a new committer, the usual punishment for too - many good patches.

- -
- - - jpman project - - - - - - - - Japanese Man Page Project - - man-jp@jp.FreeBSD.org - - - - -

We have been working to provide Japanese version of FreeBSD - online manuals, since 1996. Currently, RELENG_4 manuals are - based. Translated versions are placed on doc/ja_JP.eucJP/man and - provided to users using ports/japanese/man-doc. Also, we discuss - about related commands (e.g. ports/japanese/man and - ports/japanese/groff).

- -
- - - Kernel Summit - Usenix 2001 - - - - - - - - John Baldwin - - jhb@FreeBSD.org - - - - -

The first FreeBSD kernel summit meeting was held June 29-30, - 2001 in Boston, MA at the Usenix 2001 Annual Technical - Conference. Links to a variety of files are posted on the web - site.

- -

Note: I (jhb) am still working on writing up a general summary - of the meeting. When that is completed it will be posted here and - mailed to the -hackers mailing list.

- -
- - - KSE threading the kernel - - - - - - - - Julian Elischer - - julian@elischer.org - - - - -

I'm working on multithreading the kernel. So far I have over - 400KB of diffs relative to todays -current (I'm keeping my tree - updated with changes as they occur rather than get hit with a big - update at the end).

- -

I have split the proc structure and am changing most of the - kernel to pass around a thread identifier instead of a proc - structure.

- -

The following interfaces have been changed so far:

- -
    -
  • device devsw entries
  • - -
  • vfs calls
  • - -
  • mutexes
  • - -
  • events
  • - -
  • system calls
  • - -
  • scheduler
  • - -
  • + a lot of code in between.
  • -
- -

I have still a lot of work to go with a lot of "dumb editing" - (s/struct proc \*p/struct thread \*td/) usually I change a few - items and then fix everything that breaks when I try compile it. - I'd like to check it in on a branch so others can help the - editing but haven't worked out the best way to do it yet.

- -

I have implemented changes to the scheduler so that KSE's are - scheduled instead of processes, and threads sleep, letting the - KSE pick up a new thread. but it's not anywhere ready yet (heck - it doesn't compile yet :-)

- -

Note that I have not yet updated the document listed above.. - everywhere it mentions "ksec" or "KSE-context", the code uses the - word "thread". I will update it soon as Jason has sent me the - source.

- -
- - - FreeBSD Monthly Development Status Reports - - - - - - - - Robert Watson - - rwatson@FreeBSD.org> - - - - Chris Costello - - chris@FreeBSD.org - - - - -

The FreeBSD Monthly Development Status Report aims to keep - users and developers up-to-date on the latest goings-on in the - FreeBSD project by providing summaries of each project and its - status. At the time of this writing, the July 2001 status report - is being prepared and is very near release. The FreeBSD Web site - now has a Status Reports section, which, when the July 2001 - report is released, will be updated to include a link to an - HTML-ified version.

- -
- - - NetBSD rc.d port - - - - - - - - Doug Barton - - dougb@FreeBSD.org - - - - Sheldon Hearn - - sheldonh@FreeBSD.org - - - - -

The NetBSD rc.d port aims to improve the FreeBSD startup - process by porting Luke Mewburn's rc.d work from NetBSD to - FreeBSD. This will score FreeBSD startup and shutdown - dependencies without losing the traditional and much loved - monolithic configuration filesystem.

- -

Luke Mewburn's USENIX paper and slides on the system as - implemented in NetBSD are available here:

- -

- - http://groups.yahoo.com/group/FreeBSD-rc/message/3 -

- -

Interested parties are urged to study this material before - joining the discussion list.

- -

The intention at this stage is to decide on an approach that - will ensure that the differences between the NetBSD rc.d system - and the system as ported to FreeBSD will be kept to a minimum. - This will probably involve discussions with Luke around those - areas of the system that are identified as areas for potential - improvement.

- -
- - - Netgraph ATM - - - - Hartmut Brandt - - brandt@fokus.gmd.de - - - - -

The goal of this project is the implementation of ATM - signalling and other ATM protocols by means of the netgraph(4) - framework. This should provide an easily extensible architecture - for using ATM on FreeBSD. Currently the full UNI4.0 stack (except - for the LIJ capability) has been implemented, including ILMI and - a first version of the ATM Forum API for UNI. An implementation - of Classical IP over ATM is also available. Drivers have been - implemented for the Fore PCA200E and Fore HE-155 cards.

- -
- - - network device cloning - - - - Brooks Davis - - brooks@FreeBSD.org - - - - -

Network device cloning support has been imported from NetBSD. - This allows virtual devices to be allocated on demand rather then - being statically allocated at compile time. Our implementation - differs slightly from that of NetBSD's in that we allow both the - creation of specific devices (i.e. gif0) and arbitrary devices - instead of just allowing specific devices. Currently, the only - device in the tree which has been converted is the gif(4) device - which has been converted in both -current and -stable. Work is - ongoing to convert all other virtual network devices with work in - progress on faith, stf, and vlan interfaces. In general this - conversion is accompanied by appropriate modifications to make - these devices fully modular.

- -
- - - Next Generation POSIX threads (NGPT) - - - - - - - - Arun Sharma - - arun@sharma.dhs.org - - - - -

Porting NGPT (next generation pthreads) to FreeBSD

- -

NGPT is an effort led by IBM engineers to implement MxN - threads (also known as many user threads to one kernel thread - mapping) on Linux. I have ported it to FreeBSD to use - rfork(2).

- -

The port is right here:

- -

- - http://www.FreeBSD.org/cgi/query-pr.cgi?pr=29239 -

- -
- - - OLDCARD upgrade to support PCI cards - - - - - - - - Warner Losh - - imp@village.org - - - - -

- Funded by: Monzoon Networking, LLC -

- -

This month has been a month of conventration and - consolidation. Much of the changes from current have been - migrating into stable. I've improved power support, - suspend/resume interactions, interrupt handling, and ability to - work after windows/NEWCARD has run. Interrupt routing continues - to be a locking issue for a complete MFC. Current patches are - available at the above website. I'm racing to get this done - before 4.4 is released.

- -
- - - Open Runtime Platform (ORP) - - - - - - - - Arun Sharma - - arun@sharmas.dhs.org - - - - eGroups: ORP - - orp@egroups.com - - - - -

Information on Intel ORP - a BSD licensed Java VM is right - here:

- -

- - http://www.intel.com/research/mrl/orp/ -

- -

A FreeBSD patch has been tested to work with NGPT and - submitted to the ORP project. The patch is available here:

- -

- - http://www.sharma-home.net/~adsharma/projects/orp/orp-freebsd-1.0.5.patch.txt.gz -

- -

There are some issues to be ironed out to make it work with - FreeBSD's default (user level) pthread implementation.

- -
- - - OpenPackages - - - - - - -

OpenPackages intends to create a software packaging system - that will allow third-party programs to be installed, without - operating system dependent changes, on as many platforms as are - feasible. OpenPackages was originally based on code from the BSD - ports systems, and has been improved and extended by developers - of many heritages.

- -

The OpenPackages Project is pleased to release the Milestone 2 - codebase. This release contains a working package building system - and a single test package. OP currently is known to build on - certain instances of the following operating systems: FreeBSD, - HP/UX, IRIX, Linux (Debian, Red Hat, Suse, Mandrake, TurboLinux, - Caldera, etc.), NetBSD, OpenBSD, Solaris

- -
- - - PAM - - - - Mark R V Murray - - mark@grondar.za - - - - -

(First report)

- -

Large cleanup and extension of FreeBSD PAM modules. All - modules are to be documented, consistent in style (style(9) used) - and as complete as possible WRT functionality. Mostly done.

- -
- - - PowerPC Port - - - - Benno Rice - - benno@FreeBSD.org - - - - -

We now have the rudiments of device support. We have a nexus - driver for OpenFirmware machines, along with support for the - Apple UniNorth PCI/AGP host bridge. I'm currently trying to get - the USB hardware working so that I can get closer to having a - console driver independent of OpenFirmware, then I'll be trying - to get the system to get to single-user mode using NFS.

- -
- - - PPP IPv6 Support - - - - Brian Somers - - brian@freebsd-services.com - - - - -

Work has begun, but nothing has yet been committed. The NCP - addresses used by ppp have been abstracted and initial support - has been added to the filter set for ipv6 addresses. NCP - negotiation hasn't yet been started.

- -
- - - Porting ppp to hurd & linux - - - - Brian Somers - - brian@Awfulhak.org - - - - -

Patches have been submitted to get ppp working under HURD, and - mostly under Linux. There are GPL copyright problems that need to - be addressed.

- -
- - - pppoed - - - - Brian Somers - - brian@freebsd-services.com - - - - -

Making pppoed function in a production environment. Most of - the work is complete and committed. Additional work includes - adding a -l option where ``-l label'' is shorthand for ``-e exec - ppp -direct label'' and discovering why rogue child processes are - being left around.

- -
- - - PRFW - Hooks within the FreeBSD kernel - - - - Evan Sarmiento - - ems@open-root.org - - - - -

PRFW is a set of hooks which I have integrated into the - FreeBSD kernel. This allows modules to easily intercept system - calls with less overhead. It also supports per-pid restrictions, - which means, one process may not be able to use X function in Y - manner, but another process may.

- -

Progress: I was working on this in 4.3-RELEASE, but now I'm - merging it into current. I will be submitting a patch to the - mailing lists in about a week.

- -
- - - SCSI Tape Support - - - - Matthew Jacob - - mjacob@feral.com - - - - -

This driver is currently not working well under -current and - is undergoing some work at this time. No major design or feature - changes are planned. There was some notion of adding TapeAlert - support, but HP supports that as a binary product via a user - library and it was felt that it'd be more politically prudent to - leave it alone.

- -
- - - SMPng - - - - Peter Wemm - - peter@FreeBSD.org - - - - John Baldwin - - jhb@FreeBSD.org - - - - -

Development

- -

In the 'smpng' p4 branch there is code to make the ast() - function loop to close the race when an AST is triggered while we - are handling previously triggered AST's.

- -

In the 'jhb_preemption' p4 branch work is being done to make - the kernel fully preemptive. It is reportedly stable on UP x86, - but SMP x86 locks up, UP alpha has problems during shutdown and - can recurse indefinitely until it exhausts its stack.

- -

Management

- -

We are using a perforce repository for live development work, - which can track multiple separate long-lived works-in-progress - and collaborate between multiple developers at the same time on - the same change set.

- -

FreeBSD-current is being imported into p4 hourly, for easy - tracking of the moving -current tree.

- -

I haven't written up a good primer yet, but we're able to open - this up to the general developer community. NEWCARD work looks - like it will be done here too. Perforce is ideal for tracking - this sort of long-lived project without having to resort to - passing patches around.

- -

KSE work is now being checked into a kse p4 branch - thanks - Julian!

- -

KSE work is focusing on getting the main API changes into the - base tree well before 5.0.

- -
- - - SMPng mbuf allocator - - - - - - - - Bosko Milekic - - bmilekic@FreeBSD.org - - - - -

mb_alloc is a specialized allocator for mbufs and mbuf - clusters. It offers various important advantages over the old - mbuf allocator, particularly for MP machines. Additionally, it - is designed with the possibility of important future - enhancements in mind.

- -

The mb_alloc code has been committed to -CURRENT a month ago - and appears to be holding up well. Prior to committing it, - preliminary performance measurements were done merely to ensure - that it is not significantly worse than the old allocator, even - with Giant still in place. Results were promising - - [http://people.FreeBSD.org/~bmilekic/code/mb_alloc/results.html] - - - also see jlemon's results (link at the bottom of accompanying - text). Since the commit, Matt Jacob has provided useful feedback - and bugfixes. Work is now being done to re-enable mbtypes - statistics and make appropriate changes to netstat(1) and - systat(1).

- -
- - - sparc64 port - - - - Jake Burkholder - - jake@FreeBSD.org - - - - -

The sparc64 port has been committed to the FreeBSD repository. - As such further development will occur in cvs, rather than as a - separately maintained patch set. Significant progress has been - made since the last status report, including; support for kernel - debugging with ddb, much more complete pmap support, support for - context switching and process creation, and filling out of - important machine dependent data structures. Thomas Moestl has - shown a strong interest in working on the port and is in the - process of implementing support for saving and restoring a - process's floating point context. I look forward to working with - him and any other developers that happen to fall out of the wood - works.

- -
- - - FreeBSD/sparc64 kernel loader - - - - Robert Drehmel - - robert@ferrari.de - - - - -

The sparc64 loader is functional enough to boot an ELF binary - from an UFS filesystem using the existent openfirmware library, - which has been revised to work flawlessly on 32-bit and 64-bit - architectures. Support for netbooting and modules will be - implemented next, followed by a better openfirmware mapping - strategy.

- -
- - - SYN cache implementation for FreeBSD - - - - Jonathan Lemon - - jlemon@FreeBSD.org - - - - -

This project brings a SYN cache implementation to FreeBSD, in - order to make it more robust to DoS attacks. A SYN cookie - approach was considered, but ultimately rejected because it does - not conform to the TCP protocol. The SYN cache will work with - T/TCP, IPV6 and IPSEC, and the size of each cache element is - currently is less than 1/5th the size of a normal TCP control - block.

- -
- - - TrustedBSD Project - - - - - - - - Robert Watson - - rwatson@FreeBSD.org - - - - -

It's been a busy month, with a number of relevant news items. - Not least important is that NAI Labs was awarded a $1.2M contract - from the US Defense Advanced Research Projects Agency (DARPA) to - work on a variety of components relevant to the TrustedBSD - Project, including support for pluggable security models, and - supporting features such as improving the extended attributes - implementation, simple crypto support for swap and filesystems, - documentation, and much more.

- -

On the features side, progress continues on Mandatory Access - Control, object labeling, and improving the consistency of kernel - access control mechanisms--in particular, with regard to - inter-process authorization and credential management. Work has - begun on porting LOMAC, NAI Labs' Low-Watermark Mandatory Access - Control scheme, from Linux to FreeBSD, and it has been - re-licensed under a BSD license. We hope to have an initial port - complete in time for 5.0-RELEASE later this year.

- -
-
- diff --git a/en/news/status/report-2001-08.xml b/en/news/status/report-2001-08.xml deleted file mode 100644 index a6711197d1..0000000000 --- a/en/news/status/report-2001-08.xml +++ /dev/null @@ -1,1523 +0,0 @@ - - - - - - - - August - - 2001 - - - - - $FreeBSD: www/en/news/status/report-august-2001.xml,v 1.6 2004/04/04 21:46:14 phantom Exp $ - - - -
- Introduction - -

The FreeBSD Project made substantial progress in the month of - August, 2001, both on continuing the development of the RELENG_4 - line (4.x-STABLE and 4.x-RELEASE), and on 5.0-CURRENT, the main - development branch. During this month, the decision was made to - push the release of 5.0-CURRENT back so that KSE (support for - fine-grained user threads) could be completed in time for the - release, rather than postponing that support for 6.0. As such, the - lifespan of the RELENG_4 line will be extended, with new features - continuing to be backported to that branch. 4.4-RELEASE went into - final beta during this month, and will also be available - shortly.

- -

This month's edition of the status report has been written with - the assistance of Nik Clayton and Chris Costello.

-
- -
- Future submissions - -

For next month, the submission procedures remain the same: - reports should be between one and two paragraphs long, sent by - e-mail, and in a format approximately that of this month's - submissions (Project, Contact, URL, and text). Reminders will be - mailed to the hackers@FreeBSD.org and developers@FreeBSD.org - mailing lists at least a week before the deadline; complete - submission instructions may be found in those reminders.

- -

-- Robert Watson

-
- - - Fibre Channel Support - - - - - Matthew - - Jacob - - - mjacob@FreeBSD.org - - - - - - - - -

2 Gigabit support was integrated on 8/31/2001 (QLogic - 2300/2312 cards). Because of the author's shrinking time - commitment for FreeBSD, the previously planned "next step" which - would have been more complete new CAM Transport integration is - now probably just the addition of an FC-IP adjunct (as this can - benefit many platforms simultaneously).

- -
- - - SCSI Tape Support - - - - - Matthew - - Jacob - - - mjacob@FreeBSD.org - - - - -

A major update to error handling was done on 8/28/2001 which - should correct most of the EOM detection problems that have been - around for a while. There are several things to fix. The - principle thing to fix next is the establishment of a loader(8) - mediated device quirks method.

- -
- - - CAM - - - - - Matthew - - Jacob - - - mjacob@FreeBSD.org - - - - - Justin - - Gibbs - - - gibbs@FreeBSD.org - - - - - Kenneth - - Merry - - - ken@FreeBSD.org - - - - -

No change since last status. Some discussion amongst all of us - occurred, but lack of time and commitment to FreeBSD has meant - little has actually been committed to the tree. SMPng work will - be left to those who seem to have a notion about what needs to be - done.

- -
- - - Intel Gigabit Ethernet - - - - - Matthew - - Jacob - - - mjacob@FreeBSD.org - - - - -

No new status to report. This driver will be worked on again - soon and cleaned up to work better.

- -
- - - KSE - - - - - Julian - - Elischer - - - julian@elischer.org - - - - - Peter - - Wemm - - - peter@FreeBSD.org - - - - - Matt - - Dillon - - - dillon@FreeBSD.org - - - - -

Work in adding supporting infrastructure to the kernel for KSE - threading support has reached "milestone 2".

- -

Milestone 2 is where the kernel source consistently refers to - its resources in terms of per-thread and per-process resources, - in the way that it will need to when there are > 1 threads per - process, but the LOGICAL changes to such things as the scheduler, - and fork and exit, have not yet been made to allow more than one - thread to be created. (nor have new threading syscalls been added - yet). This is an important milestone as it represents the last - point where the kernel has only "mechanical" changes. To go - further we must start adding new algorithms and functions.

- -

The kernel for milestone 2 is reliable and has no noticeable - performance degradations when compared to a matching -current - kernel. (the differences are less than the margin of error, so - that sometimes the new kernel actually fractionally beats the - unaltered kernel).

- -

We hope that by the time this is published, the KSE patches - will have been committed. The Major effect for most developers - will be only that the device driver interface requires a 'thread' - pointer instead of a Proc pointer in the open, close and ioctl - entrypoints.

- -

I'm sure there will be small teething problems but we are not - expecting great problems at the commit.

- -
- - - FreeBSD core-secretary - - - - - Alan - - Clegg - - - abc@FreeBSD.org - - - - core-secretary@FreeBSD.org - - - - -

The position of Core Secretary was filled by Alan Clegg - <abc@FreeBSD.org> The first core-secretary report should be - available the second week in September and will cover the issues - discussed by core during August 2001.

- -
- - - FreeBSD PAM - - - - - Mark - - Murray - - - markm@FreeBSD.org - - - - -

Development is continuing; pam_unix has gained the ability to - change passwords, login(1) has had PAM made compulsory (and is - going to have more PAM-capable features handed over to PAM).

- -
- - - Netgraph ATM - - - - - Hartmut - - Brandt - - - brandt@fokus.gmd.de - - - - -

The ATM stack has been tested with a number of FreeBSD - machines and a Marconi ATM switch and seems to be quite stable - running CLIP. Multi port support for the native ATM API has been - implemented but needs some testing.

- -
- - - PRFW - hooks for the FreeBSD kernel - - - - - Evan - - Sarmiento - - - ems@open-root.org - - - - - - - - -

PRFW is a set of hooks for the FreeBSD kernel. It allows users - to insert code into system calls, for such purposes as creating - extended security features. Last week, PRFW reached 0.1.0, with - many bugfixes and cleaning. I urge anyone who is interested to - please visit the site, join the mailing list. Also take a peek at - lsm.immunix.org, the Linux hooks. It will be a good contrast.

- -
- - - CVSROOT script rewrite/tidy - - - - - Josef - - Karthauser - - - joe@FreeBSD.org - - - - -

Work is still progressing to make all of the perl scripts run - using perl's 'strict' mode, and to migrate all FreeBSD specific - options into the configuration file (CVSROOT/cfg.pm). I'll be - looking for help soon to write a guide on how to make use of - these scripts for use in your own repository. Anyone interested - in helping should contact me at the above email address.

- -
- - - PPP IPv6 Support - - - - - Brian - - Somers - - - brian@freebsd-services.com - - - - -

The software has been committed to -current and seems - functional. Outstanding issues include dealing with IPV6CP events - (linkup & linkdown scripts) and allocating site-local and - global addresses (currently, ``iface add'' is the only way to - actually use the link).

- -
- - - Porting ppp to hurd & linux - - - - - Brian - - Somers - - - brian@freebsd-services.com - - - - -

Status is unchanged since last month. Patches have been - submitted to get ppp working under HURD, and mostly under Linux. - There are GPL copyright problems that need to be addressed. Many - conflicts are expected after the commit of IPv6 support in - ppp.

- -
- - - pppoed - - - - - Brian - - Somers - - - brian@freebsd-services.com - - - - -

Making pppoed function in a production environment. All known - problems have been fixed and committed.

- -
- - - pppoa - - - - - Brian - - Somers - - - brian@freebsd-services.com - - - - -

I looked at bringing PPPoA into the base system, but could not - because of an overly restrictive distribution license on the - Alcatel Speedtouch modem firmware. It has been committed as a - port instead and is running live at a FreeBSD Services client - site.

- -
- - - OLDCARD improvements - - - - - Warner - - Losh - - - imp@FreeBSD.org - - - - -

The OLDCARD improvements have been completed, except for a few - edge cases for older laptops with CL-PD6729/30 chips and some pci - bios issues. Some minor work will continue, but after 4.4R is - released, only a few remaining bugs will be fixed before the - author moves on to greener fields of NEWCARD development.

- -
- - - jpman project - - - - - Kazuo - - Horikawa - - - horikawa@psinet.com - - - - man-jp@jp.FreeBSD.org - - - - - - - - -

Targeting 4.4-RELEASE, one team has been translating newly - MFC'ed section [125678] manpages. The other team has been - updating section 3 since May and one third (1/3) is finished. The - port ja-groff is updated to be groff-1.17.2 based, and now it has - the same functionality as base system does. The port ja-man is - updated to have the search capability under an architecture - subdirectory, as base system does. The doc/ja_JP.eucJP/man - hierarchy update (adding architecture subdirectories) is planned - after 4.4-RELEASE.

- -
- - - ARM port - - - - - Stephane - - Potvin - - - sepotvin@videotron.ca - - - - - - - - -

Basic footbridge support is now functional and the kernel is - now able to probe the pci bus. Access primitives for the bus are - still missing so I can't attach any drivers yet.

- -
- - - SYN cache implementation for FreeBSD - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

The syncache implementation is completed, and currently under - testing and review. The code should be committed to -current in - the near future, and a patchset for -stable made available.

- -
- - - Compressed TCP state - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

State information for TCP connections is primarily kept in the - TCP/IP control blocks in the kernel. Not all of the TCP states - make use of the entire structure, and significant memory savings - can be had by using a cut-down version of the state in some - cases. The first phase of this project will address connections - that are in the TIME_WAIT state by moving them into a smaller - structure.

- -

This project has completed the initial research and rough - design phases, with actual code development starting - immediately.

- -
- - - Network SMP locking - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

For 5.0, the goal is for the network stack to run without the - Giant lock. Initial development in this area may focus on - partitioning the code and data structures into distinct areas of - responsibilities. A first pass of locking may involve using a - several smaller mini-giant code locks in order to reduce the - problem to a manageable size.

- -

Progress for this month includes the creation of a perforce - repository to officially track the locking changes, and the - initial submission of locks for the &ifnet list. Some code - cleanup has also been done to the main tree in order to better - support future locking additions.

- -
- - - Network device nodes - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

Currently, all network devices (fxp0, lo0, etc) exist in their - own namespace, and are accessed through a socket interface. This - project creates device nodes in /dev for network devices, and - allows control and access in that fashion.

- -

This is experimental work, and suggestions for APIs and - functionality are strongly encouraged and welcomed. In is not - clear whether it will be possible (or desirable) to provide the - exact same set of operations that can be done through the socket - interface.

- -

Benefits of approach include the fact that a kqueue filter can - be attached to a network device for monitoring purposes. Initial - code exists to send a kq event whenever the network link status - changes. Other benefits may include better access control by - using filesystem ACLs to control access to the device.

- -
- - - RELNOTESng - - - - - Bruce - - Mah - - - bmah@FreeBSD.org - - - - - - - - -

RELNOTESng, the DocBook-ified set of release documentation - files, has been merged to the RELENG_4 branch. 4.4-RELEASE will - be the first release of FreeBSD with the new-style release notes, - hardware list, etc. Some of these documents are being translated - by the Japanese and Russian translation teams.

- -

Snapshots of RELNOTESng for CURRENT and 4-STABLE in HTML, - text, and PDF are available at the above URL and are updated - irregularly but frequently. Dima Dorfman <dd@FreeBSD.org> - and Nik Clayton <nik@FreeBSD.org> have been working to have - automatically-generated snapshots on the main FreeBSD web - site.

- -

On my TODO list: 1) Resynchronize the FreeBSD installation - document with the installation chapter in the Handbook. 2) Update - the hardware lists (with particular emphasis on PCCARD and USB - devices). 3) Update the infrastructure to allow the - architecture-dependent parts of RELNOTESng to scale to more - hardware platforms.

- -
- - - FreeBSD/sparc64 port - - - - - Jake - - Burkholder - - - jake@FreeBSD.org - - - - - Thomas - - Moestl - - - tmm@FreeBSD.org - - - - - Robert - - Drehmel - - - robert@FreeBSD.org - - - - -

Sparc64 development is still continuing rapidly and we're - making some excellent progress. Of note, some problems with the - way the pmap module implements copy-on-write mappings have been - fixed and fork() now works as expected, support for signals has - been added, and the port has been updated for KSE in the perforce - repository. Thomas Moestl has begun work on pci bus support, and - a basic nexus bus for sparc64 has been written. The driver for - the Sun `Psycho' and `Sabre' UPA-to-PCI bridges and associated - code has been ported from NetBSD (the Sabre is the on-chip - version found in the UltraSparc IIi and IIe). PCI configuration, - I/O and memory space accesses do already work, as well as - interrupt assignment and delivery for devices attached directly - to the bridge, and the first PCI device drivers can attach and - seem to work mostly. Interrupt routing and busdma support still - need much work.

- -
- - - Documentation Project - - - - - Nik - - Clayton - - - nik@FreeBSD.org - - - - - Documentation Project - - - doc@FreeBSD.org - - - - - - - - - - -

The Handbook has been the main focus of activity this month. - Due to go to the printers on the 15th a vast amount of new - content has been submitted and committed. This includes a - complete rewrite of the "Installing FreeBSD", which massively - expands the amount of information available to people new to - FreeBSD. It even includes screenshots.

- -

- - http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/install.html -

- -

Comments, and contributions are, of course, welcome.

- -
- - - IP Multicast Routing support - - - - - Bill - - Fenner - - - fenner@FreeBSD.org - - - - -

FreeBSD's IP Multicast Routing support was recently updated in - several ways. One big change is that it's now able to be loaded - as a KLD instead of statically compiled into the kernel; this is - especially useful for experimentation or updating of an existing - system. It also now coexists nicely with the kernel IP - encapsulation infrastructure, so that multicast tunnels can - better coexist with MobileIP, certain IPSec tunnels and generic - IPv4-in-IPv4 tunnels.

- -
- - - Mbuf SMPng allocator - - - - - Bosko - - Milekic - - - bmilekic@FreeBSD.org - - - - - - - - -

The allocator appears to be stable. Mbtypes statistics have - been re-activated thanks, in part, to Jiangyi Liu - <jyliu@163.net> although the diff has not yet been - committed (I'm just in the process of cleaning it up a little and - final testing). More work to come: cleanups, follow TODO from the - original commit, and perhaps an eventual generalization of the - allocator for various network-related allocations (in a more - distant future).

- -
- - - RAIDframe for FreeBSD - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - - - - -

After two months of little progress, RAIDframe work is gearing - up again. The port to -stable has some known bugs but is fairly - stable. The port to -current was recently completed and patches - will be released soon. RAIDframe is a multi-platform RAID - subsystem designed at CMU. This is a port of the NetBSD version - by Greg Oster.

- -
- - - aac driver - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - - - - -

The aac driver has been given a lot of attention lately and is - now nearly feature complete. Changes include crashdump support, - correct handling of controller initiated commands, and more - complete management interface support. The Linux RAID management - tool available from Dell and HP now fully works; a FreeBSD native - version of the tool is also in the works. These changes have been - checked into -current, and will appear in -stable once 4.4 has - been released.

- -
- - - Problem Reports - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - - - - -

We are making some progress, we are now down to 2170 open PR's - down from an all time high of 3270 just 3 months ago. The aim is - still to get rid of all the dead-wood in the PR database so only - relevant PRs in the database. A big thanks from me to the people - who have made this happen!

- -
- - - network device cloning - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - -

Support for cloning vlan devices via ifconfig has been - committed to -current and will be MFC'd after further testing. - Additionally, Maksim Yevmenkin submitted code to allow cloning of - tap and vmnet devices on devfs systems. Code for faith and stf - should be committed shortly.

- -
- - - ia64 Port - - - - - Doug - - Rabson - - - dfr@FreeBSD.org - - - - -

Current status is that the ia64 kernel builds and runs in a - simulator environment up to single user mode and has been tested - lightly in that environment. My current focus is on completing - the ia64 loader so that I can start to get kernels working on the - real hardware. The loader is coming along well and I expect to be - able to load kernels (but not necessary execute them) soon.

- -
- - - libh Project - - - - - Alexander - - Langer - - - alex@FreeBSD.org - - - - - Nathan - - Ahistrom - - - nra@FreeBSd.org - - - - -

I have access to the libh CVS repo again and am testing a new, - OBJDIR capable build structure at the moment. Done that, I'm - going to continue testing the package library and implement the - missing functionality. Currently, import of libh into the base - system is under discussion (arch mailinglist). Now that - 5.0-RELEASE has been shifted, I want 5.0 ship with a libh - installer and package system. We can really need people who are - good in C++, are able to understand what the current - implementation does and also feel that working on libh is fun and - thus are willing to help.

- -
- - - GNOME Desktop for FreeBSD - - - - - Maxim - - Sobolev - - - sobomax@FreeBSD.org - - - - - FreeBSD GNOME Team - - - gnome@FreeBSD.org - - - - -

Getting GNOME Fifth-Toe metaport ready for 4.4-RELEASE was the - main focus of activity this month. In the process many components - were updated, many bugs were tracked down and solved, which - allowed to make this 97-component meta-package building and - working properly.

- -

Next month the project will be focused on organizing work of - the FreeBSD GNOME Team as well as on attempts to increase amount - of people participating in the team (anybody who is willing to - participate is welcome to drop a note to gnome@FreeBSD with a - short explanation of how he/she could help).

- -
- - - fbsd-nvdriver - - - - - Erik - - Greenwald - - - erik@floatingmind.com - - - - - Joel - - Willson - - - siigorny@linuxsveeden.borkborkbork - - - - - - - - -

NVIDIA Corporation releases Linux drivers by using a - combination of binary object files and source (under a - constrictive license). The FreeBSD NVIDIA driver project aimed to - completely replace the source component of the driver using code - targeting FreeBSD 4.3 and released under the BSD license. The - binary module provided is supposedly the same module used on - Windows, BeOS, and OS/2, so it should be portable between - different i80x86 based OS's.

- -

The project is currently on indefinite hold. Our contact at - NVIDIA seemed enthusiastic about the project, and was fairly - quick about returning email, but when we discovered issues that - prevented porting without changes to the binary component or - error codes we needed deciphered, Nick (the contact) said he'd - look into it and never got back. The first major problem was the - ioctl interface, the NVIDIA driver passes a pointer and depends - on the kernel side to copyout the right amount, where FreeBSD - expect the parameters to be correct and the copyout is performed - by the subsystem. This was worked around using Dave Rufinos - "ioctl tunnel" idea. After that, we found that X refused to load - and traced it down to an ioctl defined in the binary component - erroring. We cannot tell what that ioctl is, were told that we - could not sign an NDA for source to that component, and have been - waiting a month for Nick to "look into it". Therefore progress is - impossible (without breaking the license) and we believe that the - flaws make the driver unportable to any *nix other than - Linux.

- -
- - - FreeBSD Release Engineering - - - - - FreeBSD Release Engineer Team - - - re@FreeBSD.org - - - - -

The FreeBSD release engineering process for FreeBSD 4.4 - started to ramp up around August 1st when the "code slush" took - affect. During this time all commits to the RELENG_4 branch were - reviewed by re@FreeBSD.org (over 250 code snippets had to be - reviewed). After the first release candidate on August 15th, all - submissions were scrutinized under a more strict potential risk - vs benefit curve. The best way to help get involved with the - release engineering process is to simply follow the low volume - freebsd-qa mailing list, help out with the neverending supply of - PRs related to our installation tools (sysinstall), or to work on - a possible next-generation replacement for our installation - technology, such as the libh or OpenPackages projects.

- -

Many companies donated equipment, network access, or paychecks - to finance these activities. Including Compaq, Yahoo!, Wind River - Systems, and many more.

- -
- - - Improved TCP Initial Sequence Numbers - - - - - Mike - - Silbersack - - - silby@silby.com - - - - -

In mid March, 2001, Tim Newsham of Guardent identified an - attack possible against the initial sequence number generation - scheme of FreeBSD (and other OSes.) In order to guard against - this threat, a randomized sequence number generation scheme was - ported over from OpenBSD and included in 4.3-release. - Unfortunately, non-monotonic generation was found to cause major - problems with applications which initiate continuous, rapid - connections to a single host.

- -

In order to restore proper operation under such circumstances - while still providing strong resistance against sequence number - prediction, FreeBSD 4.4 uses the algorithm specified in RFC 1948. - This algorithm hashes together host and port information with a - piece of secret data to generate a unique sequence number space - for each connection. As a result, outgoing initial sequence - numbers are again monotonic, but also unguessable by an - attacker.

- -
- - - LOMAC - - - - - Brian - - Feldman - - - green@FreeBSD.org - - - - -

The port of LOMAC to FreeBSD is progressing well, and already - has a very high level of stability (no known outstanding bugs!). - Aspects which have already been implemented include a stacking - filesystem overlay with fully-functional access controls (for - files and directories) based on path names, access controls for - sending signals, and file-backed-memory revocation for - processes.

- -
- - - SMPng - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - - Peter - - Wemm - - - wemm@FreeBSD.org - - - - - - - - -

Updates to things from last month: -

    -
  • The ast() fixes were committed last month.
  • - -
  • The work on the preemptive kernel is stalled for the time - being. It is still unstable on Alpha and SMP systems.
  • -
-

- -

New stuff since last month: -

    -
  • sx locks now support upgrades and downgrades.
  • - -
  • Witness now supports lock upgrades and downgrades.
  • - -
  • Jason Evans has committed a semaphore implementation.
  • - -
  • Matt Dillon has pushed Giant down into all of the - syscalls.
  • - -
  • John Baldwin has been working on proc locking in a p4 - 'jhb_proc' branch.
  • - -
  • John is also currently working on making the ktrace code - use a work thread to asynchronously write trace data out to the - trace file. This will make ktrace safe almost completely MP - safe with the exception that a few ktrace events need Giant in - order to call malloc(9) and that ktrgenio() is still - synchronous. Specifically, however, ktrpsig(), ktrsysret(), and - ktrcsw() no longer need Giant.
  • - -
  • Jonathan Lemon has started work on locking the network - stack in a p4 'netlock' branch.
  • -
-

- -
- - - FreeBSD Java Project - - - - - Greg - - Lewis - - - glewis@eyesbeyond.com - - - - - - - - -

Most of the work this month has focused on development of the - native JDK 1.3.1 patchset. The 3rd patchset is out and has been - accompanied with the creation of a FreeBSD "port". This has - allowed early adopters much easier access to the code and - naturally resulted in a number of bugs being found. Development - work has mostly focused on fixing these problems and the project - is now set to release fourth patchset over the weekend, which - should see the JDK in a reasonably usable state. One of the big - challenges left is producing a working HotSpot JVM, which looks - like it will require some heavy hacking.

- -

We also welcome OpenBSD's Heikki Korpela to the porting team - :)

- -
- - - floppy driver overhaul - - - - - Joerg - - Wunsch - - - j@uriah.heep.sax.de - - - - -

As part of some ongoing development activity, the floppy - driver (fdc(4)) enjoyed some overhaul in the past which is part - of an ongoing process. Automatic density selection will come - next, something i meant to implement for years now. As part of - that, the entire density selection stuff has been rewritten. 2.88 - MB floppies are on the wishlist as well, but I need a working - 2.88 drive before attempting to implement that.

- -
- - - sppp(4) merge - - - - - Joerg - - Wunsch - - - j@uriah.heep.sax.de - - - - -

sppp(4) should be merged with the ISDN4BSD offspring variant. - This will merge some features and bugfixes from the i4b branch - (like VJ compression), and eventually end up in a single sppp(4) - in the tree. While being at that, incorporating many changes and - bugfixes from NetBSD is considered as well.

- -
- - - KAME - - - - - Munechika - - Sumikawa - - - sumikawa@FreeBSD.org - - - - - - - - -

The KAME project (http://www.kame.net/) has merged its IPv6 - and IPsec implementation as of July 2001 to FreeBSD CURRENT and - STABLE, in cooperation with some contributors of the project. The - latest code includes a number of bug fixes, has been fully tested - in FreeBSD STABLE, and will appear in FreeBSD 4.4 RELEASE. Thus, - the new RELEASE version will be quite stable in terms of IPv6 and - IPsec.

- -

The project has assigned a talented guy to be responsible for - merge from KAME to FreeBSD, so future merge efforts will be - smoother.

- -
- - - TrustedBSD - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - trustedbsd-discuss@TrustedBSD.org - - - - - - - - -

The TrustedBSD project continues to move ahead, with progress - made in the ACL, Capability, and MAC implementations. In - addition, support from DARPA is permitting new work to improve - the extended attribute code, improve security abstractions, and - work on security documentation. Due to the push-back of the - FreeBSD 5.0 release, it should now be possible to include a - complete MAC implementation in that release. Specific status - reports appear for components where substantial progress is being - made.

- -
- - - TrustedBSD Capabilities - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - Thomas - - Moestl - - - tmm@FreeBSD.org - - - - trustedbsd-discuss@TrustedBSD.org - - - - -

Capabilities support is currently being committed to the base - FreeBSD tree--userland libraries are now fully committed, and - kernel infrastructure is being integrated.

- -
- - - BSDCon Europe - - - - - Paul - - Richards - - - paul@freebsd-services.com - - - - -

Planning for BSDCon Europe is going well. We're still - accepting proposals for talks but the schedule is starting to - fill up so we may not be for much longer.

- -

An update of the site that includes accommodation information, - a preliminary schedule, a list of speakers and an online payment - page will be launched on Wednesday 19 September.

- -

The fee will be £150 for individuals and £250 for - corporations. The individual pricing is valid only until the end - of September, the price will rise to £200 for October and - late registrations in November will be £250.

- -

The updated website will include a list of sponsorship - options, we're still looking for more sponsorship.

- -
-
diff --git a/en/news/status/report-2001-09.xml b/en/news/status/report-2001-09.xml deleted file mode 100644 index c2d6d1aca6..0000000000 --- a/en/news/status/report-2001-09.xml +++ /dev/null @@ -1,948 +0,0 @@ - - - - - - - - September - - 2001 - - - - $FreeBSD: www/en/news/status/report-september-2001.xml,v 1.3 2004/04/04 21:46:14 phantom Exp $ - - -
- Introduction - -

In the month of September, the FreeBSD Project continued its - investment in long-term projects, including continuing work on a - fine-grained SMP implementation, support for Kernel Schedulable - Entities (KSE) supporting highly efficient threading, and - broadening support for modern hardware platforms, including Intel's - new IA64 architecture, UltraSparc, and PowerPC. Additional focus - was placed on the release process, including work on the release - notes infrastructure, support for DVD releases, and work on a - binary updating tool.

- -

Due to the delay in getting the September report out the door, - the November status report will also cover October. During the - month of November, we look forward to BSDCon Europe, the first such - event outside the continental United States. The USENIX conference - paper submission deadlines are also in November, and FreeBSD users - and developers are encouraged to submit to the general and FREENIX - tracks. Please see www.usenix.org for more information.

-
- - - PRFW - - - - - Evan - - Sarmiento - - - evms@csa.bu.edu - - - - - - - - -

PRFW provides hooks in the FreeBSD kernel, allowing users to - insert their own checks in system calls and various kernel - functions. PRFW is nearing 0.5, which will incorporate numerous - structural changes such as, much faster per-process hooks, kernel - function hooks, plus, a new way of adding hooks which would - enable users to reference hooks by a string.

- -
- - - FreeBSD libh Project - - - - - Alexander - - Langer - - - alex@FreeBSD.org - - - - - Nathan - - Ahlstrom - - - nra@FreeBSD.org - - - - - - - - -

The build process is now creating four different versions of - the libs, which include support for TVision, Qt, both or none. I - created some first packages from existing ports and installed - those libh packages on my system only using libh's tools, - including registering all the files in the package database, - recording their checksums etc. Patches to the disk editor have - been submitted, which include functionality to write the changes - in the fdisk part and initial support for a disk label editor. - We'll soon have a new committer.

- -
- - - RELNOTESng - - - - - Bruce A. - - Mah - - - bmah@FreeBSD.org - - - - - - - - -

FreeBSD 4.4-RELEASE was the first release of FreeBSD with its - new-style release documentation. Both English and Japanese - versions of these documents were created. Regularly-built - snapshots of -CURRENT and 4-STABLE release documentation are now - available on the Web site, but they require a little HTML - infrastructure to make them viewer-friendly. I intend to continue - updating my snapshot site at the URL above, at least for a little - while.

- -

Call for help: The hardware compatibility lists need to be - updated in the areas of the Alpha architecture, USB devices, and - PCCARD devices. I'm looking for volunteers to help; interested - parties should contact me at the email address above. DocBook - experience is not required; familiarity with the hardware above - would be very helpful.

- -
- - - Fibre Channel Support - - - - - Matthew - - Jacob - - - mjacob@FreeBSD.org - - - - - - - - -

Bug fixing and move to -STABLE of 2Gb support.

- -
- - - Intel Gigabit Ethernet - - - - - Matthew - - Jacob - - - mjacob@FreeBSD.org - - - - -

Quite a lot of cleanup of this driver. Bug fixes and some - performance enhancements. However, this driver is likely to be - removed shortly and replaced by one from Intel itself.

- -
- - - TIRPC - - - - - Martin - - Blapp - - - mb@imp.ch - - - - - - - - -

As you know, in march 2001 the version 2.3 of TIRPC has been - committed together with many userland changes. Alfred Perlstein - and Ian Dowse have helped me a lot with the porting effort and if - I had problems with understanding the code.

- -

Most bugs are now fixed, some remaining areas to fix are - secure RPC (keyserv) and unix domain support. I've patches for - these area available. Ian Dowse fixed a lot of outstanding bugs - in the rpcbind binary itself. Thank you Ian !

- -

The plan is now to migrate slowly towards TIRPC 2.8, which is - threadsafe for the server- and clientside. One first patch I've - made available on my URL. TIRPC 2.8 is licensed under the "Sun - Standards License Version 1.0" and we have to add some license - lines and the license itself to all modified files.

- -

A example is timed_clnt_create.diff which can be found on the - homepage.

- -
- - - binup - - - - - Eric - - Melville - - - eric@FreeBSD.org - - - - - Murray - - Stokely - - - murray@FreeBSD.org - - - - - - - - -

The project has gained a mailing list, - freebsd-binup@FreeBSD.org - and the source tree has been moved - into the projects/ directory in the FreeBSD CVS repository. - Current work is focusing on extending the FreeBSD package - framework, and the client library should be rewritten and - completed by the end of the year.

- -

TODO: make the projects/ hierarchy into a cvsup distribution - and add it to cvs-all. Then update distrib.self.

- -
- - - Porting ppp to hurd & linux - - - - - Brian - - Somers - - - brian@freebsd-services.com - - - - -

Status is unchanged since last month. Patches have been - submitted to get ppp working under HURD, and mostly under Linux. - There are GPL copyright problems that need to be addressed. Many - conflicts are expected after the commit of IPv6 support in - ppp.

- -
- - - PPP IPv6 Support - - - - - Brian - - Somers - - - brian@freebsd-services.com - - - - -

The software has been committed to -current and seems - functional. Outstanding issues include dealing with IPV6CP events - (linkup & linkdown scripts) and allocating site-local and - global addresses (currently, ``iface add'' is the only way to - actually use the link). A bug exists in -stable (running the - not-yet-MFC'd ppp code) whereby routing entries are disappearing - after a time (around 12 or 24 hours). No further details are yet - available.

- -
- - - FreeBSD DVD generation - - - - - Brian - - Somers - - - brian@freebsd-services.com - - - - -

A two disc set has been mastered and sent for pressing. There - are a few surprises with this release - details will be given in - the official announcement (at BSDConEurope).

- -
- - - Netgraph ATM - - - - - Harti - - Brandt - - - brandt@fokus.gmd.de - - - - -

ATM-Forum LAN-emulation version 2.0 without support for QoS - has been implemented and tested. The ILMI daemon has been - modularized into a general mini-SNMP daemon, an ILMI module and a - not yet finished IPOA (IP over ATM) module.

- -
- - - jpman project - - - - man-jp@jp.FreeBSD.org - - - - - - - - -

We have finished updating section [125678] manpages to - 4.4-RELEASE based, 1 week after 4.4-RELEASE is announced. To - finish this update, OKAZAKI Tetsurou has imported Ex/Rv macro - support on ja-groff-1.17.2_1. SUZUKI Koichi did most Ex/Rv - changes on Japanese manpages. He also find some issues of these - macro usage on some original manpages and filed a PR. For - post-4.4-RELEASE, now we target 4.5-RELEASE. Section 3 update is - also in progress.

- -
- - - New Mount(2) API - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - Maxime - - Henrion - - - mux@qualys.com - - - - -

We've made some good progress now, and the new nmount(2) - syscall is nearly finished. There is still some work to do to - have a working kernel_mount() and to convert all filesystems to - use this new API for their VFS_MOUNT() functions.

- -
- - - FreeBSD/sparc64 port - - - - - Jake - - Burkholder - - - jake@FreeBSD.org - - - - - Thomas - - Moestl - - - tmm@FreeBSD.org - - - - -

I am pleased to announce that as of 1 AM Friday October 19th, - the sparc64 port boots to single user mode. A few binaries from - the base system have been built and verified to work properly. - Much of this work is still in review for commit, but will be - integrated into the cvs tree as soon as possible. EBus support - has been ported from NetBSD, and ISA support has been written. - The PCI host bridge code has stabilized, and busdma seems to work - correctly now. The sio driver has had EBus support added, and the - ATA driver has been modified so that it works on big-endian - systems and uses the busdma API. With these changes, a root file - system can now be successfully mounted from ATA disks on sparc64, - even in DMA mode. The gem driver, which supports Sun GEM and ERI - and Apple GMAC and GMAC2 ethernet adaptor, has been ported from - NetBSD but has not yet had sufficient testing.

- -
- - - SYN cache implementation for FreeBSD - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

No new status to report, the code is still waiting to be - committed. It is likely that this code will be expanded to - include syn cookies as a further fallback mechanism.

- -
- - - Compressed TCP state - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

Development on this project has been slowed, pending the - commit of the syncache code, as this builds on part of that - work.

- -
- - - Network SMP locking - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

Not much progress has been made this month, with other - projects occupying most of my time. However, reviewing all the - code and data structures had a side benefit; a hash table for - inet addresses has been added. This will significantly speed up - interface address lookups in the case where there are a larger - number of interface aliases.

- -
- - - Multiple console support - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

Currently, a single device may act as a console at any time, - which requires the user to choose the console device at boot - time. With the upcoming network console support, it is desirable - to allow multiple console devices which behave identically, and - to alter consoles while the kernel is running.

- -

The code is completed, and needs some final polishing to clean - up the rough edges. Console output can be sent to both syscons - and sio, (as well as the network) and when in ddb, input can be - taken from any input source. A small control program allows - adding and removing consoles on the fly.

- -
- - - Network console - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

This project's goal is to add low level network functionality - to FreeBSD. The initial target is to make a network console - available for remote debugging with ddb or gdb. A secondary - target is to utilize the code to perform network crash dumps. The - design assumes that the network card and driver are working, but - does not rely on other parts of the kernel.

- -

Initial development has been fairly rapid, and a minimal - TCP/IP stack has been written. It is currently possible to telnet - to a machine which is at the ddb> prompt and interact with the - debugger.

- -
- - - Network device nodes - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

Network devices now support aliases in the form of /dev/netN, - where N is the interface index. Devices may be wired down to a - specific index number by entries in /boot/device.hints of - either:

- -

hint.net.<ifindex>.dev="devname" - hint.net.<ifindex>.ether="ethernet address"

- -

Additionally, ifconfig has been updated so that it will accept - the alias name when configuring a device.

- -
- - - Intel Gigabit driver - - - - - Jonathan - - Lemon - - - jlemon@FreeBSD.org - - - - -

The gx driver has finally been committed to the tree. The - driver provides support for the Intel PRO/1000 cards, both fiber - and copper variants. The driver supports VLAN tagging and TCP/IP - checksum offload.

- -
- - - KSE - - - - julian@FreeBSD.org - - - - - - - - - - -

In the last month, not a lot has happened other than settling - in of the big August commit. Largely due to me having a sudden - increased workload at work, and a need for increased time to be - spent elsewhere. However some design work has proceeded. The API - has firmed up somewhat and several people have been reading - through what has been done already in order to be able to help in - the next phase.

- -

Milestone 3 will be to have the ability to generate and remove - multiple threads/KSEs per process. Milestone 3 will NOT require - that doing so will be safe. (especially in SMP systems), i.e. - locking issues will not be fully addressed, so while some testing - will be possible, it will not be possible to actually run in this - mode with any load.

- -

This will require allocators and destructors for the new - structures. Creation of the syscalls. Generation of an accurate - written API for the userland crew. Writing of the upcall launch - code. Production of a userland test program (not a full thread - scheduler). Resolution of some of the more glaring - incompatibilities (e.g. the scheduler) in a backwards compatible - manner. (i.e. if there are no multi threaded processes on a - system it should behave the same as now (and be as - reliable)).

- -

Criteria for knowing when we have reached Milestone 3 is the - ability for a simple process on an unloaded system to perform a - series of blocking syscalls reliably. e.g. open 2 sockets, and - send data on one, after having done a read on another, and then - 'respond' in like manner..

- -
- - - PowerPC Port - - - - - Benno - - Rice - - - benno@FreeBSD.org - - - - -

There have been a few major successes in the PowerPC port this - month. Mark Peek has succeeded in getting the FreeBSD/PowerPC - kernel cross compiled on FreeBSD and booting under the PSIM - simulator (now in /usr/ports/emulators/psim-freebsd). I have - succeeded in getting the FreeBSD loader to load and execute - kernels using the OpenFirmware found on Apple Macintosh hardware. - Mark is now working on completing some of the startup and pmap - code, while I am taking advantage of the simulator to work on - some interrupt and device issues.

- -
- - - FreeBSD Java Project - - - - - Greg - - Lewis - - - glewis@eyesbeyond.com - - - - - Official FreeBSD Java - Project site. - - - -

The project has moved forward on JDK 1.3.1 development this - month, with the release of two more patchsets. The team is - reasonably confident that the latest patchset is a stable release - of the core JDK 1.3.1 tools and classes, when the default "green" - threads subsystem is used. This is mostly thanks to hard work by - Fuyuhiko Maruyama to stabilize and fix the code. Bill Huey has - also been progressing with his work on the "native" threads - subsystem, although this hasn't yet reached the stability of - "green" threads. Another (arguably the) major highlight of the - latest patchset was the integration of NetBSD support by Scott - Bartram and Alistair Crooks (the latter of NetBSD packages fame). - Hopefully OpenBSD support will follow, making it truly a united - BSD Java Project.

- -
- - - Improving FreeBSD startup scripts - - - - - Doug - - Barton - - - DougB@FreeBSD.org - - - - - Gordon - - Tetlow - - - gordont@gnf.org - - - - - Improving - FreeBSD startup scripts - - - Luke Mewburn's papers - - NetBSD - Initialization and Services Control - - - -

This group is for discussion about the startup scripts in - FreeBSD, primarily the scripts in /etc/rc*. Primary focus will be - on improvements and importation of NetBSD's excellent work on - this topic.

- -

Alright folks, I finally got off my butt last night and put - together a roadmap for the migration to the new rc.d init scripts - that were imported from NetBSD a long time ago and just sat in - the tree.

- -

M1 (Patch included) -
- - Setup infrastructure -
- - Make rcorder compile -
- - Hook rc.subr into the distribution (and mergemaster) -
- - Hook rcorder into the world -
- - Add toggle in rc.conf to switch between rc_ng and current boot - scripts

- -

M2 -
- - Get FreeBSD to boot with the new boot scripts -
- - Rewrite the /etc/rc.d scripts to work with FreeBSD

- -

M3 -
- - Add some FreeBSD specific support into rc.subr

- -

M4 -
- - Add true dependency checking to the infrastructure so that - starting nfsd will start mountd and rpcbind -
- - add support into rc.subr -
- - Add dependencies into rc.d scripts

- -

I'd like a couple of people to take a look at this and then - I'll submit a pr for it if there aren't too many objections. I'm - expecting M2 to run into quite a bikeshed, but hey, I got my nice - shiny asbestos back from the cleaners.

- -
- - - FreeBSD C99/POSIX Conformance Project - - - - - Mike - - Barcroft - - - mike@FreeBSD.org - - - - - FreeBSD-Standards Mailing List - - - freebsd-standards@bostonradio.org - - - - - - - - -

The FreeBSD C99/POSIX Conformance Project aims to implement - all requirements of the C99 Standard and the latest 1003.1-200x - POSIX draft (currently Draft 7). In cases where aspects of the - standard cannot be followed, those aspects will be documented in - the c99(7) or posix(7) manuals. It is also an aim of this project - to implement regression tests to ensure correctness whenever - possible.

- -

Patches that implement the <stdint.h> and - <inttypes.h> headers, and modifications to printf(3) have - been developed and will be committed shortly. They will allow us - to use some of the new types C99 introduces, such as intmax_t and - the printf(3) conversion specifier "%j".

- -
- - - SMPng Status Report - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - smp@FreeBSD.org - - - - - - - - -

Some progress has been made on the proc locking this month. - Also, a new LOCK_DEBUG macro was defined to allow some locking - infrastructure to be more efficient. Kernels now only include the - filenames of files calling mutex, sx, or semaphore lock - operations if the filenames are needed. Also, mutex operations - are no longer inlined if any debugging options are turned on. The - ucred API was also overhauled to be more locking friendly. A - group has also started investigating the tty subsystem to design - and possibly implement a locking strategy.

- -
-
- diff --git a/en/news/status/report-2001-11.xml b/en/news/status/report-2001-11.xml deleted file mode 100644 index 53eb7a1f99..0000000000 --- a/en/news/status/report-2001-11.xml +++ /dev/null @@ -1,1029 +0,0 @@ - - - - - - - - November - - 2001 - - -
- Introduction - -

This months report covers activity during the second half of - October, and the month of November. During these months, - substantial work was performed to improve system performance and - stability, in particular addressing concerns regarding regressions - in network performance for the TCP protocol, and via the - introduction of polled network device driver support. Work - continues on long-term architectural projects for 5.0, including - KSEs, NEWCARD, and TrustedBSD, as well as the cleaning up of - long-standing problems in FreeBSD, such as PAM integration. - Administrative changes are also documented, including work to - redefine and formalize the release engineering process, and the - approval of a new portmgr group which will administer the ports - collection.

- -

FreeBSD users and developers are strongly encouraged to attend - the USENIX BSD Conference in February of next year; it is expected - that this will be a useful forum both for learning about FreeBSD - and on-going work, as well as providing an opportunity for - developers to work more closely and act as a vehicle for discussion - and round-the-clock hacking. More information is available at the - USENIX web site.

- -

Robert Watson

-
- - - TCP Performance Improvements - - - - - Matthew - - Dillon - - - dillon@FreeBSD.org - - - - - - - -

A number of serious TCP bugs effecting throughput snuck into - the system over the last few releases and have finally been - fixed. TCP performance should be greatly improved for a number of - cases, including TCP/NFS.

- -
- - - Intel Gigabit Driver: wx desupported - - - - - Matthew - - Jacob - - - mjacob@feral.com - - - - - - - -

The wx driver is desupported and removed from -current. No - further support for wx in -stable is planned. Newer and better - drivers are now in the tree.

- -
- - - Fibre Channel Support - - - - - Matthew - - Jacob - - - mjacob@feral.com - - - - - Qlogic ISP Host Adapter - Software - - - -

Ongoing bug fixes. Work is underway, to be integrated shortly, - that makes the cross platform endian support easier and will - prepare the FreeBSD version for eventual sparc64 and PowerPC - usage.

- -
- - - TrustedBSD Audit - - - - - John - - Doe - - - trustedbsd-audit@trustedbsd.org - - - - - - TrustedBSD Project - Homepage - - - -

Currently, we are exploring a variety of strategies to learn - about the implementation and performance issues in order to have - a solid design. One of our main goals will be to use a - standardized interface to the system, whether it be POSIX.1e, or - another of the other standards, because as they say "Standards - are great because you have so many to choose from." Hopefully - within the next month or so, we will populate the perforce - TrustedBSD tree with an agreed upon framework that is ready for - serious final work.

- -
- - - Pluggable Authentication Modules - - - - - Mark - - Murray - - - markm@FreeBSD.org - - - - - Dag-Erling - - Smørgrav - - - des@FreeBSD.org - - - - - - - - -

On the code side, a number of libpam bugs have been fixed; a - new PAM module, - pam_self(8) - - , has been written; and preparations have been made for - the transition from - /etc/pam.conf - - to - /etc/pam.d - - .

- -

On the documentation side, new manual pages have been written - for - pam_ssh(8) - - , - pam_get_item(3) - - and - pam_set_item(3) - - , and work has started on a longer article about PAM which is - expected to be finished by the end of the year.

- -

A lot of work still remains to be done to integrate PAM more - tightly with the FreeBSD base system—particularly the - passwd(1) - - , - chpass(1) - - etc. utilities—and ports collection.

- -
- - - Status Report: mb_alloc (-CURRENT mbuf allocator) - - - - - Bosko - - Milekic - - - bmilekic@FreeBSD.org - - - - - Code - Dump and Preliminary Results - - - -

Presently re-style(9)ing mbuf code with the help of Bruce - (bde). The next larger step is approaching: to better - performance, as initially planned, not have reference counters - for clusters allocated separately via malloc(9). Rather, use some - of the [unused] space at the end of each cluster as a counter; - since this space is totally unused and since ref. counter - <--> mbuf cluster is a one-to-one relationship, this is - most convenient.

- -
- - - FreeBSD 4.5 Release Engineering - - - - - Murray - - Stokely - - - murray@FreeBSD.org - - - - - FreeBSD - Release Engineering. - - FreeBSD - 4.5 Release Process / Schedule. - - - -

Release engineering activities for FreeBSD 4.5 have begun. An - overview of the entire process has been added to the FreeBSD web - site, along with a specific schedule for 4.5. The code freeze is - scheduled to start on December 20. The team responsible for - responding to MFC requests sent to re@FreeBSD.org for this - release is: Murray Stokely, Robert Watson, and John Baldwin. Some - of our many goals for this release include closing more - installation-related problem reports, being more conservative - with our approval of changes during the code freeze, and - continuing to document the entire process. For suggestions or - questions about FreeBSD 4.5 release activities, please subscribe - to the public freebsd-qa@FreeBSD.org mailing list.

- -
- - - Web site conversion to XML - - - - - Nik - - Clayton - - - nik@FreeBSD.org - - - - -

Work is (slowly) progressing on converting the web site to use - pages marked up in a simple XML schema, and then generating HTML - and other output formats using XSLT style sheets. The work so far - can be tested by doing "cvs checkout -r XML_XSL_XP www" and then - "cd www/en; make index.html". Take a look at index.page in the - same directory to see the source XML. The CVS logs for index.page - contain detailed instructions explaining how index.page was - generated from its earlier form.

- -
- - - FreeBSD in Bulgarian - - - - - Peter - - Pentchev - - - roam@FreeBSD.org - - - - - - - - - - -

The FreeBSD in Bulgarian project aims to bring a more - comfortable working environment to Bulgarian users of the FreeBSD - OS. This includes, but is not limited to, font, keymap and locale - support, translation of the FreeBSD documentation into Bulgarian, - local user groups and various forms of on-line help channels and - discussion forums to help Bulgarians adopt and use FreeBSD.

- -

Bulgarian locale support has been committed to FreeBSD - 5.0-CURRENT (and later merged into 4.x-STABLE on December 10th). - A local CVS repository for the translation of the FreeBSD - documentation into Bulgarian has been created.

- -
- - - New mount(2) API - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - Maxime - - Henrion - - - mux@qualys.com - - - - - - - - -

There is now some code ready for the new mount API, which has - to be reviewed and tested. If it is adopted, we will probably - start converting all the filesystems, as well as other code in - the kernel, to make them use it. If you want to play with it, the - patch is available at the above URL.

- -
- - - Network interface cloning and modularity - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - -

Support for VLAN cloning has been merged from current and will - ship with 4.5-RELEASE. Additionally, new rc.conf support for - cloning interfaces at boot has been MFD'd. Work is ongoing to MFC - stf and faith cloning as well as adding cloning for ppp devices - and enhancing VLAN modularity.

- -
- - - Device Polling - - - - - Luigi - - Rizzo - - - luigi@iet.unipi.it - - - - - Web page - with code and detailed description. - - - -

This work uses a mixed interrupt-polling architecture to - handle network device drivers, giving the system substantial - improvements in terms of stability and robustness to overloads, - as well as the ability to control the sharing of CPU between - network-related kernel processing and other user/kernel tasks. - Last not least, you might even see a moderate (up to 20-30%, - machine dependent) performance improvement.

- -
- - - RELNOTESng - - - - - Bruce - - Mah - - - bmah@FreeBSD.org - - - - - - - - - - -

I've been working on making the Hardware Notes less - i386-centric. This will be especially important for -CURRENT as - the ia64 and sparc ports reach maturity; most of this work should - be completed in time to be MFC-ed for FreeBSD 4.5-RELEASE. I - encourage any interested parties to review the release - documentation and send me comments or patches.

- -
- - - FreeBSD NVIDIA Driver Port - - - - - Matthew - - N. - - Dodd - - - mdodd@FreeBSD.org - - - - - News and - Status. - - FTP - directory. - - - -

The port of the driver is around 90% feature complete. AGP - support and "Registry" support via sysctl need to be - finished/implemented. The NVIDIA guys are working on a build of - the X11 libs and extensions for FreeBSD; once this is done - hardware accelerated direct rendering should work. The previous - version this driver is no longer available. I'm planning on - making a snapshot of my code once I chase out a few more - bugs.

- -

Please note that development is taking place under -CURRENT - right now; a port to -STABLE will be available at some later - time.

- -
- - - jp.FreeBSD.org daily SNAPSHOTs project - - - - - Makoto - - Matsushita - - - matusita@jp.FreeBSD.org - - - - - Project - Webpage - - - Anonymous FTP - - - -

jp.FreeBSD.org daily SNAPSHOTs project is yet another - snapshots server that provides latest 4-stable and 5-current - distribution. You also find installable ISO image, live - filesystem, HTMLed source code with search engine, and more; - please check project webpage for more details.

- -
- - - UDF Filesystem - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - UDF - Filesystem. - - - -

Modest gains have been made on the UDF filesystem since the - last report. Reading of files from DVD-ROM now works (and is - fast, according to some reports), and there is preliminary - support for reading from CD-RW media. The CD-RW support has only - been tested against CD's created with Adaptec/ Roxio DirectCD, - and much, much more testing is needed. Once this support is - solid, I plan to check it into the tree and start work on making - the filesystem writable.

- -
- - - NEWCARD/OLDCARD Status report - - - - - Warner - - Losh - - - imp@FreeBSD.org - - - - -

Not much to report. A number of minor bugs in OLDCARD have - been corrected. A larger number of machines now work. Additional - work on ToPIC support has been committed, but continued lack of a - suitable ToPIC machine has left the author unable to do much - work. A few stubborn machines still need to be supported (the - author has an example of one such machine, so there is hope for - it being fixed. Some pci related issues remain for both OLDCARD - and NEWCARD.

- -

NEWCARD work is ramping up, while OLDCARD work is ramping - down. A number of things remain to be done for NEWCARD, including - suspend/ resume support, generic device arrival/removal daemon - and hopefully automatic loading of drivers. A number of current - pccard drivers still need to be converted to NEWBUS. Several - Chipset issues remain, as does the merging of isa pccard bridge - code with the pccbb code.

- -
- - - GEOM - generalized block storage manipulation - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - Old concept paper - here. - - - -

This project is now finally underway, thanks to DARPA and NAI - getting a sponsorship lined up. The infrastructure code and data - structures are currently taking form inside a userland simulation - harness.

- -
- - - jpman project - - - - - Kazuo - - Horikawa - - - horikawa@FreeBSD.org - - - - - User and developer - information (in Japanese). - - - -

Targeting 4.5-RELEASE, we continued to revising - doc/ja_JP.eucJP/man/man[1256789] to catch up with RELENG_4. - Section 3 updating has 45% finished.

- -
- - - LOMAC Status Report - - - - - Brian - - Feldman - - - green@FreeBSD.org - - - - - NAI Labs' LOMAC - page - - - -

A FreeBSD -CURRENT snapshot with LOMAC is currently being - prepared, with aid of Perforce on the "green_lomac" branch. Very - soon there should be a working demonstration installation CD of - FreeBSD with LOMAC, including the ability to enable LOMAC in - rc.conf with sysinstall, being a legitimate "out-of-the-box" - FreeBSD experience. Actual release build is pending debugging - issues with program start-up (especially xdm).

- -
- - - ATA Project Status Report - - - - - Søren Schmidt - - - sos@FreeBSD.org - - - - -

Work is underways to support failing mirror disks better and - handle hotswapping in a new replacement disk and have it rebuild - automagically.

- -

Support for the Promise TX4 is now working in my lab, seems - they did the PCI-PCI bridging in the not so obvious way.

- -

Plans are in the works to backport the -current ATA driver to - -stable with hotswap and the works. Now that -current is delayed - I'm working on ways to give me time to get this done, since I've - had lots of requests lately and we really can't let down our - customers :).

- -

SMART support is being worked on, but no timelines yet.

- -

Although not strictly ATA, Promise has equipped me with a - couple SuperTrak sx6000 RAID controllers, they take 6 ATA disks - and does RAID0-5 in hardware. I have done a driver (its an I2O - device) for both -current and -stable and it works beautifully with - hotswap the works. It will enter the tree when it is more mature, - and I have an agreement with Promise on how we handle userland - control util etc. BTW it seems it can also be used as a normal 6 - channel PCI ATA controller, a bit on the expensive side - maybe...

- -
- - - Revised {mode,log}page support for camcontrol - - - - - Kelly - - Yancey - - - kbyanc@FreeBSD.org - - - - -

Extending camcontrol's page definition file format to include - both modepage and logpage definitions; adding support to - camcontrol to query and reset log page parameters. Consideration - is being made to possibly include support for diagnostic and - vital product data pages, but that is outside the current project - scope. New page definition file format includes capability to - conditionally include page definitions based on SCSI INQUIRY - results allowing vendor-specific pages to be described also. - Approximately 80% complete.

- -
- - - FreeBSD C99 & POSIX Conformance Project - - - - - Mike - - Barcroft - - - mike@FreeBSD.org - - - - - FreeBSD-Standards Mailing List - - - standards@FreeBSD.org - - - - - - - - -

Work on the FreeBSD C99 & POSIX Conformance Project is - progressing nicely. Since the last status report, two new headers - have been added [<stdint.h> and <inttypes.h>], - several new functions implemented [atoll(3), imaxabs(3), - imaxdiv(3), llabs(3), lldiv(3), strerror_r(3), strtoimax(3), and - strtoumax(3)], and changes to assert(3) and printf(3) were made - to support C99. More printf(3) changes are in the works to - support the remaining C99 and POSIX requirements. Additionally, - research was done into our POSIX Utility conformance and a list - of tasks was derived from that research.

- -

Several other interesting events occurred during November and - the beginning of December. The project mailing list was moved to - the FreeBSD.org domain, and is now available at - standards@FreeBSD.org. On December 6, 2001, the IEEE Standards - Board approved the Austin Group Specification as IEEE Std - 1003.1-2001, thus making the work we're doing ever more - important.

- -
- - - Improving FreeBSD startup scripts - - - - - Doug Barton - - Committer - - - DougB@FreeBSD.org - - - - - Gordon Tetlow - - Contributor - - - gordont@gnf.org - - - - - Improving - FreeBSD startup scripts - - - Luke Mewburn's papers - - NetBSD - Initialization and Services Control - - - <-- from http://groups.yahoo.com/group/FreeBSD-rc/ --> -

This group is for discussion about the startup scripts in - FreeBSD, primarily the scripts in /etc/rc*. Primary focus will be - on improvements and importation of NetBSD's excellent work on this - topic.

- - <-- from Gordon Tetlow's ranting --> -

Due to personal commitments by the folks working on this project - we have been unable to spend much time porting the rc.d - infrastructure into the FreeBSD boot framework.

- -

Currently, the system will boot (with a little fudging) just - before network utilization. There are patches floating around for - this (see the -arch list from September).

- -
- - - KSEs - - - - - Julian - - Elischer - - - julian@FreeBSD.org - - - - - My web-page with - links - - Jason Evans' KSE - page. - - - - -

I have been working behind the scenes on design rather than - programming for this last month. I have been working however in - the p4 tree to make the system run with the thread structure NOT - a part of the proc structure (a prerequisite for threading)

- -
- - - Ports Manager Team (portmgr) - - - - - Will - - Andrews - - - will@FreeBSD.org - - - - - Ports build cluster - - - -

After a discussion with the Core Team about our status - regarding the ports collection, we heard from them that they'd - decided to recognize us as the final authority for approving - ports committers. We've spent the last few weeks working on our - ports build cluster (see the link) and trying to find ways to - improve it for the ports development community. We've also - handled a few minor issues in the ports collection.

- -
- - - TrustedBSD Project - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - TrustedBSD Home Page - - - -

The TrustedBSD Project continued focusing development efforts - on fine-grained Capabilities and Mandatory Access Control this - month. Kernel support for capabilities is essentially complete, - and efforts are underway to adapt userland applications to use - Capabilities. The login process has been updated to allow users - to run with additional privilege based on /etc/capabilities. The - MAC implementation work has also been active, with improved - support for the labeling of IPC objects, including better - integration into the network stack. Both development trees have - been updated to work with recent KSE-related developments, as - well as exist more happily in a fine-grained SMP kernel. Initial - audit-related work appears in a separate entry.

- -

Development of TrustedBSD source code was moved to the FreeBSD - Perforce repository, permitting better source code management. As - such, the TrustedBSD development trees will now be available via - cvsup.

- -
- - - SMPng Status Report - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - smp@FreeBSD.org - - - - - - - - -

October ended up being a bit busier than November for - SMPng. During October, Peter Wemm finally finished the - ambitious task of unwinding all the macros in NFS and - splitting it up into two halves: client and server. Andrew - Reiter also submitted some code to add locks to taskqueues, - and the folks working on the TTY subsystem designed the - locking strategy they will be using. Per-thread ucred - references were also added for user traps and syscalls. Once - the necessary locking on the process ucred references is - committed, this will allow kernel code to access the - credentials of the current thread without needing locks while - also ensuring that a thread has constant credentials for the - lifetime of a syscall. November only saw a few small bug fixes - unfortunately, but December is already shaping up to be a very - active month, so next month's report should be a bit more - interesting.

- -

In non-coding news, the website for the SMPng project has - moved from its old location to the new location above. Also, - I have completed a paper I am presenting for BSDCon regarding - the SMPng project. The paper will be available in the - conference proceedings and will be available online after the - conference as well.

- -
-
diff --git a/en/news/status/report-2001-12-2002-01.xml b/en/news/status/report-2001-12-2002-01.xml deleted file mode 100644 index ac10be9c82..0000000000 --- a/en/news/status/report-2001-12-2002-01.xml +++ /dev/null @@ -1,721 +0,0 @@ - - - - - - - - December 2001 - January 2002 - - - - - - - $FreeBSD: www/en/news/status/report-dec-2001-jan-2002.xml,v 1.7 2004/04/07 11:27:47 phantom Exp $ - - - -
- Introduction - -

This bi-monthly report covers development activities on the FreeBSD - Project for December 2001 and January 2002. A variety of - accomplishments have been made over the last couple of months, - including strong progress relating to the KSE project, which - brings Scheduler Activations to the FreeBSD kernel, as well - as less visible infrastructure projects such as improvements - to the mount interface, PAM integration work, and translation - efforts. Shortly following the deadline for this status - report, the BSD Conference and FreeBSD Developer Summit were - held, and will be covered in the next bi-monthly report at - the end of March. Plans are already under way for the USENIX - Annual Technical Conference in Monterey, CA, later this year, - and all and sundry are encouraged to attend to get further - insight in FreeBSD development.

- -

Robert Watson

-
- - - - USB stack maintenance - - - - - Josef - - Karthauser - - - joe@FreeBSD.org - - - - -

I've been working to integrate recent improvements in the - NetBSD usb stack to FreeBSD -current. Both NetBSD and OpenBSD - currently share the same source, as FreeBSD did too at once point - before it diverged. The goal is to get back to that state, but - there are many improvements on both sides that need to be merged - before this is complete.

- -

I'm currently looking for someone to help maintain usb in - -stable. Please let me know if you're interested.

- -
- - - TrustedBSD ACLs - - - - - Chris - - Faulhaber - - - jedgar@FreeBSD.org - - - - - - - - - -

Patches for cp(1), ls(1), and mv(1) to bring in - POSIX.1e-compliant Access Control List support have been updated - to patch against builds of -CURRENT. Other system utilities are - currently being evaluated for ACL support including install(1) - (patch available) and mtree(8). Work is in progress to verify the - native getfacl(1), setfacl(1), and other utilities build and work - correctly on other ACL-enabled systems (e.g. Linux w/ACL patches) - and to help verify POSIX-compliance of the continuing TrustedBSD - work along with other systems. Finally, experimental Perl and PHP - modules are available allowing limited access to native ACLs for - languages other than C.

- -
- - - Bluetooth stack for FreeBSD (Netgraph - implementation) - - - - - Maksim - - Yevmenkin - - - m_evmenkin@yahoo.com - - - - - - - -

The project is making progress. The goal is to design and - implement Host Controller Interface (HCI) and Link Layer Control - and Adaptation Protocol (L2CAP) layers using Netgraph framework. - More distant goal is to write support for Service Discovery - Protocol (SDP) and RFCOMM protocol (Serial port emulation over - Bluetooth link) . All information was obtained from Bluetooth - Specification Book v1.1.

- -

Project status: In progress. 1) Design: mostly complete, there - are some minor issues to be resolved. 2) Implementation: Kernel - - HCI and L2CAP Netgraph nodes have been implemented; 3) User space - (API, library, utilities) - in progress. 4) Testing: In progress. - I do not have real Bluetooth hardware at this point, so i wrote - some tools that allow me to test the code. Some of them will be - used as foundation for future user space utilities.

- -

Issues: 1) Bluetooth hardware; I do not have real Bluetooth - hardware, so if people can donate hardware/specs it would be - great. I promise to write all required drivers and make them - available. I also promise to return hardware/specs on first - request. 2) Project name; I would like to see the name that - reflects the following: it is a Bluetooth stack, implementation - is for FreeBSD and implementation is based on Netgraph - framework

- -
- - - "GEOM" - generalized block storage manipulation - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - Old concept paper - here. - - - -

This project is now finally underway, thanks to DARPA and NAI - getting a sponsorship lined up. The infrastructure code and data - structures are currently taking form inside a userland simulation - harness. Basic MBR and BSD methods have been written and device - attach/taste/dettach algorithms been implemented and - validated.

- -
- - - jp.FreeBSD.org daily SNAPSHOTs project - - - - - Makoto - - Matsushita - - - matusita@jp.FreeBSD.org - - - - - Project - Webpage - - - SNAPSHOTs Notes (in Japanese) - - - -

I've update OS of buildboxes to the latest FreeBSD 5-current - and 4-stable. Everything goes fine. From January 2002, I've - started a webzine, SNAPSHOTS Notes (only Japanese version is - available). SNAPSHOTs Notes pickups tips and information - especially for the people living with FreeBSD 5-current/4-stable. - Article or idea for SNAPSHOTs notes are always welcome (you don't - need to write in Japanese :-).

- -
- - - TrustedBSD Audit - - - - - trustedbsd-discuss - - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD project - website - - - -

Robert Watson created the TrustedBSD audit perforce tree, - which is a branch from the TrustedBSD base tree, in order to - start pushing development efforts towards using a revision - control system. Andrew Reiter started to merge in some framework - related code for generation of audit records, enqueueing writes, - and handling data writing. There is a great deal of work to be - done with updates and discussion on the - trustedbsd-discuss@TrustedBSD.org mailing list.

- -
- - - KSE Status Report - - - - - Julian - - Elischer - - - julian@FreeBSD.org - - - - - Links from - here. - - Links from - here. - - - -

The KSE project (an attempt to support scalable thread in - FreeBSD using kernel support), has reached What I call "milestone - 3". At this milestone it is possible to run a multithreaded - program on a single CPU but with full concurrency of threads on - that CPU. In other words the kernel supports the fact that one - thread can block by allowing another thread to run in its place. - A test program that demonstrates this is available at the above - website.

- -

Milestone 4 will be to allow threads from the same program to - run on multiple CPUs but may require more input from the SMPng - project. I am at the moment (Feb 6) getting ready to commit a - first set of changes for milestone 3, that have no real effect - but serve to drastically reduce the complexity of the remaining - diff so that others can read it more easily. After changes to - libkvm to support this diff have been added it should be possible - to run 'ps' and look at multiple threads in a treaded process. I - will be demonstrating KSE/M3 at BSDcon.

- -
- - - Netgraph ATM - - - - - Harti - - Brandt - - - brandt@fokus.gmd.de - - - - - - - - -

The Netgraph ATM package has been split into a number of - smaller packages: bsnmp is a general-purpose SNMP daemon with - support for loadable modules. Two modules come with it: one - implementing the standard network-interface and IP related parts - of MIB-2 and one for interfacing other modules to the NetGraph - sub-system. ngatmbase contains the drivers for the ATM hardware, - the ng_atm netgraph type and a few test tools. This package - allows one to use ATM PVCs. It should be possible, for example, - to do PPP over ATM with this package. Both bsnmp and ngatmbase - are available in version 1.0 under the link above. Two other - modules will be released in February: ngatmsig containing the - UNI-4.0 signalling stack as netgraph nodes and ngatmip containing - CLIP and LANE-2.0.

- -
- - - FreeBSD C99 & POSIX Conformance Project - - - - - Mike - - Barcroft - - - mike@FreeBSD.org - - - - - FreeBSD-Standards Mailing List - - - standards@FreeBSD.org - - - - - - - - -

A significant amount of progress was made in December and - January, particularly in the area of utility conformance. Several - utilities were updated to conform to SUSv3, they include: at(1), - mailx(1), pwd(1), split(1), and uudecode(1). Several patches have - been submitted to increase conformance in other utilities, they - include: fold(1), patch(1), m4(1), nice(1), pr(1), renice(1), - wc(1), and xargs(1). These are in the process of being reviewed - and committed. Two new utilities have been written, specifically - pathchk(1) and tabs(1). These are also being reviewed and will be - committed shortly.

- -

A patch which implements most of the requirements of scanf(3) is - being reviewed and is expected to be committed shortly. This will - allow us to MFC a number of new functions and headers. - Additionally, work has started on wide string and complex number - support.

- -
- - - jpman project - - - - - Kazuo - - Horikawa - - - horikawa@FreeBSD.org - - - - - jpman project (in - Japanese) - - - -

For 4.5-RELEASE, port ja-man-doc-4.5.tgz is in sync with base - system except for OpenSSH pages (OpenSSH 2.3 based instead of - 2.9) and perl5 pages (jpman project do not maintain). Section 3 - updating has 55% finished.

- -

OKAZAKI Tetsurou has incorporated changes on base system's - groff into port japanese/groff. MORI Kouji has fixed two bugs of - port japanese/man.

- -
- - - KAME - - - - - KAME core team - - - - - - core@kame.net - - - KAME Users Mailing List - - - - - - snap-users@kame.net - - - - - - - - -

The KAME project is currently focusing on the scoped - addressing architecture, the advanced API implementation, NATPT - and the mobile ipv6 implementation. Though these stuffs are not - stable enough to be merge into the FreeBSD tree, you can get and - try them from the above URL.

- -
- - - FreeBSD in Bulgarian - - - - - Peter - - Pentchev - - - roam@FreeBSD.org - - - - - - - - - - -

The FreeBSD in Bulgarian project aims to bring a more - comfortable working environment to Bulgarian users of the FreeBSD - OS. This includes, but is not limited to, font, keymap and locale - support, translation of the FreeBSD documentation into Bulgarian, - local user groups and various forms of on-line help channels and - discussion forums to help Bulgarians adopt and use FreeBSD.

- -

A guide for using FreeBSD with Bulgarian settings has been put - up on the project's website. The CVS repository will be made - public shortly, linked to on the URL's above.

- -

An independent project for making FreeBSD easier to use by - Bulgarians has appeared, http://www.FreeBSD-bg.org/. - It also hosts a mailing list for discussions of FreeBSD in - Bulgarian, - stable@FreeBSD-bg.org. For more information about the mailing - list, send an e-mail with "help" in the message body to - - majordomo@FreeBSD-bg.org.

- -
- - - FreeBSD Java Project - - - - - Greg - - Lewis - - - glewis@eyesbeyond.com - - - - - - - - -

The past two months have been an exciting time in the FreeBSD - Java Project with the signing of a license between the FreeBSD - Foundation and Sun allowing us access to updated JDK source code - and the Java Compatibility Kit (JCK). This license will also - allow the project to release a binary version of both the JDK and - JRE once JCK testing is complete. Work on this testing is under - way with the project hopeful of being able to make a binary - release in the not too distant future.

- -

In lieu of the binary release which was hoped for with FreeBSD - 4.5 the project will release an updated source patchset this - weekend. This patchset will feature further work on the FreeBSD - "native" threads subsystem from Bill Huey. Also, thanks to hard - work by Joe Kelsey and Fuyuhiko Maruyama, the patchset will for - the first time feature a working Java browser plugin!

- -
- - - Revised {mode,log}page support for camcontrol - - - - - Kelly - - Yancey - - - kbyanc@FreeBSD.org - - - - -

Extending camcontrol's page definition file format to include - both modepage and logpage definitions; adding support to - camcontrol to query and reset log page parameters. Consideration - is being made to possibly include support for diagnostic and - vital product data pages, but that is outside the current project - scope. New page definition file format includes capability to - conditionally include page definitions based on SCSI INQUIRY - results allowing vendor-specific pages to be described also. - Approximately 90% complete.

- -
- - - Pluggable Authentication Modules - - - - - Mark - - Murray - - - markm@FreeBSD.org - - - - - Dag-Erling - - Smørgrav - - - des@FreeBSD.org - - - - - OpenPAM - - - -

OpenPAM, a new library intended to replace Linux-PAM in - FreeBSD, has been written and is undergoing integration testing. - It is available for download from the URL listed above.

- -

In addition to this, a couple of new modules have been written - (pam_lastlog(8), pam_login_access(8)), and the pam_unix(8) module - has been extended to perform most of the tasks normally performed - by login(1), which is now fully PAMified.

- -

The PAM FDP article has been put on hold until OpenPAM - replaces Linux-PAM in CVS, to avoid wasting effort on soon-to-be - obsolete documentation.

- -
- - - TrustedBSD MAC Implementation - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - TrustedBSD Project Web - Site - - - -

Substantial progress has been made towards a working MAC - implementation. The focus over the last two months has been - moving from a hard-coded series of MAC policies to a more - flexible implementation. A pluggable policy framework has been - created (and is still under development), supporting Biba, MLS, - TE, a "BSD Extended" model, and a sample mac_none module. Some - modules must be compiled in or loaded prior to boot; others may - be introduced at run-time. Support for networking has improved, - with improved handling of IP fragmentation in IPv4, support for - various pseudo-interfaces such as if_tun and if_tap, improved - integration into userland, NFS-related fixes, moving the VFS - enforcement out of individual filesystems, support for a - 'multilevel' mount flag, support for explicit labeling in procfs - and devfs, addition of an 'extattrctl lsattr' argument to list - EAs on a filesystem, support for label ranges in the Biba and MAC - policies, and much more.

- -

Targets for the next two months include more universal - enforcement of VFS-related calls, improved support for - alternative ABIs, improved flexibility of in-kernel subject and - object labels, support for IPv6 and IPsec, and improved support - for NFS serving.

- -

Development continues in the FreeBSD Perforce repository, - which may be accessed using cvsup.

- -
- - - New mount(2) API - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - Maxime - - Henrion - - - mux@sneakerz.org - - - - -

Now that the patch has been mailed to the - freebsd-arch@FreeBSD.org mailing list, and that there were no - objections, the commit will happen soon. Poul is currently - testing it in his own tree. After it has been committed, it will - be time to modify the filesystems in the tree to use VFS_NMOUNT - instead of VFS_MOUNT. Mount(8) will also need some modifications. - Some new manpages -- nmount(2) and kernel_vmount(9) -- are being - created in the meantime.

- -
- - - - SMPng - - - - - smp@FreeBSD.org - - - smp@FreeBSD.org - - - - - SMPng project - website - - - -

Alfred Perlstein committed file descriptor locking code - which was definitely a good push towards trying to lock down - some important pieces of global data. Peter Wemm has made - progress on pmap cleanups for x86 SMP TLB shootdowns. Matt - Dillon and John Baldwin have made progress on getting patches - done for moving accesses to ucred's out from under Giant's - protection. John Baldwin has also made some commits in order - to get the alpha port's SMP working. Matt Dillon has plans - for hunting down fileops locking issues in order to continue - his previous Giant pushdown work.

- -
- -
- diff --git a/en/news/status/report-2002-02-2002-04.xml b/en/news/status/report-2002-02-2002-04.xml deleted file mode 100644 index 6d9a4d2ab9..0000000000 --- a/en/news/status/report-2002-02-2002-04.xml +++ /dev/null @@ -1,1301 +0,0 @@ - - - - - - - - February - April - 2002 - - -
- Introduction - -

This report covers FreeBSD development activities from February, - 2002 through April, 2002. It's been a busy few months -- BSDCon - in San Francisco, the FreeBSD Developer Summit, a first development - preview of 5.0-CURRENT, not to mention lots of progress on the - 5.0 feature set (SMPng, sparc64, GEOM, ... the list goes on).

-

In the next two months, the USENIX ATC occurs (highly recommended - event for both developers and users), and a number of new software - components will hit the tree, including UFS2 and the TrustedBSD - MAC framework. We'll also complete the elections for the FreeBSD - Core Team, and should have the next Core Team online by the time - the next report rolls around. Stay tuned for more!

-

Robert Watson

-
- - - FreeBSD Package-building Cluster - - - - - Kris - Kennaway - - kris@FreeBSD.org - - - - -

Packages are built from the FreeBSD Ports Collection on a - cluster of i386 and alpha machines using scripts available in - /usr/ports/Tools/portbuild/. Over the past few months I have - been cleaning up and extending these scripts to improve - efficiency and allow for greater flexibility in how package - builds are performed. Major improvements so far have been: - cleaning up and modularizing the scripts to avoid code - duplication and reduce the need for ongoing maintenance; - optimizing the build process and making it much more robust - against client machine failure; and allowing package builds to - be restarted if they are interrupted. The i386 package - cluster is currently running FreeBSD 5.0-CURRENT, and it has - proven to be a useful testing ground for exposing kernel bugs, - especially those which only manifest under system load.

- -

Future plans include the ability to perform incremental - package rebuilds which only build packages that have changed - since the last run. This will allow packages to be made - available on the FTP site within an hour or two of the CVS - commit to the ports collection. We also hope to set up a - sparc64 package cluster in the near future, but this is - contingent on suitable hardware.

- -
- - - UMA - - - - - Jeff - Roberson - - - jeff@FreeBSD.org - - - - -

FreeBSD's new kernel memory allocator has been committed to - 5.0. UMA is a slabs derived allocator that supports memory - reclaiming, object caching, type stable storage, and per CPU - free lists for optimal SMP performance. It has both a - malloc(9) interface and a zone style interface for specific - object types. uma(9) will be available shortly.

- -
- - - Universal Disk Filesystem for FreeBSD - - - - - Scott - Long - - scottl@FreeBSD.org - - - - Jeroen - Ruigrok - - asmodai@wxs.nl - - - - - UDF Homepage. - - - -

Read-only support for UDF filesystems was checked into the 5-CURRENT - branch in April. Backporting for 4-STABLE is being conducted by - Jeroen. The next phase is to write a newfs_udf, then move on to - adding write support to the filesystem. I'm still looking for a - volunteer to handle read and write support for write-once media - (e.g. CD-R).

- -
- - - Zero Copy Sockets - - - - - Ken - - Merry - - - ken@FreeBSD.org - - - - - - Zero copy patches - and information. - - - -

I have released a new zero copy sockets snapshot, the first since - November, 2000. The code has been ported up to the latest - -current, and the jumbo code now has mutex protection. Also, zero - copy send and receive can be selectively turned on and off via sysctl - to make it easier to compare performance with and without zero copy. - Reviews and comments are welcome.

- -
- - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - Maksim - Yevmenkin - - - m_evmenkin@yahoo.com - - - - - -

I'm slowly making progress. The second engineering release is - available for download at - http://www.geocities.com/m_evmenkin/ngbt-fbsd-20020506.tar.gz

- -

This release includes support for H4 UART transport layer, Host - Controller Interface (HCI), Link Layer Control and Adaptation - Protocol (L2CAP) and Bluetooth sockets layer. It also comes - with several user space utilities that can be used to configure - and test Bluetooth devices.

- -

I'm currently working on RFCOMM protocol implementation (Serial - port emulation over Bluetooth link). My next goal is to port - Service Discovery Protocol (SDP) implementation from BlueZ - (http://bluez.sf.net). I'm also thinking about adding USB device - support (as soon as i find/buy hardware).

- -

Issues: 1) Bluetooth hardware; I have couple PC-CARDs that i use - for development and testing purposes, but i'd love to have more. - 2) Time; My regular day job kicked in, so i will be spending more - time doing stuff i'm getting paid for.

- - -
- - - FreeBSD C99 & POSIX Conformance Project - - - - - Mike - - Barcroft - - - mike@FreeBSD.org - - - - FreeBSD-Standards Mailing List - - - standards@FreeBSD.org - - - - - - - - -

Since the last status report, two developers working on utility - conformance were given commit access to the FreeBSD CVS repository - to help expedite development. As a result, the following utilities - have been brought up to conformance, they include: csplit(1), - env(1), expr(1), fold(1), join(1), m4(1), mesg(1), paste(1), - patch(1), pr(1), uuencode(1), uuexpand(1), and xargs(1). The - printf(1) utility was brought up to conformance with the 1992 - edition of POSIX.2, with further development planned.

- -

On the header front, much progress has been made. Specifically, - infrastructure to control visibility of components of a header, based - on the standard requested by an application, has been added to - <sys/cdefs.h>. Some work has been completed on renovating the - way types are defined. This has lead to the creation of - <sys/_types.h>. Further improvements such as the merger of - <machine/ansi.h> and <machine/types.h> are planned. - Additionally, the headers: <strings.h>, <string.h>, and - <sys/un.h> have been made to conform to POSIX.1-2001.

- -

On the API front, scanf(3) has received support for 5 new length - modifiers (hh, j, ll, t, and z). A patch to implement two - additional conversion specifiers (j and z) has been developed for - printf(9) and is expected to be committed soon.

- -

In other news, the project's web site has been moved to the main - FreeBSD site. It is now available at the URL at the top of this - status report. Please update your bookmarks.

- -
- - - Netgraph ATM - - - - - Harti - - Brandt - - - brandt@fokus.fhg.de - - - - - - Introduction to NgAtm - - - -

Version 1.1 for FreeBSD-current is now available. It includes - the SNMP-daemon package bsnmp, the driver package ngatmbase, - the UNI4.0 signaling package ngatmsig and the network emulation - package ngatmnet. NgAtm allows both to build applications running - directly on top of ATM and to use ATM-Forum LAN emulation to - use IP over ATM. Currently we are working on a simple switch module, - that implements the network side signaling and ILMI as well as - simple routing and call admission control.

- -
- - - GNOME Project - - - - - Joe - - Marcus - - - marcus@FreeBSD.org - - - - - FreeBSD GNOME Project - homepage. - - - -

The GNOME project has seen quite a few changes lately. For one, - the author of this update has recently been given "The Bit." - Joe Marcus Clarke now has CVS access, and is working primarily - on the GNOME project. Joe has been closing a good deal of GNOME - PRs, as well as patching some of the existing GNOME 1.4 - components.

- -

The GNOME 2 porting effort continues on. We have completed porting - of the GNOME 2.0 API, and are 75% complete on porting the full - GNOME 2.0 desktop. When complete, GNOME 1.4 and GNOME 2.0 will - be co-resident in the ports tree. Both APIs can be installed - concurrently in the same PREFIX, but the respective desktops - will remain mutually independent. Maxim Sobolev is working - on adapting bsd.gnome.mk to handle both versions of the desktop - in an elegant fashion.

- -

Not to be left out, the existing GNOME 1.4 components have received - numerous updates to keep them in sync with the stable distfiles - on gnome.org. We have seen many "1.0" milestone releases including - the most recent AbiWord 1.0.0. In the next few weeks, we will be - making sure all the GNOME 1.4 components build correct packages - on bento so that GNOME 1.4 will be on the 4.6-RELEASE CD.

- -
- - - FreeBSD/KGI - - - - - Nicholas - - Souchu - - - nsouch@FreeBSD.org - - - - - - - - -

FreeBSD/KGI started last year after the port of GGI to VGL. - KGI (Kernel Graphic Interface) is a kernel infrastructure providing user - applications with access to hardware graphic resources (dma, - irqs, mmio). KGI is already available under Linux as a separate - project. The FreeBSD/KGI project aims at integrating KGI - in the FreeBSD kernel. Mostly a port for now, but optimized for - FreeBSD in the future. Currently FreeBSD/KGI is under development - and the code is only available for reading, compiling but not running. - More interesting are design hints found at the project URL.

- - -
- - - Libh - - - - - Antoine - Beauprş - - - anarcat@anarcat.ath.cx - - - - Alexander - Langer - - - alex@FreeBSD.org - - - - Nathan - Ahlstrom - - - nra@FreeBSD.org - - - - - - Main project page. - - - - -

We now have a loadable mfsroot floppy. It contains just the - diskeditor (which is really a disk partitioner) which has been - enhanced and is probably in its final form. It's been geared - towards making the newfs(1) and mount(1) steps separate dialogs, so - it reduceed its complexity. A basic fstab class has been - implemented to manipulate /etc/fstab and mountpoint. This might - find a use outside libh, by the way. Libh package format is still - incomplete and somehow buggy, so it's my next target.

- -

There is a API documentation effort underway with the help of - doxygen(1), so there's now more documentation for people that want - to get started with libh.

- -

All this lead me to prepare the release of another alpha - preview of libh that will shortly be available in the ports - collection (0.2.2). Also, a new committer (okumoto) has joined the - project (as well as I) and he is currently working on cleaning up - the build system. It's been a few months without news, so this - probably seemed a bit long, but don't worry, we still need your - help to really get this going!

- - -
- - - jp.FreeBSD.org daily SNAPSHOTs project - - - - Makoto - Matsushita - - matusita@jp.FreeBSD.org - - - - Project Webpage - Project Webpage (in Japanese) - - -

There are several new topics, including: Source Code Tour is now - separated into kernel part and userland part, yet another snapshots - from RELENG_4_x branch (currently 4.5-RELEASE-p4), add several - packages including XFree86 4.x to installation CD-ROM, new - cdboot-only ISO image, fix breakage of duplex.iso, etc. See also - the project webpage for more detail. Also, I have a plan to add - FreeBSD/alpha distribution to this project -- stay tuned.

- -
- - - KAME - - - - - Shinsuke - SUZUKI - - - suz@kame.net - - - - - KAME Project Home Page - KAME Project Roadmap - - - -

KAME Project has been extended until March 2004, and we decided the project - roadmap for these two years. The first one year is for implementation, and the - remaining year is for feedback of our results into other BSD projects (please refer - to the above URL for further detail). - Great change is lack of NAT-PT support due to a lack of human resource, although - KAME snap still contains it as it is.

- -

SUZUKI Shinsuke (suz@kame.net) has begun working for KAME and FreeBSD merge task in - cooperation with Umemoto-san (ume@FreeBSD.org). - Some of KAME stuff (critical bug fix, newest ports for pim6sd and racoon, etc) - has been merged into 4-stable in this April.

- -
- - - TrustedBSD Audit - - - - - Andrew - - Reiter - - arr@FreeBSD.org - - - - TrustedBSD Audit Mailing List - - trustedbsd-audit@TrustedBSD.org - - - - - TrustedBSD -main web page - - - -

Over the past couple of months, progress has pretty much stopped - until very recently. The past few changes to the audit code were - update the usage of zones to UMA zones, cleanup some old cruft, - and start toying with the idea of having an audit write thread - implemented as an ithd. The next step is to decide two realistic - approaches to the where the records will be dumped -- whether that - is to a local disk or fed up to userland and then dealt with. - After that, the goal will be to expand the number of events that - are being audited, while also working in some performance testing - procedures. I will be posting to trustedbsd-audit about the recent - changes shortly.

- -
- - - TrustedBSD MAC - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - TrustedBSD Discussion Mailing List - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD main web page - - - -

Over the last three months, there has been a lot of activity - in the TrustedBSD MAC tree. An initial commit of the SEBSD - code (NSA FLASK and SELinux implementation) was made; many - MAC policies previously linked directly to the kernel via - kernel options were moved to kernel modules; the flexibility - of the framework was improved relating to the life cycle of - object labels; additional labeling and access control hooks - were introduced; new policies were introduced to demonstrate - the flexibility of the framework (including a cleanup of - inter-process authorization, additional VFS hooks, improved - support for multilabel filesystems, network booting, IPv6, - IPsec, support for "peer" labels on stream sockets). - Current modules include Biba integrity policy, MLS - confidentiality policy, Type Enforcement, "BSD Extended" - (permitting firewall-like rulesets for filesystem protection), - "ifoff" (limit interface communication by policy), - mac_seeotheruids (limit visibility of processes/etc of other - users), "babyaudit" (a simple audit implementation), and - SEBSD (FLASK/SELinux port).

-

Over the next month, a final move to completely dynamic - labeling will be made, permitting policies to introduce new - state relating to process credentials, vnodes, sockets, - mounts, interfaces, and mbufs at run-time, allowing a broad - range of flexible label-driven policies to be developed. - In addition, application APIs will be re-designed and - re-implemented so as to better support a fully dynamic - policy framework. We plan to make an initial prototype - patchset available for review in June, with the intent of - committing that patchset in mid-June.

-

Updated prototype code may be retrieved from the TrustedBSD - CVS trees on cvsup10.FreeBSD.org.

- -
- - - PAM - - - - - Mark - Murray - - markm@FreeBSD.org - - - - Dag-Erling - SmŲrgrav - - des@FreeBSD.org - - - - - March 2002 PAM activity report. - April 2002 PAM activity report. - - - -

The painful parts are now completed, with all authentication- - related utilities converted to PAM (except for those cases where - it doesn't make sense, like Kerberos- or OPIE-specific - commands). OpenPAM is complete (except for a few missing man - pages) and seems to work well.

- -

For more details, see the activity reports linked to above.

- -
- - - OpenSSH - - - - - Dag-Erling - SmŲrgrav - - des@FreeBSD.org - - - - -

OpenSSH has been upgraded to 3.1, and the kinks seem to have - been worked out by now. OpenSSH will now use PAM for both ssh1 - and ssh2 authentication.

- -
- - - KSE - - - - - Julian - - Elischer - - - julian@FreeBSD.org - - - - - Jonthan - Mini - - mini@FreeBSD.org - - - - - - - - - -

The KSE project had floundered due to lack of development - time for awhile, but has been picked up recently by - Jonathan Mini. Currently, the main focus is to prepare - the "milestone 3" code for inclusion into -CURRENT.

- -

The project is still working towards "milestone 4" - (allowing threads from the same process to run on - multiple CPUs), which should be significantly easier - now due to work done by the SMPng project over the past - several months.

- -

Help could be used in several areas of the project, - especially with porting the libc_r (pthreads) library - to KSE's threading model.

- - -
- - - NEWCARD - - - - - Warner - - Losh - - - imp@FreeBSD.org - - - - -

NEWCARD support tried to merge CardBus functions with PCI - functions, but that failed to properly route interrupts. A - branch for the merge was created and will be merged into the - main line at a later date. Too many other things going on in my - life to make much progress.

- -
- - - Wi Hostap - - - - - Warner - - Losh - - - imp@FreeBSD.org - - - - -

Work on the host access point support for the Prism2 and - Prism2.5 based wireless cards has been integrated into the - kernel. This work is largely based on Thomas Skibo's initial - implementation.

- -
- - - Fibre Channel - - - - Matthew - Jacob - - mjacob@FreeBSD.org - - - - - Project Status Page. - - - -

Continued bug fixing and hardening for this last few months.

-

Future work will include making target mode work correctly and fast.

-

The LSI-Logic chipset's MPT Fusion driver is also being evaluated.

- -
- - - Athlon MTRR Problems - - - - - David - - Malone - - - dwmalone@FreeBSD.org - - - - -

The FreeBSD MTRR code has been made more robust against - unexpected values sometimes found in the Athlon's Memory - Type Range Registers. Problems with these values had prevented - XFree 4.2 running on some motherboards. Experimentation indicates - that these undocumented values may control the mapping of - BIOS/ROMs or have something to do with SMM. If anyone can provide - details of what these values mean, can they - please let me know, so the MTRR code can be completed.

- -
- - - IPMI Tools for FreeBSD - - - - - Doug - - White - - - dwhite@FreeBSD.org - - - - - - - - -

IPMI Tools for FreeBSD is a collection of C and Python - applications and modules for exploring the information available - via the Intelligent Platform Management Interface (IPMI), as - implemented on server motherboards by Intel and HP. IPMI is an - open standard with patent protection for adopters which defines - standard interfaces to on-board management hardware. The - management hardware consists of a CPU, sensors such as temperature - probes and fan speeds, and repositories such as the System Event - Log and Field-Replaceable Unit (FRU) inventory, and other system - information.

- -

A basic set of tools was recently made available which uses the - KCS and SMIC system interfaces to retrieve the System Event Log, - FRU repository, and system sensors. Additional features are - currently under research. Suggestions for additional features and - programs are greatly appreciated.

- - -
- - - PowerPC Port - - - - - Benno - - Rice - - - benno@FreeBSD.org - - - - - Current boot -messages. - - - -

The PowerPC port is moving ahead. It can now mount a root file system - and exec init, but fails when trying to map init's text segment in. I'm - hoping to have it starting my fake "Hello, world!" init soon, after which - I plan to try and get some libc bits in place so that I can build /bin - and /sbin and try to get to actual single-user.

- -
- - - jpman project - - - - - Kazuo - Horikawa - - - horikawa@FreeBSD.org - - - - - - jpman project page both for users and developers (in Japanese) - - - -

4.5-RELEASE Japanese manpage package, ja-man-doc-4.5.tgz, once - published with OpenSSH 2.3 (as reported by previous status - report) on January 31, is replaced with new package with OpenSSH - 2.9 based manpages on March 3. Since then, we have been - updating Japanese manpages for 4.6-RELEASE. For new translation - and massive update, we have been making a lot of effort.

-

Continuing section 3 updating has 73% finished.

- -
- - - "GEOM" - generalized block storage manipulation - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - - Old concept paper here. - - - - -

The GEOM code has gotten so far that it beats our current code - in some areas while still lacking in others. Work continues on - a generalized interface for "magic data" (boot blocks, disklabels - MBR's etc) manipulation from userland.

-

With GEOM enabled in the kernel any FreeBSD platform will now - recognize PC style MBR's, i386 disklabels, alpha disklabels, - PC98 extended MBRs and SUN/Solaris style disklabels.

- - -
- - - FreeBSD ARM Port - - - - Stephane E. - Potvin - - sepotvin@videotron.ca - - - - - - -

Since the last progress report, the initialization code was much - cleaned (thanks to NetBSD's acort32 port) and partial DDB support as - been added. I'm now struggling to put the pmap module into a - working state. The latest patch set only includes the - initialization changes. I did some tries to get what I had so far - working on my iPAQ without much successes (downloading a kernel - over a serial link is way too painful). If anyone has had success in - getting any iPAQ to work as a USB storage device under *BSD please - contact me.

- -
- - - locking up pcb's in the networking stack - - - - - Jeffrey - - Hsu - - - hsu@FreeBSD.org - - - - - - - - -

I've been mentoring someone on locking up the protocol control - blocks in the networking stack. She has already finished TCP and - UDP and I'm currently reviewing the patch with her and going over - some networking lock order issues. Locking up raw protocol - interface control blocks follows next.

- - -
- - - Network interface cloning and modularity - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - -

Support for stf(4), faith(4), and loopback interfaces has been - committed to current. The stf and faith support has been MFC'd. - In current the API has changed to move unit allocation into the - generic cloning code reducing the amount of support code required - in each driver. Code improvements to increase our API - compatibility with NetBSD will be committed soon along with cloning - support for discard interfaces and ppp(4) interfaces.

-

Thanks to mux@FreeBSD.org for the loopback support - and unit allocation cleanups.

- -
- - - IA64 Port - - - - - Peter - Wemm - - peter@FreeBSD.org - - - - - -

IA64 has had a busy few months. Aside from gcc, we are now fully - self hosting on IA64. Doug Rabson has performed his magic and - implemented the execution of 32 bit i386 application binaries - although more work remains to be done to make ld-elf.so.1 happy - with the different underlying page size. We have been using the - i386 perforce binary to do actual development work and submit from - the ia64 systems themselves. Marcel Moolenaar has been working on - SMP and machine-check support. We have been running SMP kernels - amazingly reliably on our development boxes for quite some time now. - syscons is now functional. We have produced a self-booting - run-root-on-cdrom ISO image (idea taken from the sparc64 folks) that - has been used to manually self install an IA64 system from a blank - disk. Aside from a few minor loose ends we now have complete 'make - world' functionality. sysinstall works on ia64. We plan on - producing a semi-respectable boot/install cdrom image shortly.

- -
- - - GCC 3.1 - - - - - David - O'Brien - - obrien@FreeBSD.org - - - - -

As of Thur May 9th, 2002 FreeBSD 5-CURRENT is now using a GCC 3.1 - prerelease snapshot as the system C compiler. At this time of - cutting over, the compiler is working well on i386, Alpha, Sparc64, - and IA-64 for building world. There is a known problem with our - atomic ops on Alpha that prevents a GCC 3.1 built kernel from - booting.

- -

Currently the C++ support libraries (libstdc++, et.al.) does not - build and thus prevents the system C++ compiler from being used.

- -
- - - Release Engineering - - - - - Release Engineering - - - re@FreeBSD.org - - - - - - - - -

The release engineering team released FreeBSD 5.0-DP1 - on 8 April 2002. This Developer Preview gives developers and - other interested parties a chance to help test some of the new - features to appear in 5.0-RELEASE. This distribution has known - bugs and areas of instability, and should only be used for - (non-production) testing and development.

- -

The next releases of FreeBSD will be 4.6-RELEASE (scheduled for - 1 June 2002) and 5.0-DP2 (scheduled for 25 June 2002). - Information on the release schedules and more can be found on - the team's new area on the FreeBSD Web site (see the URL - above).

- -

Finally, the team has gained two new members: Brian Somers and - Bruce A. Mah.

- - -
- - - ppp RADIUS/MS-CHAP support - - - - - Brian - - Somers - - - brian@FreeBSD.org - - - - -

libradius now supports RADIUS vendor attribute extensions and - user-ppp is now capable of doing MS-CHAP authentication via a RADIUS - server. A new net/freeradius port has been created for support of - MS-CHAP in a RADIUS server.

- -

MS-CHAPv2 support will be added soon.

- -

The work is sponsored by Monzoon.

- -
- - - Improving FreeBSD Startup Scripts - - - - - Doug - Barton - - dougb@FreeBSD.org - - - - - - - Mike - Makonnen - - makonnen@pacbell.net - - - - - - - Gordon - Tetlow - - gordont@gnf.org - - - - - - - - - - - -

Mike Makonnen has done quite a bit of excellent work on porting the - scripts from FreeBSD into the NetBSD framework. The next step seems - to be to try to reduce the amount of diffs between our implementation - and the original set from NetBSD.

- -
- - - SMPng - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - smp@FreeBSD.org - - - - - - - - -

The SMPng project has been picking up steam in the last few - months thankfully. In February, Seigo Tanimura-san committed - the first round of process group and session locking. Alfred - Perlstein also added locking to most of the pipe - implementation. In March, Alfred fixed several problems with - the locking for select() and pushed down Giant some in several - system calls. Andrew Reiter added locking for kernel module - metadata, and Jeff Roberson wrote a new SMP-friendly slab - allocator to replace both the zone allocator and the in-kernel - malloc(). The use of the critical section API was cleaned up - to not be abused as replacements for disabling and enabling - interrupts. Also, Matt Dillon optimized the MD portion of the - critical section code on the i386 architecture. Several other - subsystems were also locked in April as well. See the SMPng - website and todo list for more details.

- -

Some of the current works in progress include locking for the - kernel linker by Andrew Reiter and light-weight interrupt - threads for the i386 by Bosko Milekic. Seigo Tanimura-san, - Alfred Perlstein, and Jeffrey Hsu are also working on locking - down various pieces of the networking stack. Alan Cox has - started working on fixing the existing locking in the VM - subsystem and moving bits of it out from under Giant. John - Baldwin has written an implementation of turnstiles as well as - adaptive mutexes in the jhb_lock Perforce branch. The - adaptive mutexes appear to be stable on i386, alpha, and - sparc64, but the turnstile code still contains several tricky - lock order reversals. John also plans to commit the - p_canfoo() API change to use td_ucred in the very near future - and then finish the task of making ktrace(4) use a worker - thread.

- -
- - - New mount(2) API - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - Maxime - - Henrion - - - mux@FreeBSD.org - - - - -

The patch for the new mount API has now been committed to the - tree. Several filesystems also have been converted to this - new mount API, namely procfs, linprocfs, fdescfs and devfs. - I'm working on converting more filesystems to nmount, and - actually already have UFS done. It has not been committed yet - to avoid conflicting with the UFS2 work, but it should hit the - tree soon. Manpages are still missing at the moment because - I had to modify the API slightly. I hope to have them done - soon now.

- -
- - - FreeBSD Developer Summit - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - - - - - -

The second FreeBSD Developer Summit, held following the BSD - Conference in San Francisco in February, was a great success. Around - 40 developers attended in person, another five by phone, and many - others by webcast. During a marathon-esque eight hour session, a - variety of development topics were discussed, including adding - inheritance to the KOBJ system, ports to new architectures, - adaptations of the toolchain for new architectures, the GEOM - extensible storage device framework, upcoming changes to the network - stack, TrustedBSD features, KSE, SMPng, and the release engineering - schedule. This event was sponsored by DARPA and NAI Labs, with - webcasting provided by Joe Karthauser, bandwidth provided by Yahoo!. - Planning for future such events is now underway; a summary/transcript - of discussion may be found at the URL above.

- -
-
diff --git a/en/news/status/report-2002-05-2002-06.xml b/en/news/status/report-2002-05-2002-06.xml deleted file mode 100644 index 76b3ac3160..0000000000 --- a/en/news/status/report-2002-05-2002-06.xml +++ /dev/null @@ -1,1450 +0,0 @@ - - - - - - - - May - June - 2002 - - -
- Introduction - -

May and June were remarkably busy months for the FreeBSD Project-- - FreeBSD developers met in Monterey, CA in June for FreeBSD - Developer Summit III to discuss strategy for the FreeBSD 5.0 - release later this year, for the USENIX Annual Technical - conference and for the FreeBSD BoF. Substantial technical progress - was made on FreeBSD 5.0, and FreeBSD 4.6-RELEASE was cut on the - RELENG_4 branch in June.

-

The remainder of the summer will continue to be busy. Final - components and features for 5.0-RELEASE will go into the tree, - and the development direction will change from new features - to stability, performance, and production-readiness. With - additional 5.0 development previews late in the summer, we - hope to broaden the tester base for the -CURRENT branch, - and start to get early adopters digging out any potential - problems in their test environments. I encourage both FreeBSD - Developers and FreeBSD Users to give 5.0-DP2 a spin (on a machine - without critical data!) and let us know how it goes. The more - testing that happens before the release, the less fixing we have - to do afterwards!

-

Robert Watson

- -
- - - TCP Hostcache - - - - Andre - Oppermann - - oppermann@pipeline.ch - - - -

The current cache for the TCP metrics is embedded directly into - the routing table route objects. This is highly inefficient as every - route has an empty 56 Byte large metrics structure in it. TCP is the - only consumer (except the MTU and Expiry field) of the structure. A - full view of the Internet routes (110k routes) has more than 6 Mbyte - of unused overhead due to it. The hit rate today is at only approx. - 10% in webserver applications. The TCP hostcache will move this entire - metrics structure from the routing table to the TCP stack. Every entry - is a host entry so a simple hash table is sufficient to keep the - entries. Its implementation is much like the TCP Syncache.

-

The hostcache is going through testing on our servers and will - be ready for committing in September. The results of the TCP metrics - measurement will be used to tune the cache.

- -
- - - IP Routing Table Replacement - - - - Andre - Oppermann - - oppermann@pipeline.ch - - - - Claudio - Jeker - - jeker@n-r-g.com - - - -

The current Patricia Trie routing table in BSD UNIX is not very - efficient and wastes an enormous amount of space for every node (more - than 256 bytes) (A full Internet view of 110k routes takes 33 MByte - of KVM). Another problem are pointers from and to everywhere - in the routing table. This makes replacing the table very hard and - also significantly increases the table maintenance burden (for example - for some kinds of updates the entire PCB has to be searched linearly). - Also this is a heavy burden for SMP locking. The rewrite focuses on - untangling the pointer mess, making the routing table replaceable - and providing a more IP optimized table (5 MByte for 110k routes). - Other new options include policy routing and some structural alignments - in the network stack for clarity, simplicity and flexibility.

-

The rewritten IP routing table will be ready for committing in - October.

- -
- - - TCP Metrics Measurement - - - - Andre - Oppermann - - oppermann@pipeline.ch - - - - Olivier - Mueller - - omueller@8304.ch - - - - - Diploma Thesis of ZHWIN students, look for Olivier Mueller and Daniel -Graf - - -

These students will analyse the tcpdumps of five major Swiss - newspaper websites which give a representative overview of the - user structure in Switzerland. The nice thing about Switzerland - is that is has a very good mix of Modem/ISDN, leased line, Cable, - ADSL and 3G/GSM/GPRS users. Every Internet access technology is - represented. The goal is to analyze the behavior of all TCP - sessions to the monitored sites. Parameters to be analyzed include - TCP session RTT, RTT variance, in/outbound BDP, MSS changes, flow - control behavior, packet loss, packet retransmit and - timing of HTTP traffic to find optimal TCP parameter caching -method.

-

If you have any other metrics you think is useful please contact - me so I can put that into the job description for the Students. The - study will be made in September and October.

- -
- - - NATD rewrite - - - - Claudio - Jeker - - jeker@n-r-g.com - - - - Andre - Oppermann - - oppermann@pipeline.ch - - - -

The current natd is pretty powerful in translating different kinds - of traffic but not very powerful in configuration. This project - rewrites natd and parts of libalias to give it a configuration set as - powerful and expressive as the ones in ipf (ipnat) and pf. In addition - it'll use kqueue and will support aliasing to multiple IP -addresses.

-

The rewritten natd will be ready for committing in early -September.

- -
- - - FreeBSD/ia64 - - - - - Peter - Wemm - - peter@FreeBSD.org - - - - - IA64 project - updates and information. - - - -

IA64 has been progressing slowly. We have access to a prototype - 4-way Itaninum2 system from Intel and have managed to get it up and - running to the point of being able to access disk and network with - SMP enabled. We have a big problem with ACPI2.0 and PCI routing - table entries behind pci-pci bridges with no short-term solution - in sight. Various WIP items have been committed to CVS, namely - more complete support for executing 32bit i386 binaries as well - as Marcel Moolenaar's prototype EFI GPT tools.

- -
- - - Libh Status Report - - - - - Antoine - - Beaupre - - - antoine@usw4.FreeBSD.org - - - - - - - Alexander - - Langer - - - alex@FreeBSD.org - - - - - - - Nathan - - Ahlstrom - - - nra@FreeBSD.org - - - - - - libh - new development web page. - - First snapshots of the diskeditor in action - - - -

Max has been busy cleaning up the user interface dark side, and has - come up with a plan to improve the build system (using an automated - Makefile dependency generator); the UI design and the TCL glue magic - (using Swig). A development page has been created on usw4, publishing - a lot of information about the current project status, a Changelog, - screenshots, documentation, etc. A new listbox widget has been - implemented, making diskeditor look nicer and more usable. The package - system backend is being inspected and redesigned to conform to a standard - that is itself being re-thought. Indeed, the old sysinstall2.txt text has - been SGML-ized and enhanced and now provides a good (although rough) overview - of libh package system. This allowed the document to be enhanced with diagrams - of how different procedures work. We are therefore getting closer to a - real pkgAPI specification document. The package management tools have been - slightly enhanced and should be a bit more usable, and we started committing - regression test suites in the tree, mostly to test and maintain pkg API - conformance.

- -

So work continues on libh. I plan to take a look at the rhtvision port - to see if it would be better to use it for the tvision backend. I'll keep - on working on the package system to make it really trustworthy, while Max - is continuing his great work on the UI subsystem. I hope to make a new libh - alpha release soon. Note that from now on, libh progress will be published - on the development page.

- -
- - - OLDCARD - - - - - Warner - Losh - - imp@FreeBSD.org - - - - -

A major power bug was fixed in oldcard. This caused many -problems for people using PCI interrupts having their machines hang on -boot. This fix has made it into 4.6.1.

- -

Cardbus power is now used on all cardbus bridges that support -it. This means that we now support 3.3V cards on all cardbus -bridges. Before, we only supported them on some of the bridges -because every bridge uses different 3.3V power control when programmed -through the ExCA registers. Now that we're going through the CardBus -bridge's power control register, 3.3V cards work. In fact, for -CardBus bridges, the so called X.XV and Y.YV cards will work in those -bridges that support them. However, X.XV and Y.YV haven't been -defined yet, and no bridges support them (but the bridge interface -define it). Obviously this latter part is untested.

- -

CL-PD6722 support has been augmented slightly. Now it is -possible to instruct the driver which type of 3.3V card detection -strategy to use. There are three choices: none, do it like the -CL-PD6710 does it and do it like the CL-PD6722 does it.

- -

Preliminary support for the CL-PD6729 on a PCI card using PCI -interrupts has been committed. However, it fails for at least one of -the cards like this the author has.

- -

Client drivers can now ask for the manufacturer and model -number of the card without parsing the CIS directly.

- -

Except for fixing bugs and updating pccard.conf entries, no -additional work is planned on the OLDCARD system.

- -
- - - NEWCARD - - - - - Warner - Losh - - imp@FreeBSD.org - - - - -

A devd daemon, to replace pccardd and usbd, has been designed. -A few minor bugs have been fixed in NEWCARD. NEWCARD is now the -default in -current. There is an experimental pci/cardbus bus code -merge available as a branch which will be merged into current as soon -as it is stable.

- -

Status: The ed driver, for non-ne2000 clones, is broken and won't -probe. The ata driver won't attach. The sio driver hangs on the -first character. The wi driver is known to work well. Cardbus cards -are generally known to work well, except for some de based cards, -which unfortunately includes the popular Xircom cards. Many systems -fail to work because acpi fails to route interrupts correctly for -non-root pci bridges.

- -
- - - FreeBSD GNOME Project - - - - - Joe - - Marcus - - - marcus@FreeBSD.org - - - - Maxim - - Sobolev - - - sobomax@FreeBSD.org - - - - - - - FreeBSD GNOME Project - Homepage. - - - - -

Things are going well with the FreeBSD GNOME Project. We have just - finished porting the GNOME 2.0 Final development platform and desktop - to FreeBSD! We hope to be able to make GNOME 2.0 the default for - 5.0-DP2 and 4.7-RELEASE. In the meantime, we're working to port more - GNOME 2.0 applications.

- -

In order to allow GNOME 1.4.1 applications to work with GNOME 2.0, - we are revamping the GNOME porting infrastructure. GNOME 1.4.1 based - ports are being converted to use the new GNOMENG porting structure. - The specifics of this new system will be written up in the GNOME - porting guide found on the FreeBSD GNOME project homepage.

- - -
- - - FreeBSD Java Project - - - - - Greg - Lewis - - - glewis@FreeBSD.org - - - - - - FreeBSD Java Project - - - -

- The BSD Java Porting Team has been making slow but steady progress - on a number of fronts in the last few months. Unfortunately most - of this has occurred behind the scenes, meaning this is a good - opportunity to bring the community up to date. -

    -
  • Bill Huey has gotten the Java HotSpot Virtual Machine up and - running on FreeBSD! While dubbing the code of alpha quality, - Bill has been working hard and is able to run major examples - such as the Java 2D demo. This code has hit the repository - and will soon be available.
  • -
  • The port of the 1.4 J2SDK has commenced. The first commits - have gone into the tree, although a first patchset is a - way off yet.
  • -
  • Progress continues with the TCK compliance testing. The - current status has the JDK down to 19 compiler failures - and 183 runtime failures. As we edge closer to compliance - its hoped that example code will be released to allow the - community to pull together through the final few bugs.
  • -
  • A new patchset for JDK 1.3.1 is imminent. This patchset - will include HotSpot for the first time.
  • -
-

- -
- - KAME Project - - - - - SUZUKI - - Shinsuke - - - core@kame.net - - - - - KAME Project Web Page - IPv6 Showcase at Network+Interop2002 - IPv6 Showcase at Network+Interop2002 (detailed, but in Japanase) - Pictures of IPv6 Showcase - - - -

I'm afraid KAME Project does not work actively with regard to FreeBSD in these two month, since - we are too busy with the demonstration of our IPv6 implementation at Networld+Interop 2002 Tokyo. - (Thanks to a great effort, the demonstration was quite successful)

- -

We are aware of netinet6-related bug reports regarding socket handling, fine-grain locking, ip6fw etc. - Regret to say, we could not answer them right now due to the above situation, however we'll discus - these issues internally and determine what to do.

- -
- - - BSDCon 2003 - - - - - Gregory - Shapiro - - gshapiro@FreeBSD.org - - - - - Call for papers - - - -

The BSDCon 2003 Program Committee invites you to contribute original -and innovative papers on topics related to BSD-derived systems and -the Open Source world. Topics of interest include but are not limited -to: -

-
    -
  • Embedded BSD application development and deployment
  • -
  • Real world experiences using BSD systems
  • -
  • Using BSD in a mixed OS environment
  • -
  • Comparison with non-BSD operating systems; technical, - practical, licensing (GPL vs. BSD)
  • -
  • Tracking open source development on non-BSD systems
  • -
  • BSD on the desktop
  • -
  • I/O subsystem and device driver development
  • -
  • SMP and kernel threads
  • -
  • Kernel enhancements
  • -
  • Internet and networking services
  • -
  • Security
  • -
  • Performance analysis and tuning
  • -
  • System administration
  • -
  • Future of BSD
  • -
-

Submissions in the form of extended abstracts are due by April 1, 2003. -Be sure to review the extended abstract expectations before submitting. -Selection will be based on the quality of the written submission and -whether the work is of interest to the community.

-

We look forward to receiving your submissions!

- -
- - - - FreeBSD Release Engineering - - - - re@FreeBSD.org - - - - - - - - - -

Over the past few months the FreeBSD Release Engineering Team - oversaw a release process that culminated in the release of - FreeBSD 4.6 for the i386 and Alpha architectures on June 15. - The RE team is currently working concurrently on FreeBSD 4.6.1 - and 5.0 DP2. 4.6.1 is a minor point release with an updated SSH - and BIND, fixes for some of the reported ata(4) problems, and - assorted security enhancements that will be detailed in the - release notes. The release engineering activities for 4.6.1 are - taking place on the RELENG_4_6 branch in CVS, while the work on - 5.0 DP2 is taking place in Perforce so as not to disturb ongoing - -CURRENT development. We are still committed to FreeBSD 5.0 on - or around November 15, 2002. For more information about - upcoming release schedules, please see our website above. The - RE team would like to thank Sentex Communications for providing - the release builders with access to a fast i386 build machine. - Compaq also donated a couple of fast Alpha build machines to the - project.

- - -
- - - Fast IPSEC Status - - - - Sam - Leffler - - sam@FreeBSD.org - - - -

The main goal of this project is to modify the IPSEC protocols to use -the kernel-level crypto subsystem imported from OpenBSD (see elsewhere). A -secondary goal is to do general performance tuning of the IPSEC -protocols.

-

Basic functionality is operational for IPv4 protocols. IPv6 support is -coded but not yet tested. Hardware assisted cryptographic operations are -working with good performance improvements. Operation with software-based -cryptographic calculations appears to be at least as good as the existing -implementation. Numerous opportunities for performance improvements have -been identified.

-

This work is currently being done in the -stable tree. A port to -the -current tree is about to start.

- -
- - - FreeBSD C99 & POSIX Conformance Project - - - - - Mike - - Barcroft - - - mike@FreeBSD.org - - - - FreeBSD-Standards Mailing List - - - standards@FreeBSD.org - - - - - - - - -

Since the last status report, the following utilities have been - brought up to conformance (at least to some degree) with POSIX.1-2001, - they include: asa(1), cd(1), compress(1), ctags(1), ls(1), newgrp(1), - nice(1), od(1), pathchk(1), renice(1), tabs(1), tr(1), uniq(1), wc(1), - and who(1). In addition, development is taking place on bringing the - BSD SCCS suite up to date with newer standards.

- -

On the API front, printf(9) has been given support for the `j' and - 'n' flags, waitpid(2) now supports the WCONTINUED option, and an - implementation of fstatvfs() and statvfs() has been committed. An - implementation of utmpx is in progress, which has an aim to address - some of the major problems with the current utmp. Several headers - have been brought up to conformance with POSIX.1-2001, they include: - <netinet/in.h>, <pwd.h>, <sys/statvfs.h>, and - <sys/wait.h>.

- -
- - - Hardware Crypto Support Status - - - - Sam - Leffler - - sam@FreeBSD.org - - - -

The goal of this project is to import the OpenBSD kernel-level crypto -subsystem. This facility provides kernel- and user-level access to hardware -crypto devices for the calculation of cryptographic hashes, ciphers, and -public key operations. The main clients of this facility are the kernel RNG -(/dev/random), network protocols (e.g. IPSEC), and OpenSSL (through the -/dev/crypto device).

-

The software has been available as a patch against the -stable tree for -about six months. The core crypto support is tested, including device -drivers for the Hifn 7951, and Broadcom 5805, 5820, and 5821 parts. Recent -work has concentrated on fixing device driver bugs, fixing support for Hifn -7811 parts, adding support for public key operations, and adding -flow-control between the crypto layer and device drivers. Future work -includes porting this facility to the -current tree.

- -
- - - KSE (Kernel schedulable Entity) thread support - - - - - Julian - - Elischer - - - julian@FreeBSD.org - - - - Dan - - Eischen - - - deischen@FreeBSD.org - - - - - - Some info - here. - - - - -

- The project took a major step at the beginning of July when - Milestone-III was committed. Milestone-III allows a simple test - program (available at /usr/src/tools/KSE/ksetest/) - to run multiple threads, using kernel support. It does not yet - allow the ability to allow these threads to run on different CPUs - simultaneously. Milestone IV will be to allow this, however - Milestone-III should allow Dan to start (with any interested - parties) to start prototyping the userland part of the - system. Milestone-III is only currently usable on x86, and - does not include some of the - requirements for full thread-control, suspension etc. that - will be required later.

-

- Before M-IV is started some small tweaking is likely - in the central sources on M-III as we discover issues - as we try to get the userland jumpstarted. These will have no - effect on non-KSE processes, (i.e. all of them :-) and - should not be an issue for other developers.

-

- A tex/fig->html guru is needed to help maintain the - KSE web page (not mentioned above as it is broken). -

- -
- - - - SMPng Status Report - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - smp@FreeBSD.org - - - - - - - - -

The SMPng project has continued to make steady progress in - the past two months. Jeff Roberson completed the switch over - to UMA for the general kernel malloc() and free() pushing down - Giant appropriately so that callers of malloc() and free() are - no longer required to hold Giant. Alan Cox continues to clean - up the locking in the VM system pushing down Giant in several - of the VM related system calls. Jeffrey Hsu committed locking - for TCP/IP protocol control blocks in the network stack. John - Baldwin committed the changes to the p_canfoo() API to use - thread credentials for subject threads and added appropriate - locking for the targer process credentials. Support for - adaptive mutexes on SMP systems as well as the new IA32 PAUSE - instruction were also committed in May. The kernel tracing - facility KTRACE also received an overhaul such that the - majority of its work was pushed out into a worker thread - allowing trace points to no longer require Giant. Andrew - Reiter has also been pushing down Giant in several system - calls.

- -

Bosko continues to work on light-weight interrupt threads - for i386. Most of the bugs in the turnstile code have been - found and fixed; however, the turnstile and preemption - patches have temporarily been put on hold so that more - emphasis can be placed on fixing bugs and making -current - more stable in preparation for 5.0 release in November. - Alan Cox and Andrew Reiter are continuing the work mentioned - above. Jeff Roberson is also working on fixing the current - vnode locking in VFS. Peter Wemm has also started to tackle - TLB issues on SMP in the i386 pmap again as well.

- -
- - - FreeBSD Security Officer Team - - - - - Jacques - - Vidrine - - - nectar@FreeBSD.org - - - - - - - - - -

After an outstanding job serving the project as Security Officer - for over a year, Kris stepped down in January in order to focus more - of his time pursuing his PhD. I offered to attempt to fill the vacant - role.

- -

This is the first report by the SO Team. Notable events since - the beginning of 2002 follow.

- -

28 FreeBSD Security Advisories have been issued, 16 of which - were regarding the base system. Of those sixteen, 8 affected only - FreeBSD.

- -

FreeBSD Security Notices were introduced, and four have been - issued so far. The Security Notices cover issues that are not - regarded as critical enough to warrant a Security Advisory. So far - only Ports Collection issues (i.e. vulnerabilities in optional 3rd - party packages) have been reported in Security Notices. The first - four Security Notices covered 53 individual issues.

- -

Issues reported to the SO team are now being tracked using a - RequestTracker ticket database.

- -

The SO team has undergone membership changes, as well as some - changes in internal organization. The membership and organization - has also been made publicly visible on the FreeBSD Security Officer - web page.

- - -
- - - jpman project - - - - - Kazuo - Horikawa - - - horikawa@FreeBSD.org - - - - - jpman project - - - -

For 4.6-RELEASE, we announced the package ja-man-doc-4.6.tgz - which is in sync with 4.6-RELEASE base system manual pages - except for perl5 pages (jpman project do not maintain them). - Continuing section 3 updating has 88% finished.

- -
- - - FreeBSD/KGI Status Report - - - - - Nicholas - - Souchu - - - nsouch@FreeBSD.org - - - - - Project URL - - - -

Progression is slow, but the effort is maintained. Most of fb over KGI has been - written in parallel with a KGI display driver based on fb. - DDC/DDC2 is being discussed for Plug & Play monitor support. KGI aims at providing - a generic OS independent interface which would take advantage of FreeBSD I2C (iic(4)) - infrastructure. -

- - -
- - - UFS2 - Extended attribute and large size support for UFS - - - - - Poul-Henning - Kamp - - - phk@FreeBSD.org - - - - Kirk - Mckusick - - - mckusick@FreeBSD.org - - - - -

- UFS2 is an extension to the well-known UFS filesystem which - using a new inode format adds support for "64bit everywhere" - and later for extended attribute support, in addition to the - current UFS features: soft-updates and snapshots. -

-

- The basic UFS2 code has been committed and work on the extended - attribute interface and vnode operations will continue. -

- - -
- - - GEOM - generalized block storage manipulation - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - - Old concept paper here. - - - - -

- The GEOM code has gotten so far that it beats our current code - in some areas while still lacking in others. The goal is for - GEOM to be the default in 5.0-RELEASE. -

-

- Currently work on a cryptographic module which should be able - to protect a diskpartition from practically any sort of attack - is progressing. -

- - -
- - - OpenOffice.org for FreeBSD - - - - - Martin - Blapp - - - mbr@FreeBSD.org - - - - - OpenOffice.org FreeBSD port Homepage - - - -

The port of openoffice 1.0 has been finished. Most showstopper issues - with rtld, libc and our toolchain have been fixed. There is one remaining - deadlock in the web-browser code of OO.org. If anybody like to help - us with fixing this bug (may be another libc_r bug as it looks like) - just mail me! Unfortunately gcc2 support got broken again with the import - of gcc2.95.4 in STABLE. Exceptions support seems to be broken again; we get - internal compiler errors with c++ exceptions code. You'll have to use gcc31 - again.

- -

Since our package cluster is outdated and can not build OO.org packages - anytime soon, I did my own little package cluster and can now offer - packages for 4.6R for 16 different languages. They can be found on the - project homepage.

- -

Porting of OpenOffice1.0.1 is on it's way. A beta port and a package have - been made available on the project homepage.

- - -
- - - Lightweight Interrupt Scheduling - - - - - Bosko - Milekic - - bmilekic@FreeBSD.org - - - - - - The interrupt p4 branch - - - -

The lightweight interrupt scheduling code makes scheduling an - interrupt on i386 without having to grab the sched_lock possible, - and also avoids a full-blown context switch.

- -

Currently, the code in the p4 branch works, although needs a - little bit of cleanup and, most importantly, requires a merge to - post-KSE III. Now that stuff seems to have stabilized a bit, I'm - waiting to get a little time (and nerve) to do the merge. Also, - looking forward for some KSE interface that will allow for "KSE - borrowing," which would make this cleaner with regards to KSE and - lightweight interrupts. This is a 5.0 feature.

- -
- - - TIRPC port for BSD sockets - - - - - Martin - Blapp - - - mbr@FreeBSD.org - - - - - - TIRPC for FreeBSD Homepage - - - - - - -

- A lot of remaining PR's and Bugs have been closed. All relevant rpc - concerning patches have been committed. Thanks go to Alfred and Ian Dowese. -

-

Jean-Luc Richier <Jean-Luc.Richier@imag.fr> has made a patch - available which adds IPv6 support to all remaining rpc servers. - See ftp://ftp.imag.fr/pub/ipv6/NFS/NFS_IPV6_FreeBSD5.0.gz and - ftp://ftp.imag.fr/pub/ipv6/NFS/0README_NFS_IPV6_FreeBSD5.0 - We will check his code and add it to CURRENT ASAP.

- -

A first commit part from TIRPC99 has been done. I'm working now - on porting the remaining parts so when FreeBSD 5.0 gets released, - it will be TIRPC99 based. This will happen together with the NetBSD - project, as they use the same codebase as we do. -

- - -
- - - mb_alloc updates - - - - - Bosko - Milekic - - bmilekic@FreeBSD.org - - - - - Some - [Old] mb_alloc stuff - - - -

mb_alloc is getting some updates and a couple of optimizations. - A new allocator interface routine should already be committed by - the time this report is "published:" m_getcl() allocates an mbuf - and a cluster in one shot. This is the result of months - (literally) of requests from Alfred and, recently, Luigi - who, - coincidentally, is the author of the same [upcoming] routine in -STABLE.

- -

Other than that, mb_alloc is being shown how to perform - multi-mbuf or cluster allocations without dropping the cache lock in - between (m_getcl() and m_getm() will use this). Finally, work is - being done to optimize ext_buf ref. count allocations and to provide - support for jumbo (> 9K) clusters.

- -
- - - Improving FreeBSD Startup Scripts - - - - - Doug - Barton - - DougB@FreeBSD.org - - - - - - Mike - Makonnen - - makonnen@pacbell.net - - - - - - Gordon - Tetlow - - gordont@FreeBSD.org - - - - - - The Yahoo! group site for discussion of this project - - - - -

We are making excellent progress. There is a fully functioning - implementation imported to -current now. We need as many people as - possible to rc_ng equal to YES in /etc/rc.conf.

-

The next step is to set the default to YES, which we plan to do - before DP 2.

- -
- - - ipfw2 - - - - - Luigi - - Rizzo - - - luigi@FreeBSD.org - - - - - - - - -

In summer 2002 the native FreeBSD firewall has been completely - rewritten in a form that uses BPF-like instructions - to perform packet matching in a more effective way. The external - user interface is completely backward compatible, though you can - make use of some newer - match patterns (e.g. to handle sparse sets of IP addresses) which - can dramatically simplify the writing of ruleset (and speed up - their processing). - The new firewall, called ipfw2, is much faster and easier to - extend than the old one. It has been already included in - FreeBSD-CURRENT, and patches for FreeBSD-STABLE are available - from the author. -

- - -
- - - jp.FreeBSD.org daily SNAPSHOTs project - - - - Makoto - Matsushita - - matusita@jp.FreeBSD.org - - - - Project Webpage - Project Webpage (in Japanese -) - SNAPSHOTs anonftp area on the web - Release branch snapshots for FreeBSD/i386 - - -

- I spent busy days in last two months, many new topics are emerged - from the project. We now support FreeBSD/alpha 5-current - distribution by cross-compiling on the x86 PC. Anonymous ftp area - is now exported to the yet another web server. Our release branch - snapshots are relocated to daemon.jp.FreeBSD.org because of our - CPU/network bandwidth problem. -

-

- I'm seriously considering to solve the lack of CPU and network - resources for the project's future evolution. Maybe the bandwidth - problem can be resolved (several bandwidth offers have been received!), - but there is no answer about CPU problems (I have a plan to upgrade - our PCs from P3-500MHz to P4 or better). - If you have interested in donating PCs to the project, please email me - for more detail. -

- -
- - - Userland Regression Tests - - - - - Juli - - Mallett - - - jmallett@FreeBSD.org - - - - -

Regression tests for many bugs fixed in text manipulation utilities - have been added, as well as tests for various non-standard versions - of functionality that FreeBSD users should expect. A library of - m4 macros for creating the tests themselves has been added.

- -
- - - Single UNIX Specification conformant SCCS suite - - - - - Juli - - Mallett - - - jmallett@FreeBSD.org - - - - -

The final version of SCCS distributed by CSRG has been integrated - into the projects CVS repository, and worked on extensively to the - point where essential functionality works on FreeBSD (and other - operating systems). Some standards-related functionality has been - implemented

- -
- - - Zero Copy Sockets status report - - - - - Ken - - Merry - - - ken@FreeBSD.org - - - - - - Zero copy patches - and information. - - - -

The zero copy sockets code was committed to FreeBSD-current on June - 25th, 2002. I'm not planning on doing any more patches, although - I will leave the web page up as it contains useful information.

-

- Many thanks to the folks who have tested and reviewed the code over - the years.

- -
- - - locking up pcb's in the networking stack - - - - - Jeffrey - - Hsu - - - hsu@FreeBSD.org - - - - - - - - - -

Jennifer Yang's patch was committed June 10 for the BSD Summit. - After a few bugs which were reported initially and - fixed that same week, networking in -current - has been stable, including the parts that were not locked up, - like IPv6. Work is on-going to lock up the rest of the stack.

- -
- - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - Maksim - Yevmenkin - - - m_evmenkin@yahoo.com - - - - - - - - -

-Not much to report. Another engineering snapshot is available -for download at -http://www.geocities.com/m_evmenkin/ngbt-fbsd-20020709.tar.gz. -If anyone has Bluetooth hardware and spare time please join in and help -me -with testing. -

- -

-This snapshot includes basic support for USB devices and manual pages. -The HCI layer now has support for multiple control hooks. All HCI -transport -drivers (H4, BT3C and UBT) has been changed to provide consistent -interface -to the rest of the world. Some userspace utilities have been changed as -well. -

- -

-Still no support for RFCOMM (Serial port emulation over Bluetooth link) -and -SDP (Service Discovery Protocol). Several design flaws have been -discovered -and it might take some time to resolve these issues. -

- -
- - - TrustedBSD MAC - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - TrustedBSD Discussion Mailing List - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD main web page - - - -

The TrustedBSD Project has been busy in May and June, - developing new features, presenting on the technology at - the FreeBSD Developer Summit, and improving the readiness - of the MAC branch for integration into the main FreeBSD - tree. The migration to dynamic labeling in the TrustedBSD - MAC framework is complete, with all policies now making - use of dynamic labels in the kernel. This permits policies - to associate arbitrary additional security data with a - variety of kernel objects at run-time. Implement mac_test, - a sanity checking module. Pass labels as well as objects - to each policy entry point to reduce knowledge of label - storage in the policies. Implement mac_partition, a simple - jail-like policy. Adapt the MAC framework for process locking. -

- -

- Improve support for sockets: provide a peerlabel maintained for - stream sockets (unix domain, tcp), entry points for accept, - bind, connect, listen. Improve support for IPv4 and IPv6 by - labeling IP fragment reassembly queues, and providing entry - points to instrument fragment matching, update, reassembly, etc. - Locally disable KAME if_loop mbuf contiguity hack because it - drops labels on mbufs: we need to make sure the label is - propagated. Label pipes and provide access control for them. - Improve vnode labeling: now handle labeling for devfs, pseudofs, - procfs. Fix interactions between MAC and ACLs relating to the - new VAPPEND flag.

- -

SELinux policy tools now ported to SEBSD. SEBSD now labels - subjects and file system objects. - Provide ugidfw, a tool for managing rules for the mac_bsdextended - policy.

- -

Massive diff reduction. KSEIII merged. Main tree integration - will begin shortly.

- -

Updated prototype code may be retrieved from the TrustedBSD - CVS trees on cvsup10.FreeBSD.org.

- -
-
diff --git a/en/news/status/report-2002-07-2002-08.xml b/en/news/status/report-2002-07-2002-08.xml deleted file mode 100644 index 65e6de8c52..0000000000 --- a/en/news/status/report-2002-07-2002-08.xml +++ /dev/null @@ -1,1061 +0,0 @@ - - - - - - - - July - August - 2002 - - -
- Introduction - -

Throughout July and August, the FreeBSD Project has been working on - pulling together the last few major pieces of new functionality for - FreeBSD 5.0-RELEASE. At this point, the release appears to be on track - for late November or early December. Work on fine-grained locking - continues, especially in the VFS, as with improved support for threading - through the KSE work; features such as GEOM, UFS2, and TrustedBSD MAC are - maturing, and the new ia64 and sparc64 hardware ports are approaching - production quality. In the next two months, we have a lot to look forward - to: additional 5.0 developer preview snapshots, additional locking and - threading improvements, and many cleanups on the new supported - architectures. Firewire support has been imported into the main tree, and - substantial cleanup of the ACPI/legacy PCI code is also in the works. - Also, expect the import of new IPsec hardware acceleration support in the - near future.

-

When new developer previews are posted, please give them a try! While we - know that 5.0-RELEASE will be for "early adopters", the more testing we - get out of the way now, the less we have to tidy up later. The new - features are extremely exciting, and understanding when and how to deploy - them properly will be important. In the next two months, among other - things, the release engineering team will post updated release schedules, - as well as guidance for FreeBSD consumers as to how to decide what - releases of FreeBSD will be right for them. Keep an eye out for this, and - provide us with feedback.

-

Also, for those of you in Europe -- we look forward to seeing you at - BSDCon Europe in a couple of months!

-

Scott Long, Robert Watson

- -
- - - BSDCon 2003 - - - - - Gregory - Shapiro - - gshapiro@FreeBSD.org - - - - - BSDCon 2003 Call For Papers - - - - -

The BSDCon 2003 Program Committee invites you to contribute - original and innovative papers on topics related to BSD-derived - systems and the Open Source world. Topics of interest include - but are not limited to:

- -
    -
  • Embedded BSD application development and deployment
  • -
  • Real world experiences using BSD systems
  • -
  • Using BSD in a mixed OS environment
  • -
  • Comparison with non-BSD operating systems; technical, - practical, licensing (GPL vs. BSD)
  • -
  • Tracking open source development on non-BSD systems
  • -
  • BSD on the desktop
  • -
  • I/O subsystem and device driver development
  • -
  • SMP and kernel threads
  • -
  • Kernel enhancements
  • -
  • Internet and networking services
  • -
  • Security
  • -
  • Performance analysis and tuning
  • -
  • System administration
  • -
  • Future of BSD
  • -
- -

Submissions in the form of extended abstracts are due by - April 1, 2003. Be sure to review the extended abstract - expectations before submitting. Selection will be based on the - quality of the written submission and whether the work is of - interest to the community.

- -

We look forward to receiving your submissions!

- - -
- - - Network interface cloning and modularity - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - -

Cloning support for ppp(4) and disc(4) interfaces has been - committed. A man page for disc has been created and the disc - devices now appear as disc# instead of ds#. Some work is still - needed on pppd to make it understand cloning though it should work - as long as the devices are created beforehand.

-

On the API front, management of mandatory interfaces (i.e. lo0) - is handled by the generic cloning code so if_clone_destroy has the - same API as NetBSD again and <if>_modevent doesn't need to create - the necessary devices manually.

-

At this point, all pseudo interfaces have been converted to the - cloning API or already did their own cloning (sl(4) for example - uses it's own mechanism). Some devices such as tun(4) and - tap/vmware should probably be converted to use the cloning API - instead of their current ad-hoc, devfs based cloning system. This - would be a good junior kernel hacker task. Also, the handbook and - FAQ could use some general cloning documentation prior to 5.0 - release.

- -
- - - jpman project - - - - - Kazuo - Horikawa - - - horikawa@FreeBSD.org - - - - - jpman project - - - -

We have been updating RELENG_4 targeting for 4.7-RELEASE. - When port ja-man-1.1j_5 was broken around the end of July, - Kumano-san and Mori-san tried to update the port to be based - on a newer FreeBSD base system's man commands. - But, we decided only to fix the port ja-man-1.1j_5 to be buildable, - as the new one was not complete at that time.

- -
- - - GEOM - generalized block storage manipulation - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - Old concept paper here. - - - - -

The GEOM code has gotten so far that it beats our current code - in some areas while still lacking in others. The goal is for - GEOM to be the default in 5.0-RELEASE.

-

Currently work on a cryptographic module which should be able - to protect a diskpartition from practically any sort of attack - is progressing.

- - -
- - - UFS2 - 64bit UFS with native extended attributes - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - Kirk - - McKusick - - - mckusick@FreeBSD.org - - - - -

The UFS2 filesystem approaches feature completion: Extended - attribute functionality have been added, including a new - compound modification API and basic testing has been passed.

- - -
- - - French FreeBSD Documentation Project - - - - Sebastien - Gioria - - - gioria@FreeBSD.org - - - - Marc - Fonvieille - - blackend@FreeBSD.org - - - - Stephane - Legrand - - stephane@FreeBSD-fr.ORG - - - - - The French FreeBSD Documentation Project. - The FreeBSD Web Server translate in French. - Translation of the Hanbook. - - - -

We've got currently almost 50% of the new handbook translated (all the - installation part is translated). Most of the articles are translated - too.

-

The web site in on the way, see the Web Server. We need now to - integrate it on the US CVS tree.

-

One of the big job now, is to translate the latest FAQ and the very - big project will be the manual pages

- -
- - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - - Maksim - - - - Yevmenkin - - - - - m_evmenkin@yahoo.com - - - - - - Latest snapshot - - Linux BlueZ stack - - - -

I'm very pleased to announce that another engineering - release is available for download at - http://www.geocities.com/m_evmenkin/ngbt-fbsd-20020909.tar.gz

-

This release features several major changes and includes - support for H4 UART and H2 USB transport layers, Host - Controller Interface (HCI), Link Layer Control and - Adaptation Protocol (L2CAP) and Bluetooth sockets layer. - It also comes with several user space utilities that - can be used to configure and test Bluetooth devices. - Also there are several man pages.

-

Service Discovery Protocol (SDP) is now supported. This - release includes SDP daemon, configuration tool and user - space library (ported from BlueZ-sdp-0.7).

-

RFCOMM is now supported. This release includes rfcommd - daemon that provides RFCOMM service via pseudo ttys. - Not very useful for legacy application, but it is possible - to run PPP over Bluetooth now. This was ported from old - BlueZ-rfcommd-1.1 (no longer supported by BlueZ) and - still has some bugs in it.

-

Next step is to fix current RFCOMM support and work on - new in-kernel RFCOMM and BNEP (Bluetooth Network - Encapsulation Protocol) implementation. Also user space - need more work (better tools, libraries, documentation - etc.).

- -
- - Netgraph ATM - - - - - Harti - - Brandt - - - brandt@fokus.fhg.de - - - - - Introduction to NgAtm - - - -

Version 1.2 has been released recently. It should compile and work - an any recent FreeBSD-current. Support to manipulate SUNI registers - has been added to the ATM drivers (to switch between SONET and SDH - modes, for example). The ngatmsig package now includes a small and - simple call control module that may be used to build a simple ATM - switch. The netgraph stuff has been patched to use the official - netgraph locking.

- -
- - - FreeBSD C99 & POSIX Conformance Project - - - - - Mike - - Barcroft - - - mike@FreeBSD.org - - - - FreeBSD-Standards Mailing List - - - standards@FreeBSD.org - - - - - - - - -

On the API front, fmtmsg(3) was implemented, glob(3) was given support - for new flags, ulimit(3) was implemented, and wide character/string - support was significantly improved with the addition of 30 new functions - (see the project status board for details). Work is progressing on - adding the C99 restrict type-qualifier to functions throughout the - system. This allows the compiler to make additional optimizations based - on the knowledge that a restrict-qualified argument is the only reference - to a given object (ie. it doesn't overlap with another argument).

-

Several headers have been brought up to conformance with POSIX.1-2001, - they include: <fmtmsg.h>, <poll.h>, <sys/mman.h>, and - <ulimit.h>. The header <cpio.h> was implemented. The - headers <machine/ansi.h> and <machine/types.h> were merged - into a single header to help simplify the way variable types are - created.

-

The sh(1) built-in, command(1), was reimplemented to conform with - POSIX. Additionally, several utilities which were previously brought - up to conformance were merged into the 4-STABLE branch.

- -
- - - FreeBSD GNOME Project - - - - - Joe - - Marcus - - - marcus@FreeBSD.org - - - - Maxim - - Sobolev - - - sobomax@FreeBSD.org - - - - - - FreeBSD GNOME Project - Homepage. - - - - -

The GNOME 2 desktop port has reach version 2.0.2rc1 with an expected - 2.0.2 release before 4.7-RELEASE. Mozilla 1.1 has been ported, - and is resident in the tree with Mozilla 1.0.1. The GNOMENG porting - effort is going well. A good deal of ports have been moved to the - new infrastructure with the help of - Edwin Groothuis. We are now working on - smoothing out some of the rough edges, then, once all the work is done, - make GNOMENG the default.

-

A long-standing annoyance in Nautilus has also been recently - corrected. The desktop is no longer cluttered with volume icons, and - removable media (such as CDs) should now be handled correctly.

- - -
- - ATAPI/CAM Status Report - - - - - Thomas - - Quinot - - - thomas@FreeBSD.org - - - - - - - - -

The ATAPI/CAM module allows ATAPI devices (CD-ROM, CD-RW, DVD - drives, floppy drives such as Iomega Zip, tape drives) to - be accessed through the SCSI subsystem (CAM). ATAPI/CAM has been - integrated in -CURRENT. The code should be fairly functional (it - has been used by many testers as patches against -STABLE and - -CURRENT over the past eight months), but there are pending issues - on SMP machines. Testers most welcome.

-

A MFC of this feature will probably happen after the end - of the 4.7 code freeze.

- -
- - Hardware Crypto Support Status - - - - Sam - Leffler - - sam@FreeBSD.org - - - -

The goal of this project is to import the OpenBSD kernel-level crypto - subsystem. This facility provides kernel- and user-level access to - hardware crypto devices for the calculation of cryptographic hashes, - ciphers, and public key operations. The main clients of this facility - are the kernel RNG (/dev/random), network protocols (e.g. IPSEC), and - OpenSSL (through the /dev/crypto device).

-

OpenSSL 0.9.7 beta 3 was imported and patched with fixes from OpenBSD's - source tree. This permits any user-level application that use -lcrypto to - automatically get hardware crypto acceleration. Otherwise the core crypto - support is stable and has been in production use on -stable machines for - several months.

-

Import of this work into the -current tree has started. A publicly - available patch against 4.7 will be released once 4.7 ships. Integration - of this work into the -stable source tree is planned for 4.8.

- -
- - - Fast IPsec Status - - - - Sam - Leffler - - sam@FreeBSD.org - - - -

The main goal of this project is to modify the IPsec protocols to use - the kernel-level crypto subsystem imported from OpenBSD (see elsewhere). A - secondary goal is to do general performance tuning of the IPsec - protocols.

-

Recent work focused on increasing performance. Support is still limited - to IPv4 protocols, with IPv6 support coded but not yet tested.

-

Import of this work into the -current tree has started. A publicly - available patch against 4.7 will be released once 4.7 ships.

- -
- - - VM issues in -stable - - - - - Matthew - - Dillon - - - dillon@FreeBSD.org - - - - - - VM corruption patch for -stable. - - - -

Work is in progress to MFC a number of bug fixes related - to vm_map corruption into -stable. This work is probably - too involved to make it into the 4.7 release but is expected to - be committed just after the freeze is lifted. The corruption - in question typically occurs in large-memory systems under heavy - loads and typically panics or KPFs (kernel-page-fault's) the machine - in a vm_map related function.

- -
- - - New SCSI Target Emulator - - - - - Nate - - Lawson - - - nate@root.org - - - - - - - - - -

The existing SCSI target code has been rewritten. The kernel driver is - much simpler, deferring all functionality to usermode and simply passing - CCBs to and from the SIM. The supplied usermode emulates a disk (RBC) - with IO going to a backing file. It replaces /sys/cam/scsi/scsi_target* - and /usr/share/examples/scsi_target.

-

The code is definitely alpha quality and has known problems on - -current although it appears to work ok on -stable. See the included - README for how to install and test. Feedback is welcome!

- - -
- - - Lottery Scheduler for FreeBSD -STABLE - - - - - Mário Sérgio Fujikawa - - Ferreira - - - lioux@FreeBSD.org - - - - -

Yet another implementation of Lottery Scheduling devised by - Carl Waldspurger et. al. is being developed against FreeBSD - -STABLE branch. It is being developed as part of a graduation - project in Computer Science at Universidade de Brasília - in Brazil. Therefore, other implementations have not yet - been verified to avoid plagiarization but will be checked in - a later stage of this project searching for better implementation - ideas. Currently, part of the necessary scheduling kernel - structure has been mapped and work has progressed despite the - general lack of kernel documentation. Further outcomes of - this project will be a simple documentation of the kernel - scheduler structure of -STABLE branch, a port of the Lottery - Scheduler to -CURRENT branch and additional implementations - of other scheduling disciplines from Carl Waldspurger et. al. - Members of the FreeBSD community have been and will continue - to be instrumental in both testing and providing feedback for - ideas implemented here.

- -
- - - The FreeBSD Brazilian Portuguese Documentation Project - - - - - Edson - - Brandi - - - ebrandi.home@uol.com.br - - - - - Mário Sérgio Fujikawa - - Ferreira - - - lioux@FreeBSD.org - - - - - Ricardo Nascimento - - Ferreira - - - nightwish@techemail.com - - - - - Diego - - Linke - - - gamk@gamk.com.br - - - - - Jean Milanez - - Melo - - - jmelo@freebsdbrasil.com.br - - - - - Patrick - - Tracanelli - - - eksffa@freebsdbrasil.com.br - - - - - Alexandre - - Vasconcelos - - - alexandre@sspj.go.gov.br - - - - - FUG-BR Grupo de Usuários - FreeBSD - Brasil - - - -

The FreeBSD Brazilian Portuguese Documentation Project is - merging with a translation group formed by members of the - FUG-BR FreeBSD Brazilian user group. The Brazilian Project - decided to become an official group under FUG-BR after receiving - continued excellent contributions from them. They have managed - to complete the translation of the FreeBSD FAQ which is - currently undergoing both proofing and SGML"fication" stages. - Work is progressing fast: the Handbook has been half translated - and articles are under way. The previous Brazilian Project - is proud to become part of such a dedicate group. The contacts - above represent the current official contacts for the new - translation group. We hope to have at least part of this - work ready for the FreeBSD 4.7 Release.

- -
- - - KSE - - - - - Julian - Elischer - - julian@FreeBSD.org - - - - Jonathon - Mini - - mini@FreeBSD.org - - - - Dan - Eischen - - deischen@FreeBSD.org - - - - - poor description - - - -

David Xu and I have been working on cleaning up some of the work done - in KSE-III and Jonathon and Dan have been working on the userland - interface. The userland library will be committed soon in a - prototypical state and a working test program using that interface will - hopefully accompany it. I have just committed a rework of the run - states for kernel threads that simplifies or solves some problems that - were being seen recently.

-

Hopefully in the next few weeks we will be able to run threads on - separate processors. The basics of Signal support are presently - evolving. Archie Cobbs will also be assisting with some of this work. - I have a mail alias for all the developers at kse@elischer.org. It is - managed by hand at the moment.

- -
- - - Release Engineering - - - - re@FreeBSD.org - - - - - - - - -

The Release Engineering (RE) Team completed and released FreeBSD - 4.6.2. This ``point release'' fixes several important bugs in - the ATA subsystem, as well as addressing a number of security - issues in the base system that surfaced shortly after FreeBSD - 4.6 was released. The release documentation distributed with - FreeBSD 4.6.2 contains more details. (Note: Some earlier - documents and reports referred to this release as version - 4.6.1.) The next release in the 4.X series will be FreeBSD 4.7, - which has a scheduled release date of 1 October 2002.

-

Concurrently, work is continuing on the 5.0-DP2 developer - preview snapshot, an important milestone along the release path - of FreeBSD 5.0, which is scheduled for release on 20 November. - As 5.0 draws closer, we are focusing more on getting the system - stabilized, as opposed to adding new functionality. To help us - with this effort, developers should discuss with us any new - features planned for -CURRENT, beginning 1 October.

- -
- - - jp.FreeBSD.org daily SNAPSHOTs project - - - - Makoto - Matsushita - - matusita@jp.FreeBSD.org - - - - Project Webpage - Project Webpage (in Japanese -) - - -

The project runs as it should be. New security-branch snapshots are - available for both 4.5 and 4.6(.2). I've update buildboxes OS to - the latest 5-current/4-stable without any errors. Also current - problem, less CPU power for the future, is not solved yet -- but - situation is not so bad, I hope I'll show a good news in the next - report.

- -
- - - FreeBSD Donations Team - - - - - Michael - - Lucas - - - donations@FreeBSD.org - - - - - - - - -

The Donations team started rolling in the last couple of - months. Offers of equipment are coming in, and we are - allocating them to FreeBSD committers as quickly as possible. - We now have a "Committer Want List" available in our section of - the Web site. Several small items, such as network cards, have - been routed to people who are willing to write the code to - support them. We have a few larger donations (i.e., actual - servers) ready to go to developers, once shipping information is - straightened out.

- -
- - - RAIDFrame for FreeBSD - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - Project homepage - - - -

Work on RAIDFrame stalled for quite a bit, then it picked up in - early summer, then it stalled, and now it's going again. A - significant amount of work has been done to make the locking - SMPng-friendly and to cut down on kernel stack abuse. I'm happy - to say that it's starting to work reliably when used with file- - backed 'md' disks. Even more exciting is that it's finally starting - to work on real disks, too. A lot of cleanup is still needed, and - a few gross hacks still exist, but it might actually be ready for - the FreeBSD 5.0 release. Patches for FreeBSD 5-current and 4-stable - are available from the website. The 4-stable patches are a year old - but still apply and perform well.

- -
- - - Libh Status Report - - - - - Antoine - - Beaupré - - - anarcat@anarcat.ath.cx - - - - - Alexander - - Langer - - - alex@FreeBSD.org - - - - - Project's home - page - - - - -

The primary libh development box, where the CVS repo and - development webpage was living, is dead. The server has crashed - after a system upgrade and has never came back to life. We had - to pull the drives out of it to make proper backups. We will - setup another box in place of this one and hope for the best. So - right now, the port is broken because the CVS is unaccessible, - as the development web page. We're working on it, please bear - with us.

-

On a brighter note, Max started implementing the changes he - proposed to the build system and the TCL API; LibH is switching - to SWIG for its TCL bindings, which should simplify the system a - lot, and shorten build times. The Hui subsystem is therefore - being completely re-written. On my side, I made a few tests in - building and running LibH under rhtvision, and it didn't fulfill - the promises I thought it would, so I just put aside that - idea. Work on libh stalled during July because I completely lost - network access for the whole month. So right now, LibH is in a - bit of a mess, but we have high hopes of settling everything - down to a new release pretty soon, which will make full use of - the new SWIG bindings.

- -
- - - - FreeBSD Security Officer Team - - - - - Jacques - - Vidrine - - - nectar@FreeBSD.org - - - - - - - - - -

The Security Team continues to be very busy. The - security-officer mailing list traffic for the months of June, July, - and August consisted of 1,230 messages (over 13 messages a day). - This is well over 50% of the freebsd-hackers traffic volume in the - same period!

-

Since June (the time of our last report), 9 new Security - Advisories were published, and one Security Notice was published - covering 25 Ports Collection issues.

-

FreeBSD 4.6.2-RELEASE was released on August 15th. This marked - the first time a point release was created from the security branch. - The process went smoothly from the Security Team perspective, despite - a schedule slippage due to newly discovered bugs, and a snafu which - resulted in 4.6.1-RELEASE being skipped.

-

In September, the FreeBSD Security Officer published a new PGP - key (ID 0xCA6CDFB2, found on the FTP site and in the Handbook). - This aligned the set of those who possess the corresponding private - key with the membership of the security-officer alias published on - the FreeBSD Security web site. It also worked around an issue with - the deprecated PGP key being found corrupted on some public key - servers.

- -
- - - TrustedBSD Mandatory Access Control (MAC) - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - TrustedBSD Discussion Mailing List - - trustedbsd-discuss@TrustedBSD.org - - - -

It's been a busy few months, with a variety of development, - documentation, and public relations activities. The MAC Framework, - our pluggable kernel access control mechanism for FreeBSD, has - matured substantially, and large parts of it were merged to the - main FreeBSD tree over July and August.

-

A variety of entry point changes were made, including: component - names are now passed to VFS namespace VOPs; aggressive caching - of MAC labels in vnodes; mmap memory access downgrades on subject - relabel; check for access()/eaccess(); checks for vnode read, - write, ioctl, pool, permitting revocation post-open() by aware - policies; labeling and access control checks for pipe IPC objects, - clean up of socket/visibility checks; checks for socket bind, - connect, listen, ....; many locking improvements and assertions, - especially for vnodes, processes; framework now supports partial - label updates on subjects and objects; credential management in - 'struct file' improved so that active_cred and file_cred are - more carefully distinguished and passed to MAC framework - explicitly; accounting system uses cached credentials for - write operations now; socreate() can use cached credential to - label sockets fixing deferred nfs socket connections and - reconnections with TCP; kse interactions with proc1 fixed; - IO_NOMACCHECK flag to vn_rdwr() for internal use to avoid - redundant or incorrect MAC checks on aio vnode operations; - mac_syscall() policy function demux; su no longer changes MAC - labels by default; mac_get_pid() to support ps and getpmac -p pid; - mmap revocation defaults to "fail stop"; MAC_DEBUG wraps atomic - label counters; UFS2 extended attributes supported; initial - port of LOMAC to the MAC framework; update all policies for all - these changes; merge of KSE III; merge of nmount(); upgrade of - ugidfw to speak user and group names; libugidfw; many namespace - and naming consistency improvements; module dependencies on - MAC framework; large scale merging of MAC functionality to the - main FreeBSD tree. KDE interfaces to common management - activities.

-

Wrote and taught full-day MAC framework tutorial at STOS - BSD and Darwin Security Symposium; first draft of MAC framework - architecture and API guide. This is now in the Developer's - Handbook.

-

Next couple of months will bring continued maturity improvements, - labeling and protection of more objects; VFS performance - improvements; better support for UFS2 EAs and separate EA - entries for each policy; improved support for LOMAC; MLS - compartments; IPsec security association labeling; improved - SEBSD FLASK/TE port; and much more.

- -
-
diff --git a/en/news/status/report-2002-09-2002-10.xml b/en/news/status/report-2002-09-2002-10.xml deleted file mode 100644 index 4789f23fca..0000000000 --- a/en/news/status/report-2002-09-2002-10.xml +++ /dev/null @@ -1,1025 +0,0 @@ - - - - - - - - September-October - 2002 - - -
- Introduction: - -

Another busy pair of months at the FreeBSD Project have brought - substantial maturity and feature completeness to the fledgeling - 5.0-CURRENT branch. And just in time too, because by the time - you read the next status report, we hope that you'll have - FreeBSD 5.0 running on your desktop! Over the past two months, - we've seen an upgrade of sparc64 to Tier 1 (Fully Supported) - status, integration of a high quality storage encryption module, - the commit of hardware-accelerated IPsec support, the addition of - a general-purpose "Device Daemon" to process hardware - attach/detach events to replace earlier single-purpose and - bus-specific daemons, the commit of RAIDFrame, and the improved - maturity of the TrustedBSD work. We've also seen another - successful release of the 4.x branch, 4.7-RELEASE, which will - continue to be the production supported platform as 5.X is brought - in for landing.

- -

Over the next two months, the FreeBSD Project will be focused - almost entirely on making 5.0 a success: improving system - stability and performance, as well as increasing the pool of - applications that build and run on 5.0. The Release Engineering - team will have announced the 5.0 code freeze, and released DP2 by - the time you read this. Following DP2 will be a series of Release - Candidates (RC's), and then the release itself. If you're - interested in getting involved in the testing process, please lend - a hand -- a spare box and a copy of the DP and RC ISOs burnt onto - CD will make a difference. The normal caveats associated with - pre-release versions of operating systems apply! You may also be - interested in reading the Early Adopter's guide produced by the - Release Engineering team to help determine when a transition from - the 4.x branch to the 5.x branch will be appropriate for you and - your organization.

- -

Thanks,

- -

Robert Watson, Scott Long

-
- - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - Maksim - Yevmenkin - - m_evmenkin@yahoo.com - - - - - Latest snapshot - Linux BlueZ stack - OpenOBEX - - - -

I'm very pleased to announce that another engineering release is - available for download at - http://www.geocities.com/m_evmenkin/ngbt-fbsd-20021104.tar.gz

- -

This release features minor bug fixes and new OpenOBEX library - port. The snapshot includes support for H4 UART and H2 USB transport - layers, Host Controller Interface (HCI), Link Layer Control and - Adaptation Protocol (L2CAP) and Bluetooth sockets layer. It also - comes with several user space utilities that can be used to configure - and test Bluetooth devices. Also there are several man pages.

- -

Service Discovery Protocol (SDP) port has been updated to - version 0.8. (ported from BlueZ-sdp-0.8). Most of the RFCOMM - issues have been resolved and now rfcommd works with Windows - (3COM, Xircom and Widcomm) and Linux stacks.

- -

New supported USB device - EPoX BT-DG02 dongle. Also I have - received successful report about Mitsumi USB dongle and C413S - Bluetooth enabled cell phone (L2CAP and SDP works, waiting on - RFCOMM report).

- -

I'm currently working on OBEX server (Push and File Transfer - profiles) which will be based on OpenOBEX library (included - in the snapshot).

- -
- - - BSDCon 2003 - - - - - Gregory - Shapiro - - gshapiro@FreeBSD.org - - - - - - BSDCon 2003 Call For Papers - - - - -

The BSDCon 2003 Program Committee invites you to contribute - original and innovative papers on topics related to BSD-derived - systems and the Open Source world. Topics of interest include - but are not limited to:

- -
    -
  • Embedded BSD application development and deployment
  • -
  • Real world experiences using BSD systems
  • -
  • Using BSD in a mixed OS environment
  • -
  • Comparison with non-BSD operating systems; technical, - practical, licensing (GPL vs. BSD)
  • -
  • Tracking open source development on non-BSD systems
  • -
  • BSD on the desktop
  • -
  • I/O subsystem and device driver development
  • -
  • SMP and kernel threads
  • -
  • Kernel enhancements
  • -
  • Internet and networking services
  • -
  • Security
  • -
  • Performance analysis and tuning
  • -
  • System administration
  • -
  • Future of BSD
  • -
- -

Submissions in the form of extended abstracts are due by - April 1, 2003. Be sure to review the extended abstract - expectations before submitting. Selection will be based on the - quality of the written submission and whether the work is of - interest to the community.

- -

We look forward to receiving your submissions!

- - -
- - - C99 & POSIX Conformance Project - - - - - Mike - Barcroft - - mike@FreeBSD.org - - - - FreeBSD-Standards Mailing List - - standards@FreeBSD.org - - - - - - -

October 10, 2002 marked the one year anniversary of our project. - During that time we have made significant advances in FreeBSD's - standards conformance. FreeBSD 5.0-RELEASE will be the showcase - for most of our hard work. We hope that our tireless effort has - had a positive effect on FreeBSD and software vendors that - maintain or are considering porting their software to FreeBSD.

- -

On the API front, _Exit(3) (an alias for _exit(2)) was added, - sysconf(3) was update for POSIX.1-2001, and some of the glob(3) - additions were MFC'd. The insque(), lsearch(), and remque() - family of functions were reimplemented and moved to libc from - libcompat. Several wide character functions were implemented, - including all printf() and scanf() variants. Finally, support - for wide character format types (%C, %S, %lc, %ls) were added to - printf(3).

- -

Work on utility conformance continued as getconf(1)'s compliance - was updated, c99(1) (a new version of c89(1)) was implemented, - and cd(1) and command(1) changes were MFC'd.

- -

Almost 20 headers were brought up to conformance with applicable - standards. Not much work remains to fix conformance issues in - the remaining standard headers. Work in this area, as well as - others, has slowed down in preparation for 5.0-RELEASE.

- -
- - - DEVD Status Report - - - - - Warner - Losh - - imp@FreeBSD.org - - - - -

DEVD has been integrated into FreeBSD current. It was - integrated in an incomplete state. However, it is useful in the - state that it is in for doing simple things like running - camcontrol rescan when a SCSI pcmcia card is inserted, or running - /etc/pccard_ether with an ethernet card is inserted. The more - sophisticated regular expression matching is not yet complete. - Devd only does actions on device arrival and departure, but does - not yet do anything with unknown devices. In addition to - listening for device events, there is some desire to have - /dev/devctl also allow for some direct control of the device - tree.

- -
- - - Fast IPsec Status - - - - - Sam - Leffler - - sam@FreeBSD.org - - - - -

The main goal of this project is to modify the IPsec protocols to use - the kernel-level crypto subsystem imported from OpenBSD (see elsewhere). A - secondary goal is to do general performance tuning of the IPsec - protocols.

- -

This work was committed to -current. To configure it for use specify - options FAST_IPSEC in your system configuration file. At present support is - limited to IPv4.

- -
- - - GBDE - Geom Based Disk Encryption - - - - - Poul-Henning - Kamp - - phk@FreeBSD.org - - - - -

GBDE has been committed to -current.

- -

The "Geom Based Disk Encryption" module provides a mechanism for - very strong encryption of a GEOM "disk". The algorithm has passed - informal review by a couple of seasoned crypto heavy-weights. - Any GEOM device can be protected with GBDE, entire physical disks, - MBR slices, BSD partitions etc etc. Booting from an encrypted - partition is not possible, however.

- -

The focus of GBDE is to protect a "cold" disk media. (FreeBSD is - not equipped well for protecting key material on a running system - from being compromised.) - For a cold media, the only feasible attack on a GBDE protected - media is guessing the pass-phrase.

- -

Summary of the GBDE multilevel protection scheme: Up to four - separate pass-phrases can unlock their own separate copies of - the 2048 bit masterkey. The master-keys are protected using - AES/256/CBC keyed with a SHA-2 hash derived from the pass-phrase. - A salted MD5 hash over the sectoroffset "cherry-picks" which masterkey - bytes participate in the MD5 hash which generates the "kkey" - for each particular sector. The kkey AES/128/CBC encrypts the PRNG - produced single-use key which AES/128/CBC encrypts the actual - sector data.

- -

GBDE has features for master-key destruction and pass-phrase - invalidation.

- -

See gbde(4) and gbde(8) for more details.

- -

This software was developed for the FreeBSD Project by - Poul-Henning Kamp and NAI Labs, the Security Research - Division of Network Associates, Inc. under DARPA/SPAWAR - contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA - CHATS research program.

- -
- - - GEOM - generalized block storage manipulation - - - - - Poul-Henning - Kamp - - phk@FreeBSD.org - - - - - Old concept paper here. - - - -

The GEOM code is now the default on most (if not all ?) architectures - and the few remaining issues in libdisk/sysinstall is being hashed - out.

- -

Although we are far from finished developing GEOM, its current feature - set is a significant step forward for FreeBSD, providing not only - immediate relief for new architectures (sparc64, ia64 etc) but also - because it is designed as SMPng code from the start.

- -

This software was developed for the FreeBSD Project by - Poul-Henning Kamp and NAI Labs, the Security Research - Division of Network Associates, Inc. under DARPA/SPAWAR - contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA - CHATS research program.

- -
- - - FreeBSD GNOME Project - - - - - Joe - Marcus - - marcus@FreeBSD.org - - - - Maxim - Sobolev - - sobomax@FreeBSD.org - - - - Adam - Weinberger - - adamw@FreeBSD.org - - - - - FreeBSD GNOME Project Homepage. - - - -

These last two months have seen quite a lot of GNOME activity. - GNOME has started releasing development snapshots of the upcoming - GNOME 2.2 desktop. FreeBSD porting has begun outside of the - main ports tree in the - MarcusCom - CVS repository. If you are interested in testing the new - desktop, follow the instructions on the aforementioned cvsweb - URL, and checkout the "ports" module.

- -

Evolution 1.2 is also close at hand. Ximian has posted its - first release candidate, 1.1.90, which has been ported to FreeBSD, - and is available from the MarcusCom CVS repo listed above. As - soon as Ximian officially releases Evolution 1.2, it will be placed in - the FreeBSD ports tree.

- -

The Mozilla ports have received numerous updates. We are now - tracking all three released Mozilla versions. The mozilla-vendor - port is tracking the 1.0.x branch, mozilla is tracking 1.1.x, and - mozilla-devel is tracking 1.2.x. The mozilla-devel port now - has support for anti-aliased fonts as well as a GTK+-2 interface

- -

Finally, the GNOME team would like to welcome its newest - team member, Adam Weinberger. Adam has been submitting patches for - both GNOME ports as well as documentation. Currently, he has been - active in the GNOME 2.2 porting effort. We are happy to have him.

- -
- - - Hardware Crypto Support Status - - - - - Sam - Leffler - - sam@FreeBSD.org - - - - -

The goal of this project is to import the OpenBSD kernel-level crypto - subsystem. This facility provides kernel- and user-level access to hardware - crypto devices for the calculation of cryptographic hashes, ciphers, and - public key operations. The main clients of this facility are the kernel RNG - (/dev/random), network protocols (e.g. IPsec), and OpenSSL (through the - /dev/crypto device).

- -

This work was committed to the -current tree. To configure it for use - specify device crypto in your system configuration file or you can load the - crypto module. The /dev/crypto device support is brought in with device - cryptodev or by loading the cryptodev module. Two crypto device drivers - exist: ubsec for Broadcom-based PCI hardware and hifn for Hifn-based PCI - hardware.

- -

Integration of this work into the -stable source tree should be - completed by the time this report is published.

- -
- - - FreeBSD Java Project - - - - - Greg - Lewis - - glewis@FreeBSD.org - - - - - FreeBSD Java Project - - - -

Since the last status report the BSD Java Porting Team has continued - to make steady progress. The most exciting news we have is courtesy - of our newest team member, Alexey Zelkin of FreeBSD committer fame. - -

    -
  • Thanks to a lot of hard work, primarily by Alexey, the project - is very close to being able to release our first patch set for - the 1.4 JDK. Things are reportedly working quite well under - -CURRENT, with -STABLE support being only marginally behind (thanks - in part to the libc_r MFC by Max Khon).
  • -
  • The project has released another patchset for the 1.2.2 JDK, mainly - to add support for OpenBSD and for JPDA. Most of the projects - energy at the moment is focused on 1.3 and 1.4, however we still - hope to back port relevant fixes if appropriate to 1.2.2.
  • -
  • Nate Williams has been hard at work behind the scenes migrating - us to a new CVS server which has kindly been donated by the - FreeBSD Foundation. The Project appreciates the continued - support of the Foundation. Please support them so they can - continue to support us and other important FreeBSD efforts!
  • -
-

- -
- - - jpman project - - - - - Kazuo - Horikawa - - horikawa@FreeBSD.org - - - - - jpman project - package ja-man-doc-4.7.tgz - - - -

For 4.7-RELEASE, we privately published package ja-man-doc-4.7.tgz - which consists of man[1256789] entries 10 days after the 4.7-RELEASE - release date. Man3 update god no progress, as updating other sections - busied us. We decided to suspend man3 update officially, as we need to - spend most of our time to catch up with the forthcoming 5.0-RELEASE.

- -
- - - KDE FreeBSD Project - - - - - Will - Andrews - - will@FreeBSD.org - - - - - KDE-FreeBSD - Mailinglist - - kde@FreeBSD.org - - - - - KDE/FreeBSD Website - KDE/FreeBSD Build Server - - - -

The KDE/FreeBSD team has been working on two major goals during the last - two months, Maintenance of the KDE 3.0.x ports and Preparing the - upcoming KDE 3.1 Release.

- -

Maintenance KDE 3.0 conducted by Alan Eldrige: September started with - the Removal of the KDE 2.x Ports from the FreeBSD-Repository. Later - Packages of KDE 3.0.4 were released and the FreeBSD Ports were updated.

- -

Preparing for KDE 3.1 conducted by Will Andrews: A lot of effort was - spent on Improving the Fruitsalad-Build-System. We are now able to - create packages directly from the KDE CVS.

- -
- - - KSE Project Status - - - - - Julian - Elischer - - julian@FreeBSD.org - - - - David - Xu - - davidxu@FreeBSD.org - - - - Jonathon - Mini - - mini@FreeBSD.org - - - - Daniel - Eischen - - deischen@FreeBSD.org - - - - - KSE Project web page - some links - - - -

The KSE code has now all the basic kernel functionality - to start being used by the userland. There are still things - to be done for testing and familiarization.

- -

General system utilities have not yet been changed. - e.g. ps and top etc. need to know about threads.

- -

There is quite a lot of code in the kernel that still - assumes that there is one thread in a process. Signals are - not yet handled in the final manner (though they are - delivered to a random thread in the process :-/ ).

- -

The system calls and datastructures are now however in - place. The test program successfully starts several threads - that can be scheduled on different processors, and closes - them down again. The userland is probably going to be able - to do simple scheduling of pthread threads using KSE by the - time that this report is published.

- -

I still need someone to take over the "official" web page - since jason left. LaTeX sure isn't my thing.

- -
- - - LibH - - - - - Antoine - Beaupré - - anarcat@anarcat.ath.cx - - - - - Alexander - Langer - - alex@FreeBSD.org - - - - - - LibH development page - - - -

Not much since the last status report, except that we now have - the repo and development web page back online, thanks to the - services of John De Boskey who freely provided the necessary - hardware and bandwidth to host the project. We have also ported - LibH to GCC 3.x, so that it can compile on -CURRENT - correctly. This, however, broke tvision, which doesn't compile - under GCC 3.x, so we moved to rhtvision but this caused linking - problems so we're stuck with no console front end, for now.

- -

Work on a Hui rewrite and SWIG bindings stalled. Alex was able - to come up with a simple patch to make the ports system use - LibH's pkg_create script to build libh packages, so we're - getting closer to a real pkg_create(1) drop-in replacement. I - rewrote the milestone list to show a bit more relevant and - encouraging tasks that will be dealt with in order to really - push LibH forward.

- -
- - - FreeBSD/MIPS - - - - - Juli - Mallett - - jmallett@FreeBSD.org - - - - -

A mailing list was created, freebsd-mips, and a Perforce branch - was created in //depot/projects/mips. Changes which will be - necessary to allow multiple MIPS (and PowerPC) metaports to exist - under one architecture port were made, and are being pushed back - into the main FreeBSD tree. Some preliminary header work has been - done, and porting the ARCBIOS interfaces to the kernel has begun. - The toolchain in tree was updated and modified in places to support - a FreeBSD/MIPS (Big Endian) target, in the Perforce branch. Some - early boot code has proven the GDB MIPS simulator to work, for at - least R3000 code, though whether R3000 will be supported has been - under discussion. Some initial architectural decisions were also - made, to steer current work.

- -
- - - NEWCARD Status Report - - - - - Warner - Losh - - imp@FreeBSD.org - - - - -

Work on newcard continues. A number of bugs have been fixed in - the last few months. You are now able to load and unload drivers - (including the bridge) to test changes to pccard and/or cardbus - bus code. It is now possible to load a driver that has a pccard - attachment and have a previously inserted card probe and attach. - This is also true for CardBus. A number of issues remain to be - solved before 5.0. However, with the integration of devd into the - tree nearly all of old functionality of OLDCARD is now present in - NEWCARD (the biggest remaining parts are power control for the - sockets, as well as pccardc dumpcis).

- -
- - - PowerPC Port - - - - - Peter - Grehan - - grehan@FreeBSD.org - - - - -

The PowerPC port has been running diskless on NewWorld G3/G4 - machines for a while now. A GEOM module to support Apple Partition - Maps is being written. There should be an installable ISO image - available in the near future.

- -
- - - RAIDFrame for FreeBSD - - - - - Scott - Long - - scottl@FreeBSD.org - - - - - Project homepage - - - -

RAIDFrame was imported into FreeBSD-current in late October, a - major milestone after 18 months. It is still very experimental and - not suitable for production environments. The website contains a - lengthy TODO list which I hope to start attending to soon. Still, - I encourage everyone to try it out and report bugs back to me.

- -
- - - Release Engineering - - - - re@FreeBSD.org - - - - - - - - - -

The Release Engineering (RE) team completed and released - FreeBSD 4.7 on 10 October 2002. This release features updates - for a number of contributed software programs in the base - system, as well as all of the security and bug fixes from - FreeBSD 4.6.2. The next release in the 4.X series will be - FreeBSD 4.8, which has a scheduled release date of 1 February - 2003.

- -

Before that time, however, will be the release of FreeBSD 5.0. - Thus far, we have not been able to release the 5.0-DP2 developer - snapshot due to various stability issues. Thanks to much effort - from many of our fellow developers, we believe that most of - these have been resolved. The RE team wishes to emphasize that - FreeBSD 5.0 will involve new code and features that have not - seen widespread testing, and that more conservative users may - wish to continue to track the 4.X series for the near-term - future. To provide more information on these issues, we have - added an Early Adopter's Guide to the release documentation for - 5.0.

- -

Brian Somers has resigned from the RE team due to increased - time pressures. We thank him for all of his help with FreeBSD - 4.5, 4.6, 4.6.2, and 4.7, and we hope to continue working with - him as a fellow developer.

- -

Scott Long has graciously offered to help improve the - communication between the RE team and the rest of the developer - community. We greatly appreciate his assistance.

- -
- - - jp.FreeBSD.org daily SNAPSHOTs project - - - - - Makoto - Matsushita - - matusita@jp.FreeBSD.org - - - - - Project Webpage - Project Webpage (in Japanese) - - - -

Recent 5-current release procedure troubles prevent the - project from releasing a new snapshots. But 5-current FreeBSD/i386 - release is back again in late Oct/2002! I have a plan to build - daily FreeBSD/sparc64 snapshots for 5-current. Stay tuned...

- -
- - - FreeBSD/sparc64 Status Report - - - - - Jake - Burkholder - - jake@FreeBSD.org - - - - - Thomas - Moestl - - tmm@FreeBSD.org - - - - -

A lot has happened recently for the sparc64 port. Sysinstall and - make release work and can be used to build installable snapshots. - The gdb5.3 port now works, and, thanks to Thomas Moestl, kernel crash - dumps are supported which can be analyzed by gdb. These 2 items are - the last things considered necessary by the Core team for FreeBSD/sparc64 - to be a Tier 1 architecture, which means that 5.0-RELEASE for sparc64 - will be officially supported by the release engineering team and by the - security officer team.

- -

Recently Jake Burkholder has been working on alternate installation - methods other than bootable iso, including a mini-root filesystem which - can be written to the swap partition of an existing machine. Thomas - Moestl has been putting some finishing touches on the release process, - ensuring that the release documentation can be built properly, and that - the port readme files can be generated by the release process.

- -

An experimental iso built with make release is now available on the - freebsd ftp site and mirrors in - /pub/FreeBSD/development/sparc64/5.0-20021031-SNAP. It is expected that - by the middle of November new 5.0-SNAP releases will be available every - few days for download and for ftp install, cpu power and bandwidth - permitting.

- -
- - - TrustedBSD Project - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - TrustedBSD Discussion Mailing List - - trustedbsd-discuss@FreeBSD.org - - - - - TrustedBSD web site - - - -

Most progress on TrustedBSD over the last two months related - to improving the maturity of the ACL and MAC implementations, - and merging new aspects of those features into the primary - FreeBSD CVS Repository for inclusion in FreeBSD 5.0. This - included fixes to run better on sparc64, improved tuning - of what system objects are mediated, locking fixes and - optimizations especially relating to the vnode and pipe - implementations, improved support for MAC labeling on symlinks, - support for asynchronous process label changes as required - in some locking situations, remove use of "temporary labels" - and prefer use of object type specific labels reducing - redundant and/or confusing label management code in policies, - improve avoidance of memory allocation in M_NOWAIT scenarios - for socket allocation in the syncache, mediation of link - operations, race condition fixes for devfs involving label - creation, improve handling of VM events such as mmaping, - improve mediation of socket send/receive events (as - distinguished from socket transmit/deliver events), support - for manipulating EAs on symlinks using new system calls, - support for MNT_ACLS and MNT_MULTILABEL flags at mount time, - as well as FS_ACLS and FS_MULTILABEL superblock flags to - key useful defaults using tunefs, correction of a memory leak - in the UFS ACL code, enable UFS ACL support by default in - GENERIC, mediation points for file creation, deletion, and - rename, support for a mac_execve() execution interface in - the style of SELinux's execve_secure() permitting a label - transition request as part of the exec operation for policies - that support it, more consistent handling of NFS lookups, - support for labeling of multicast encapsulated packets, ATM - packet labeling, FDDI packet labeling, STF packet labeling, - revised label interface that avoids userland parsing of - per-policy elements, reducing us to a single instance of - parsing and printing for each policy (and further abstracting - policy implementation details from the library code).

- -

Also, change to single-level sockets for Biba and MLS - policies, support for partial label updates for Biba and MLS, - addition of mac.9 man page, revised user API system calls, - implementation of mac_get_pid(), and various other related - bits, creation of mac.conf(5) to specify label defaults, - checks for various system operations including swapon(), - settime(), and sysctl(), reboot(), acct(), introduction of - command line utilities for maintaining file and process labels, - support for user labels tied to login class, su support for - label changes, ifconfig support for interface labels, ps - support for process labels, ls support for file labels, ftpd - support for login labels, development of the Biba and MLS - notions of privilege, and a move to C99 sparse structure - initialization, restoring full type checking for policy entry - points.

- -
- - - OSF DCE 1.1 RPC UUIDs - - - - - Marcel - Moolenaar - - marcel@FreeBSD.org - - - Hiten - Pandya - - hiten@uk.FreeBSD.org - - - - - - - - - -

Universally Unique Identifiers (UUIDs) are 128 bit values that may - be generated independently on separate nodes (hosts), which result in - globally unique strings. UUIDs are also known as Globally Unique - Identifiers (GUIDs). The UUID support for FreeBSD (libc) conforms to the - DCE 1.1 RPC specification.

- -

UUID support has been added to FreeBSD -CURRENT, and will be available - in version 5.0. It is being extensively used in GPT partition handling - for IA-64 platform. For now, a simple manual page has been provided, - which outlines information about the provided uuid routines. Many - documentation additions and enhancements to uuidgen(1) are in the - pipeline.

- -
- - - Wireless Networking Status - - - - - Sam - Leffler - - sam@FreeBSD.org - - - - -

The goal of this project is to improve the wireless networking support - in the system. The initial work will incorporate the 802.11 link layer - done by Atsushi Onoe for NetBSD. This core support code implements the - basic 802.11 protocols required for Station and AP operation in BSS, IBSS, - and Ad Hoc modes of operation. Wireless device drivers will then be revised - to use this common code instead of their private implementations.

- -

Following this initial stage the wireless networking support will be - extended to support functionality needed for workgroup, enterprise, and - metropolitan (e.g. mesh) networking environments. This will include full - power management support, the 802.1D spanning tree protocol for running - multiple AP's in a bridged configuration, QoS support, and enhanced - security protocols (LEAP, AES, EAP). Support for new hardware devices is - also planned.

- -
-
diff --git a/en/news/status/report-2002-11-2002-12.xml b/en/news/status/report-2002-11-2002-12.xml deleted file mode 100644 index 9ce285445c..0000000000 --- a/en/news/status/report-2002-11-2002-12.xml +++ /dev/null @@ -1,881 +0,0 @@ - - - - - - - - November-December - 2002 - - -
- Introduction: - -

At long last, FreeBSD 5.0 is here. Along with putting the final - polish on the tree, FreeBSD developers somehow found the time to - work on other things too. IA64 took some major steps towards - working on the Itanium2 platform, an effort was started to - convert all drivers to use busdma and ban vtophys(), hardware - crypto support and DEVD hit the tree, NewReno was fixed and - effort began on locking down the network layer of the kernel. - Also high performance, modular scheduler started taking shape - and will be a welcome addition to the kernel soon.

- -

Looking forward, the focus will be on stabilizing and - improving the performance of 5.0. The RELENG_5 (aka 5-STABLE) - branch will be created once we've reached our goals in this - area, so hopefully we will get there quickly. Meanwhile, - preparations for the next release from the 4.x series, 4.8, - will begin soon. Of course, the best way to get 5.x to - stabilize os to install and run it!

- -

Thanks,

- -

Scott Long, Robert Watson

-
- - - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - - Maksim - Yevmenkin - - - m_evmenkin@yahoo.com - - - - - Latest snapshot - - Linux BlueZ stack - - OpenOBEX - - - -

I'm very pleased to announce that all kernel modules and few userland - tools made it to the FreeBSD source tree. Many thanks to Julian - Elischer.

- -

Unfortunately no big changes since the last report. Some minor problems - have been discovered and patches are available on request. I will prepare - all the patches and submit them to Julian for review.

- -

OBEX server and client (based on OpenOBEX library) is almost complete. - I'm currently doing interoperability testing. If anyone has hardware and - time please contact me. The HCI security daemon has been implemented and - tested with Sony Ericsson T68i cell phone and Windows stack. It is now - possible to setup secure Bluetooth connections.

- -

A few people have complained about RFCOMM daemon. These individuals want - to use GPRS and Bluetooth enabled cell phone to access Internet. If you - have this problem please contact me for possible workaround. My next goal - is to get robust RFCOMM implementation to address all these issues.

- -
- - - TrustedBSD Project: Access Control Lists - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - TrustedBSD Discussion List - - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD Project - - - -

Largely bug-fixing and userland application tweaks; new - interfaces were added to manipulate ACLs on extended attributes; - bugs were fixed in ls relating to ACL flagging. Patches to - teach cp, mv, gzip, bzip, and other apps about ACL preservation - are in testing and review. tunefs flags were added to ease - configuration of ACLs, especially on UFS2 file systems.

-

Possible changes to make use of Linux/Solaris umask semantics - are under consideration: right now we implement verbatim - POSIX.1e/IRIX merging of the umask, ACL mask, and requested - creation mode during file, device, fifo, and directory creation. - Solaris and the most recent Linux patches ignore the umask in - the context of a default ACL; this requires some rearrangement - of umask handling in our VFS, although the results would be - quite useful. We're exploring how to do this in a low impact - way.

- -
- - - TrustedBSD Project: MAC Framework - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - TrustedBSD Discussion List - - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD Project - - - -

Framework changes:

-

Instrument KLD system calls (module and kld load, unload, stat) - Instrument NFSd system call. Instrument swapoff(2). - Instrument per-architecture privileged parts of sysarch(). - Make use of condition variables to allow callers to wait for the - framework to "unbusy" when loading/unloading policies, rather than - returning EBUSY. Store mount pointer in devfs_mount structure for - use by policies. Improve handling of labels in loopback interface - "re-align" packet copy case. Provide full paths on devfs object - creations to help policies label them properly (not merged). - Experimentation with moving MAC labels into m_tags (not merged). - NFS server now uses real ucreds, not hacked up ucreds, - meaning we can start laying the groundwork for enforcement on - NFS operations. (not merged)

- -

Policy changes

-

LOMAC: mac_lomac replaces lomac (LOMAC now uses the MAC Framework), - SEBSD: Improved support for devfs labeling based on SELinux genfs. - Handling of hard link checks. Support export of process transition - information for login and others using sysctl. Login now prompts - for roles. Allow policy reload. TTY labeling. Locking adaptation - from Linux. Many, many policy adaptations and fixes. We can - now boot in enforcing mode! mac_bsdextended: fix a bug in which - VAPPEND wasn't mapped to VWRITE, so opens with the O_APPEND bug - failed improperly.

- -

Userland changes

-

setfmac(8) now supports a setfsmac(8) execution mode, which accepts - initial labeling specification files. Supports an SELinux compatibility - mode so it can accept SELinux label specfiles using the SEBSD module. - sendmail(8) now sets user labels as part of the context switch for mail - delivery.

- -

Documentation changes

-

Man page updates for MAC command line tools, modules, admin hints, etc. - Updates to the FreeBSD Developer's Handbook chapter on MAC policies - and entry points. MAC section in FreeBSD Handbook.

- -
- - - busdma driver conversion project - - - - - Maxime - - Henrion - - - mux@FreeBSD.org - - - - - - - - -

This project has been coming along pretty well. The amd(4) and - xl(4) drivers have now been converted to use the busdma API, - sparc64 got the bus_dmamap_load_mbuf() and bus_dmamap_load_uio() - functions, and the gem(4) and hme(4) drivers have been updated - to use bus_dmamap_load_mbuf() instead of bus_dmamap_load().

- -

A lot more still needs to be done, as shown on the project's - page. A fair number of conversions are on their way though, - and we can expect a fair number of drivers to be converted - soon, thanks to all the developers who are working on this - project.

- -
- - - FreeBSD C99 & POSIX Conformance Project - - - - - Mike - Barcroft - - - mike@FreeBSD.org - - - - FreeBSD-Standards Mailing List - - - standards@FreeBSD.org - - - - - - - - - -

The POSIX Utility Conformance in FreeBSD list (link above) has - been updated to reflect current reality. Not much work remains - to complete base utility conformance.

- -

On the API front, grantpt(), posix_openpt(), unlockpt(), - wordexp(), and wordfree() were implemented. The header - <wordexp.h> was added.

- -

There are currently about 40 unassigned tasks on our project's - status board ranging from documentation, utilities, to kernel - hacking. We would encourage any developers looking for something - to work on to check out the status board and see if anything - interests them.

- -
- - - Hardware Crypto Support Status - - - - - Sam - Leffler - - - sam@FreeBSD.org - - - - -

The goal of this project is to import the OpenBSD kernel-level crypto - subsystem. This facility provides kernel- and user-level access to - hardware crypto devices for the calculation of cryptographic hashes, - ciphers, and public key operations. The main clients of this facility - are the kernel RNG (/dev/random), network protocols (e.g. IPsec), and - OpenSSL (through the /dev/crypto device).

- -

This work will be part of the 5.0 release and has been committed to - the -stable source tree for inclusion in the 4.8 release.

- -

Recent work has focused on improving performance. System statistics are - now maintained and an optional profiling facility was added for - analyzing performance. Using this facility the overhead for using the - crypto API has been significantly reduced.

- -

The ubsec (Broadcom) driver was changed to significantly improve - performance under load. In addition several memory leaks were fixed in - the driver and the public key support was enabled for use.

- -

Upcoming work will focus on load-balancing requests across multiple - crypto devices and integrating OpenSSL 0.9.7 which will automatically - enable application use of crypto hardware.

- -
- - - DEVD - - - - - Warner - Losh - - - imp@FreeBSD.org - - - - -

Devd has been integrated into FreeBSD 5.0-RELEASE. The - integrated code supports a range of configuration options. The - config files are fully parsed now and their actions are - performed.

- -

Future work in this area is likely to be limited to improving - the devctl interface. /dev/devctl likely will be a cloneable - device in future versions. Individual device control via devctl - is also planned.

- -
- - - Donations Team Status Report - - - - - Michael - Lucas - - - donations@FreeBSD.org - - - - - Donations main page - FreeBSD - developer wantlist - - completed donations - - - -

The Donations project expedited several dozen donations during - 2002, and was able to place most of what was offered. We still - are in dire need of SMP and Sparc systems. You can see - information on our needs and donations that have been handled by - the team on the donations web page.

- -

We are relying increasingly upon the developer wantlist to - place items offered to the Project, and using the commit - statistics to help place items. As such, active committers who - ask for what they want beforehand have a decent chance of - getting it. Less active committers, and committers who do not - ask for what they want, will be lower in our priorities but will - not be excluded.

- -

We are in the process of streamlining the tax deduction process - for donations, and hope to have news on that shortly. We are - also always working to accelerate and reduce our internal - processes, to get the most equipment in the hands of the most - people as quickly as possible.

- -

I especially want to thank David O'Brien and Tom Rhodes for - stepping up and making the team far more successful. Also, the - FreeBSD Foundation has been quite helpful in handling - tax-deductible contributions.

- -
- - - - - Fast IPsec Status - - - - - Sam - Leffler - - - sam@FreeBSD.org - - - - -

The main goal of this project is to modify the IPsec protocols to use - the kernel-level crypto subsystem imported from OpenBSD (see elsewhere). - A secondary goal is to do general performance tuning of the IPsec - protocols.

- -

This work will be part of the 5.0 release. Performance has been improved - due to work on the crypto subsystem.

- -
- - - FFS volume label support - - - - - Gordon - Tetlow - - - gordon@FreeBSD.org - - - - - Current patch set. - - - -

The goal of the project is to use a small amount of space in the FFS - superblock to store a volume label of the user's choice. A GEOM module - will then expose the volume labels into a namespace in devfs. The idea - is to make it easier to manage filesystems across disk swaps and - movement from system to system.

- -

At this point, everything pretty much works. I've submitted parts of - the patch to respective subsystem maintainers for review. There are some - issues with namespace collision that I haven't addressed yet, but the - basic functionality is there

- -
- - - French FreeBSD Documentation Project - - - - Sebastien - Gioria - - - gioria@FreeBSD.org - - - - Marc - Fonvieille - - blackend@FreeBSD.org - - - - Stéphane - Legrand - - stephane@FreeBSD.org - - - - - The French FreeBSD Documentation Project. - The FreeBSD Web Server translated in French. - Translation of the hanbook. - French Daemon News like web site. - - - -

Most of the articles are translated too. Marc is still translating the - handbook, 60% is currently translated. Stéphane has began the - integration of our French localization web site in the US CVS Tree. - Sébastien is still maintaining the Release Notes.

- -

We launched a new site, www.FreeBSD-fr.info, consisting in a French - Daemon News like site. Netasq have donated our new server; we will - install it in a new hosting provider in the few next weeks. One of the - big job now is the translation of the FAQ, and the big - project will be the manual pages.

- -
- - - FreeBSD GNOME Project - - - - - Joe - Marcus - - - marcus@FreeBSD.org - - - - Maxim - Sobolev - - - sobomax@FreeBSD.org - - - - Adam - Weinberger - - - adamw@FreeBSD.org - - - - - - FreeBSD GNOME Project - Homepage. - - - -

Since the ports tree has been frozen for most of this reporting period, - there have not been too many GNOME updates going into the official CVS - tree. However, development has not stopped. GNOME 2.2 is nearing - completion, and quite a few FreeBSD users have stepped up to test the - GNOME 2.1 port sources from the - MarcusCom - CVS repository. If anyone else is interested, follow the - instructions on the aforementioned cvsweb URL, and checkout the "ports" - module.

- -

The upcoming FreeBSD 5.0-RELEASE will be the first release to have the - GNOME 2.0 desktop as the default GNOME desktop choice. During the - previously mentioned ports freeze, all the GNOME 2 ports were fixed up - so that they build and package on both i386 and Alpha platforms. Alas, - the one port that will not make the cut for Alpha is Mozilla. There are - still problems with the xpcom code, but work is ongoing to get a working - Alpha port.

- -

Finally, the FreeBSD Mono (an OpenSource C# runtime) port has also - received some new life. Mono has been updated to 0.17 (the latest - released version), and Juli Mallett has ported gtk-sharp (GTK+ bindings - for C#).

- -
- - - FreeBSD/ia64 Status - - - - - Peter - Wemm - - - peter@FreeBSD.org - - - - Marcel - Moolenaar - - - marcel@FreeBSD.org - - - - - - - - - -

The ia64 port is up and running on the new Itanium2 based hp - machines thanks to a lot of hard work by Marcel Moolenaar. So - far we are running on the hp rx2600 as these were the machines - graciously donated by Hewlett-Packard and Intel. We had a - prototype Intel Tiger4 system for a while, but we had to return - the machine and we do not know if it currently runs. Most of - the changes necessary to run these are sitting in the perforce - tree and are not in the -current or RELENG_5 cvs tree. As a - result, the cvs derived builds (-current and the 5.0-RC series - and presumably 5.0-RELEASE) are only usable on obsolete Itanium1 - systems.

- -

Lots of other stability and functionality fixes have been made - over the last few months, including initial libc_r support. The - OS appears to be stable enough for sustained workloads - it is - building packages now, for example. We still do not have gdb - support, even for reading core files.

- -
- - - jpman project - - - - - Kazuo - Horikawa - - - horikawa@FreeBSD.org - - - - - jpman project - - - -

We have been updating our Japanese translated manual pages to - RELENG_5 based. All existing entries have been updated, but 15 - exceptions are not, most of which require massive update. We - will also need to add translations which did not exist on RELENG_4.

- -
- - - KGI/FreeBSD Status Report - - - - - Nicholas - Souchu - - - nsouch@FreeBSD.org - - - - - - - - - -

KGI (Kernel Graphic Interface) is a kernel infrastructure providing user - applications with means to access hardware graphic resources (dma, - irqs, mmio). KGI is already available under Linux as a separate - standalone project. The KGI/FreeBSD project aims at integrating KGI - in the FreeBSD kernel.

- -

KGI/FreeBSD has been recently donated 2 PCI graphic cards (Matrox - Millenium II and a coming Mach64) and other have been proposed. - Please see the FreeBSD web pages for details. Thanks to donation@ for - organizing and promoting donations. Thanks to the donators for their - contribution to KGI/FreeBSD.

- -

KGI/FreeBSD progressed fine the last months. Most of the VM issues for - mapping HW resources in user space have been addressed and a first - attempt of coding was made. This prototyping raised some API - compatibility problems with the current Linux implementation and was - discussed heavily on the kgi devel lists. Ask if you're - interested in such issues, I'll be pleased to share them.

- -

Most of coding is now done. Let's start debugging!

- -
- - - SMP locking for network stack - - - - - Jeffrey - Hsu - - - hsu@FreeBSD.org - - - - -

Work is ongoing to continue to lock up the network stack. - Recently, the focus has been on the IP stack. The plan there - involves a series of inter-related pieces to lock up the - ifaddr ref count, the inet list, the ifaddr uses, the ARP code, - the routing tree, and the routing entries. We are over 3/5 of - the way done down this path.

- -

In addition to TCP and UDP, the other networking protocols - such as raw IP, IPv6, AppleTalk, and XNS need to be locked up. - Around 1/4 these remaining protocols have been locked and - will be committed after the IP stack is locked.

- -

The protocol independent socket layer needs to be locked and - operating correctly with the protocol dependent locks. This - part is mostly done save for much needed testing and code cleanup.

- -

Finally, a pass will be need to be made to lock up the devices drivers - and various statistics counters.

- -
- - - TCP congestion control - - - - - Jeffrey - Hsu - - - hsu@FreeBSD.org - - - - - - - -

This effort fixes some outstanding problems in our TCP - stack with regard to congestion control. The first - item is to fix our NewReno implementation. Following that, - the next urgent correction is to fix a problem involving window updates - and dupack counts. When that stabilizes, we will then change - the recovery code to make use of SACK information. - Eventually, this project will update the BSD stack to add Limited Transmit - and other new internet standards and standards-track improvements.

- -
- - - FreeBSD Package Cluster work - - - - - Kris - Kennaway - - - kris@FreeBSD.org - - - - - - - - -

The 3 FreeBSD package clusters (i386, alpha, sparc64) have been - unified to run from the same master machine, instead of using 3 - separate masters. This has freed up some machine resources to - use as additional client machine, as well as simplifying - administrative overheads. Build logs for all 3 architectures - can now be found on the http://bento.FreeBSD.org webpage. The - sparc64 package cluster now has 3 build machines (an u5 and two - u10s), and an ia64 cluster is about to be created.

- -

Package builds now keep track of how many sequential times a - port has failed to build (html summaries are available on the - bento website). This allows tracking of ports which have - suddenly become broken (e.g. due to a bad upgrade, or due to - changes in the FreeBSD source tree), and in the future will be - used to send out notifications to port maintainers when their - port fails to build 5 times in a row. This feature is currently - experimental, and further code changes will be needed to - stabilize it.

- -
- - - Wireless Networking Status - - - - - Sam - Leffler - - - sam@FreeBSD.org - - - - -

The goal of this project is to improve the wireless networking support in - the system. By the time of this report the 802.11 link layer code should - be committed. A version of the wi driver that uses this code should be - committed shortly. Conversion of other drivers is planned as are drivers - for new devices.

- -

Support for 802.1x/EAP is the next planned milestone (both as a - supplicant and authenticator).

- -
- - - FreeBSD Release Engineering - - - - - Scott - Long - - - re@FreeBSD.org - - - - - Release Engineering - Homepage - - - -

November and December were especially busy for the release engineering - team. Scott Long joined the team to help with secretary and - communications tasks while Brian Somers bowed out to focus on other - projects.

- -

FreeBSD 5.0-DP2 was released in November after much delay and - anticipation, and marked the final milestone needed for 5.0 to - become a reality. Shortly after that, we imposed a code freeze on - the HEAD branch of CVS and released 5.0-RC1. Creation of the - RELENG_5_0 branch came next, followed by the release of 5.0-RC2 from - this branch. At this point, enough critical problems still existed - that we scheduled an RC3 release for the new year, and pushed the - final 5.0-RELEASE date to mid-January. By the time this is published, - FreeBSD 5.0-RELEASE should be a reality.

- -

For the time being, there will not be a RELENG_5 (aka 5-STABLE) - branch. FreeBSD 4.x releases will continue, with 4.8 being - scheduled for March 2003. Release in the 4.x series will be - lead by Murray Stokely, and releases in the 5.x series will be - lead by Scott Long. Once HEAD has reached acceptable performance - and stability goals, the RELENG_5 branch will be created and HEAD - will move towards 6.0 development. We hope to reach this with - the 5.1 release this spring.

- -
- - - SMP aware scheduler - - - - - Jeff - Roberson - - - jeff@FreeBSD.org - - - - -

A new scheduler will be available as an optional component along side - the current scheduler in the 5.1 release. It has been designed to - work well with KSE and SMP. Some ideas have been borrowed from solaris - and linux along with many novel approaches. It has O(1) performance - with regard to the number of processes in the system. It also has - cpu affinity which should provide a speed boost for many applications.

- -

The scheduler has a few loose ends and lots of tuning before it is - production quality although it is quite stable. Please see the post - to arch and subsequent discussion for more details.

- -
-
diff --git a/en/news/status/report-2003-01-2003-02.xml b/en/news/status/report-2003-01-2003-02.xml deleted file mode 100644 index ea003affd0..0000000000 --- a/en/news/status/report-2003-01-2003-02.xml +++ /dev/null @@ -1,704 +0,0 @@ - - - - - - - - January-February - 2003 - - -
- Introduction: - -

Another busy two months have passed in the FreeBSD project. With - 5.0 released, attention is focusing on making it faster via more - fine-grained locking, adding more high-end features like large - memory (PAE) support for i386, and further progress on many other - projects. FreeBSD 5.1 is expected to ship in late May or early - June, with 5.2 following at the end of summer. A roadmap for - the push to 5-STABLE is available at - http://www.FreeBSD.org/doc/en/articles/5-roadmap. Although - the 5.x series isn't expected to fully stabilize until the 5.2 - release, 5.1 promises to be an exciting release and a significant - improvement over 5.0 in terms of speed and stability.

- -

Not to be forgotten, FreeBSD 4.8, the latest in the 4-STABLE - series, is nearing release. Lots of last minute work is going - into to it to deliver features like XFree86 4.3.0, Intel - HyperThreading(tm) support, and of course many more bug fixes. - Don't forget to support the FreeBSD vendors and developers by - buying a copy of the CD set when it comes out!.

- -

Thanks,

- -

Scott Long, Robert Watson

-
- - - FreeBSD/MIPS Status Report - - - - - Juli - Mallett - - jmallett@FreeBSD.org - - - - - FreeBSD/MIPS project - page. - FreeBSD/MIPS - platform page. - - - -

Large portions of headers have been filled in, all have been stubbed - out. Minimal functions and data elements have been stubbed out or - filled in. Machinery added to support some requisite tunables for - building real kernels. GCC fixed to generate correct local label - prefixes making it possible to link real kernels. Work begun on - providing enough to create and boot real kernels, on real hardware. - Decision to only support MIPS-III and above made.

- -
- - - BSDCon 2003 - - - - - Gregory - Shapiro - - gshapiro@FreeBSD.org - - - - - - BSDCon 2003 Call For Papers - - - - -

The BSDCon 2003 Program Committee invites you to contribute - original and innovative papers on topics related to BSD-derived - systems and the Open Source world. Topics of interest include - but are not limited to:

- -
    -
  • Embedded BSD application development and deployment
  • -
  • Real world experiences using BSD systems
  • -
  • Using BSD in a mixed OS environment
  • -
  • Comparison with non-BSD operating systems; technical, practical, licensing (GPL vs. BSD)
  • -
  • Tracking open source development on non-BSD systems
  • -
  • BSD on the desktop
  • -
  • I/O subsystem and device driver development
  • -
  • SMP and kernel threads
  • -
  • Kernel enhancements
  • -
  • Internet and networking services
  • -
  • Security
  • -
  • Performance analysis and tuning
  • -
  • System administration
  • -
  • Future of BSD
  • -
- -

Submissions in the form of extended abstracts are due by - April 1, 2003. Be sure to review the extended abstract - expectations before submitting. Selection will be based on the - quality of the written submission and whether the work is of - interest to the community.

- -

We look forward to receiving your submissions!

- - -
- - - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - - Maksim - Yevmenkin - - m_evmenkin@yahoo.com - - - - - Latest snapshot - Linux BlueZ stack - OpenOBEX - - - -

I'm very pleased to announce that another release is available for - download at - http://www.geocities.com/m_evmenkin/ngbt-fbsd-20030305.tar.gz

- -

This release features new in-kernel RFCOMM implementation that - provides SOCK_STREAM sockets interface. This makes old user-space - RFCOMM daemon obsolete. People should not use old user-space - RFCOMM daemon any longer. The release features new RFCOMM PPP - daemon that supports DUN and LAN profiles. Note: PPP patch - (support for chat scripts in -direct mode) is required for DUN - support. Look for it in the mailing list archive or contact me - directly. People with Bluetooth enabled cell phones can now - use them to access Internet.

- -

The Bluetooth sockets layer has been cleaned up. People should not - see any WITNESS complaints with new code. Locking issues have been - revisited and code in much better shape now, although it probably - is not 100% SMP ready just yet. The code should work on SMP system - anyway because sockets layer is still under Giant.

- -

The simple OBEX server and client (based on OpenOBEX library) is - complete. OBEX File Push and OBEX File Transfer profiles work and - have been tested with Sony Ericsson T68i cell phone and Bluetooth - 3COM stack on Windows2K. It is now possible to send pictures, - address book and calendar entries from the cell phone via - Bluetooth. Minor bug in OpenOBEX library has been fixed and OPEX - Put-Empty command now works.

- -

Due to changes in API userland tools must be in sync with the - kernel. People should install new include files, recompile and - reinstall all userland tools as part of upgrade. I'm sorry about - that.

- -
- - - FreeBSD 4.8 Release Engineering - - - - - Murray - Stokely - - re@FreeBSD.org - - - - - FreeBSD - 4.8 Release Schedule. - - - -

The FreeBSD 4.8 Release Process is well underway. The RELENG_4 - branch has been under code freeze since February 15, and - the first release candidates were made available in early March. - A testing guide has been put together and is available from - http://www.FreeBSD.org/releases/4.8R/qa.html.

- -

Developers should coordinate with re@FreeBSD.org about any - changes they would like to include in this release, and users - are encouraged to try out the release candidates and help find - as many bugs as possible now, before the final release is - made.

- -

FreeBSD 4.8 represents the newest production release from the - stable '4.X' branch. It does not include all of the features - that were made available in the "new technology" 5.0 - release in January.

- -
- - - New Doceng Body Formed - - - - - Murray - Stokely - - doceng@FreeBSD.org - - - - - - - - -

The doceng@ team is a new body to handle some of the - meta-project issues associated with the FreeBSD Documentation - Project. The main responsibilities of this team are to grant - approval of new doc committers, to manage the doc release - process, to ensure the documentation toolchains are functional, - to maintain the doc project primer, and to maintain the sanctity - of the doc/ and www/ trees. The current members of this team - are Nik Clayton, Ruslan Ermilov, Jun Kuriyama, Bruce A. Mah, and - Murray Stokely.

- -
- - - KGI/FreeBSD Status Report - - - - - Nicholas - Souchu - - nsouch@FreeBSD.org - - - - - - - - - -

The later months have been very busy on KGI. Most of the framework - has been debugged for typical usage (fb, no accel). I got - KII (the input interface) connected to syscons through atkbd. Opening - /dev/graphic works and framebuffer resource access is permitted. - Finally, the KGIM (KGI module) framework has a better building - tree for board / monitor drivers and board drivers are now loading - with resource allocation.

- -

Most important on the TODO list: - 5.0-RELEASE move (I currently work with a May-2002 5.0-current). - Most of debug is now done. Let's validate!

- -

Note that KGI project homepage has changed since the last report.

- -
- - - jpman project - - - - - Kazuo - Horikawa - - horikawa@FreeBSD.org - - - - - jpman project - package ja-man-doc-5.0.tbz - - - -

We have released Japanese translation of 5.0-RELEASE online manual - pages on February 2nd. Most of entries which did not exist on RELENG_4 - were not yet translated. I hope we can finish such entries soon.

- -
- - - Disk I/O improvements - - - - - Poul-Henning - Kamp - - phk@FreeBSD.org - - - - - - - -

We have the first disk device driver (aac) out from under Giant - now, and in certain scenarios it gives improvements up to 20%. - The device driver API was pruned to reflect that NO_GEOM - compatibility is unnecessary, this resulted in approx 1000 - lines less source code, the majority of which were removed - from the device drivers. The new API for cdevsw is a lot simpler - and hopefully less likely to confuse people. The ability to - automatically allocate a device major number has been introduced - and is already used by a handful of drivers. Checks introduced - with this facility has shown that the uniqueness of manually - allocated major numbers had already broken down.

- -

Work continues on the statistics collection API and on a unified - API for manual configuration of GEOM nodes.

- -
- - - Support for PAE and >4G ram on x86 - - - - - Jake - Burkholder - - jake@FreeBSD.org - - - - -

Support for PAE is mostly complete, and has been checked into the - jake_pae branch. The approach that is being taken to add support for - PAE is to allow the pmap module to view the page table directory as 4 - pages instead of 1, and to avoid using the 3rd level structure, the page - directory pointer table, as much as possible. Due to its small size, 32 - bytes, the PDPT cannot be uniformly recursively mapped, and as such does - not provide a regular multi level structure like the page tables used by - the alpha or x86-64 architectures. What remains to be done for PAE - support is to develop an API for manipulating page table entries which - will allow idempotent 64 bit loads and stores to be used where - necessary.

- -

Experimental support for >4G ram using PAE has been developed and - checked into the jake_pae_test branch in Perforce. This involved adding - a physical address type separate from virtual addresses, for use by the - vm system and bus code which needs to use physical addresses directly. - Initial testing has shown good results with device drivers that can dma - to 64 bit physical addresses.

- -

Funding for this project is being provided by DARPA and Network - Associate Laboratories, and hardware support by - FreeBSD Systems.

- -
- - - FreeBSD Security Officer Team - - - - - Jacques - Vidrine - - nectar@FreeBSD.org - - - - - - - - -

In the period from September 2002 through February 2003, the - FreeBSD Security Team email aliases saw 1297 messages, a much - smaller volume than over the summer (remember the Apache and OpenSSL - worms? 4.6.1 oops I mean 4.6.2-RELEASE?).

- -

Also during this period: 95 items were added to the SO - issue-tracking database; 39 of these involved the FreeBSD base - system while the rest involved ports. 9 new Security Advisories - were published, 2 of which covered issues unique to FreeBSD.

- -

In January, the SO published a new PGP key (ID 0xCA6CDFB2, found - on the FTP site and in the Handbook). This aligned the set of those - who possess the corresponding private key with the membership of the - security-officer alias published on the FreeBSD Security web site. - It also worked around an issue with the deprecated PGP key being - found corrupted on some public key servers.

- -

In February, Mike Tancsa of Sentex donated two machines to - the Security Officer. These have been a great help already in - testing the security branches, preparing patches, and generating - updated binaries. Thank you very much, Mike!

- -
- - - FreeBSD GNOME Project - - - - - Joe - Marcus - - marcus@FreeBSD.org - - - - - Maxim - Sobolev - - sobomax@FreeBSD.org - - - - - Adam - Weinberger - - adamw@FreeBSD.org - - - - - FreeBSD GNOME Project - Homepage. - - - -

FreeBSD 4.8-RELEASE will continue in the tradition of - 5.0-RELEASE, and include GNOME 2 as the default GNOME desktop. - This means that 4.8 will ship with GNOME 2.2.

- -

Following on the heels of the recent GNOME 2.2 release, GNOME 2.3 - snapshots are gearing up. The development schedule is - available from - http://www.gnome.org/start/2.3/. Ports will be - made available the same way they were for the 2.1 development - releases. Stay tuned to freebsd-gnome@ for more details.

- -

We are currently in another ports freeze in preparation for - 4.8-RELEASE. Following the freeze, a new bsd.gnome.mk will - be committed that effectively removes the USE_GNOMENG macro. - This new version will add support for GNOME 2 as well as - setup backward compatibility for ports that have not yet - been converted to the new GNOME infrastructure. People - interested in testing this new Mk file, can check out - the ``ports'' module following the instructions at - - http://www.marcuscom.com:8080/cgi-bin/cvsweb.cgi.

- -
- - - PowerPC Port - - - - - Peter - Grehan - - grehan@FreeBSD.org - - - - -

Work on PowerPC is progressing steadily. The system can now boot - multi-user from the net and disk. ATA-DMA is being integrated with - the ATAng code, and support for older G3 machines is being added.

- -
- - - FreeBSD C99 & POSIX Conformance Project - - - - - Mike - Barcroft - - mike@FreeBSD.org - - - - - FreeBSD-Standards Mailing List - - standards@FreeBSD.org - - - - - - - - - -

January and February were quiet months that saw with them the - addition of some C99 math functions and macros, which include: - fpclassify(), isfinite(), isgreater(), isgreaterequal(), isinf(), - isless(), islessequal(), islessgreater(), isnan(), isnormal(), - and signbit(). Additional C99 math library support is in the - works.

- -
- - - Buffer Cache lockdown - - - - - Jeff - Roberson - - jeff@FreeBSD.org - - - - -

Most of the file system buffer cache has been reviewed and protected. - The vnode interlock was extended to cover some buffer flag fields so - that a separate interlock was not required. The global buffer queue - data structures were locked and counters were converted to atomic ops. - The BUF_*LOCK functions grew an interlock argument so that buffers - could be safely removed from the vnode clean and dirty lists. The - lockmgr lock is now required for all access to buf fields. This was - not strictly followed before because splbio provided the needed - protection.

- -

There are a few areas of code that need to be protected and cleaned up - before giant can be pushed down. Most notably the background write - code is currently unsafe without giant. Also, many of the VM bits that - the buffer cache relies on are not safe. This work has been done with - the expectation that the VM and VFS subsystems will be giant free - soon.

- -
- - - ULE Scheduler - - - - - Jeff - Roberson - - jeff@FreeBSD.org - - - - -

The ULE scheduler has been committed to the 5.0-CURRENT branch. Early - adopters and experimenters are welcome to try it and submit bug - reports. It has shown noticeable performance improvements over the old - scheduler under some workloads. There are currently problems with - nice fairness but otherwise the interactive performance is very good. - More work to improve the load balancing algorithm is required as well. - This should be ready for use by the general FreeBSD user base in the - next month or so.

- -
- - - Read-ahead performance - - - - - Jeff - Roberson - - jeff@FreeBSD.org - - - - -

Some improvements have been made to the clustered read ahead code. They - allow for many more outstanding IO requests when an application does - sequential access. This has a larger impact on RAID systems than on - single disk systems. The maximum number of file system blocks that we - will read ahead is tunable via the 'vfs.read_max' sysctl. This - optimization has shown a 20% improvement in simple tests.

- -
- - - Status Report for Newbus lockdown - - - - - Warner - Losh - - imp@FreeBSD.org - - - - -

Locking of the non-obj parts of newbus is nearing completion. - A single lock is used for the device tree. Minimal changes to - subr_bus have so far been necessary to make this work, however - some lock order issues remain. After this - work, it will no longer be necessary to hold Giant to call - device_* routines safely. kobj work is being done by others and - will likely require more extensive design work to make SMP - friendly.

- -
- - - TCP congestion control - - - - - Jeffrey - Hsu - - hsu@FreeBSD.org - - - - - - - -

The objective of this effort is to improve the performance, stability, - and correctness of the BSD networking stack by adding support for - new standards and standards track proposals while maintaining compliance - with existing specifications. The upcoming 4.8 and 5.1 releases will - be the first ones using the new NewReno logic. Recently, we - implemented the Limited Transmit algorithm (RFC 3042) which benefits - connections with small congestion windows, as happens, for example, - on many short web connections. We also recently added support for larger - sized starting congestion windows as described in RFC 3390. This helps - short TCP connections as well as those with large round-trip delays, - such as those over satellite links.

- -
- - - SMP locking for network stack - - - - - Jeffrey - Hsu - - hsu@FreeBSD.org - - - - - - - -

The list of subsystems locked up include IP, UDP, TCP, - ifaddr reference counting, syncache, the ifnet list, routing - radix trees, and ARP. These have already been committed into the tree. - In addition, SMP locking for raw IP, divert socket processing, - and Unix domain sockets have also recently been completed and tested. - Work is currently being done in some of the subsystems required - to make parallel networking processing SMP-safe.

- -
- -
diff --git a/en/news/status/report-2003-03-2003-09.xml b/en/news/status/report-2003-03-2003-09.xml deleted file mode 100644 index 77fda667b1..0000000000 --- a/en/news/status/report-2003-03-2003-09.xml +++ /dev/null @@ -1,974 +0,0 @@ - - - - - - - - March-September - 2003 - - -
- Introduction: - -

The FreeBSD Bi-monthly status reports are back! In this edition, we - catch up on seven highly productive months and look forward to - the end of 2003.

- -

As always, the FreeBSD development crew has been hard at work. Support - for the AMD64 platform quickly sprang up and is nearly complete. KSE - has improved greatly since the 5.1 release and will soon become the - default threading package in FreeBSD. Many other projects are in the - works to improve performance, enhance the user experience, and expand - FreeBSD into new areas. Take a look below at the impressive summary of - work!

- -

Scott Long, Robert Watson

-
- - - VideoBSD - - - - - John-Mark - Gurney - - jmg@FreeBSD.org - - - - - Documentation of - VideoBSD - - - -

Still in the planning stage. Working on creating an extensible - interface that is usable for both userland and kernel implementations - for device drivers. Deciding on how to interface userland implemented - device drivers with applications.

- -
- - - KSE - - - - - Dan - Eischen - - deischen@FreeBSD.org - - - - - David - Xu - - davidxu@FreeBSD.org - - - - - KSE Project - Page - - - -

KSE seems to be working well on x86, amd64, and ia64. The - alpha userland bits are done, but a couple of functions are - unimplemented in the kernel. For sparc64, the necessary - functions are implemented in the kernel, but the userland - context switching functions need more attention.

- -

Since 5.1, efficient scope system threads (no upcalls when they block) - have been implemented, and KSE based pthread library can have both POSIX - scope process threads and scope system threads. It is also possible - that KSE based pthread library can implement pthread both in 1:1 and M:N - mode, I know Dan has such Makefile file patch for libkse not yet - committed.

- -

KSE program now can work under ULE scheduler, its efficient should be - improved under the new scheduler in future. BSD scheduler is still the - best scheduler for current KSE implement.

- -
- - - FreeBSD/ia64 - - - - - Marcel - Moolenaar - - marcel@FreeBSD.org - - - - - Project home - page. - - - -

Much has happened since the last bi-monthly report, which was more - than half a year ago. FreeBSD 5.0 and FreeBSD 5.1 have been released - for example. With FreeBSD 5.2 approaching quickly, we're not going - to look back too far when it comes to our achievements. There's too - much ahead of us...

-

Two milestones have been reached after FreeBSD 5.1. The first is the - ability to support both Intel and HP machines with sources in CVS. - This due to a whole new driver for serial ports, or UARTs. Unfortunately - this still implies that syscons is not configured. That's another task - for another time, but keep an eye on KGI/FreeBSD... - The second milestone is the completion of KSE support. Both M:N and - 1:1 threading is functional on ia64 and the old libc_r library has been - obsoleted. Testing has shown that KSE (i.e. M:N) may well become the - default threading model. It's looking good.

-

The ABI hasn't changed after 5.1 and the expectation is that it won't - change much. This means that we can think about becoming a tier 1 - platform. This also means we need gdb(1) support. Work on it has been - started but the road is bumpy and long. - Kernel stability also has improved significantly and we typically have - one kernel panic remaining: VM fault on no fault entry. This will be - addressed with the long awaited PMAP overhaul (see below).

-

Most work for FreeBSD 5.2 will be "sharpening the saw". Get those - loose ends tied. This is a slight change of plan made possible by a - slip in the release schedule. The 5.2 release is not going to be the - start of the -stable branch; it has been moved to 5.3. So, we use the - extra time to prepare the ground for 5.3.

-

The planned PMAP overhaul will probably be finished after 5.2. This - should address all known issues with SMP and fix those last panics. - As a side-effect, major performance improvements can be expected. More - news about this in the next status reports.

- -
- - - Disk I/O - - - - - Poul-Henning - Kamp - - phk@FreeBSD.org - - - - -

The following items are in progress in the Disk I/O area: - Turn scsi_cd.c into a GEOM driver. (Patch out for review). - Turn atapi-cd.c into a GEOM driver. - Turn fd.c into a GEOM driver. - Move softupdates and snapshot processing from SPECFS to UFS/FFS. - Move userland access to device drivers out of vnodes.

-

Once these preliminaries are dealt with, scatter/gather and - mapped/unmapped support will be added to struct bio/GEOM.

- -
- - - Binary security updates for FreeBSD - - - - - Colin - Percival - - cperciva@daemonology.net - - - - - - - - -

FreeBSD Update is a system for tracking the FreeBSD release - (security) branches. In addition to being faster and more - convenient than source updates, FreeBSD Update also requires - less bandwidth and is more secure than source updates via - CVSup. However, FreeBSD Update is limited; it can only - update files which were installed from an official RELEASE - image and not recompiled locally. Right now I'm publishing - binary updates for 4.7-RELEASE and 4.8-RELEASE; since my - only available box takes 3.5 hours to buildworld, I don't - have enough resources to do any more than that.

- -

In the near future, I'd like to: Find someone who is - willing to donate a faster buildbox; start building updates - for other releases (at a minimum, for all "supported" FreeBSD - releases); add warnings if a file would have been updated - but can't be updated because it was recompiled locally; add - code to compare the local system against a list of "valid" - MD5 hashes for intrusion detection purposes; and add support - for cross-signing, whereby several machines could build - updates independently to protect against buildbox - compromise.

- -
- - - Porting OpenBSD's pf - - - - - Max - Laier - - max@love2party.net - - - - Pyun - YongHyeon - - yongari@kt-is.co.kr - - - - - - http://pf4freebsd.love2party.net - PF homepage - PF FAQ - - - -

The project started this spring and released version 1.0 with a port - installation (security/pf) in may 2003. Version 2.0 is on the doorstep - as OpenBSD 3.4 will be released. Due to the porting efforts we were - able to reveal some bugs in the OpenBSD code and provided locking for - the PFIL_HOOKS, which we utilize. Tarball installation of a loadable - kernel module for testing can be found on the project homepage, a - patchset is in the making.

- -

PF was started at OpenBSD as a substitute for ipfilter and provides - the same function set. However, in the two years it exists now, it has - gained many superior features that no other packet filter has. For a - impression take a look at the pf FAQ.

- -

We hope to be eventually integrated into the base system. Before that - we have to resolve some issues with tcpdump and kame.

- -
- - - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - - Maksim - Yevmenkin - - m_evmenkin@yahoo.com - - - - - Latest snapshot - Linux BlueZ stack - OpenOBEX - - - -

I'm very pleased to announce that another release is available for - download at - http://www.geocities.com/m_evmenkin/ngbt-fbsd-20030908.tar.gz. - I have also prepared patch for the FreeBSD source tree. The patch - was submitted for review to the committers.

- -

Fixed few bugs in kernel modules. The ng_hci(4) and ng_l2cap(4) - modules were changed to fix issue with Netgraph timeouts. The - ng_ubt(4) module was changed to fix compilation issue on -current.

- -

Improved user-space utilities. Implemented new libsdp(3). Added - new sdpcontrol(8) utility. The rfcomm_sppd(1), rfcomm_pppd(8) and - obexapp(1) were changed and now can obtain RFCOMM channel via SDP - from the server. The hccontorol(8) utility now has four new - commands. The hcsecd(8) daemon now saves link keys on the disk.

- -

I've been recently contacted by few individuals who whould like to - port current FreeBSD Bluetooth code to other BSD systems (OpenBSD - and NetBSD). The work is slowly progressing towards - un-Netgraph'ing current code. In the mean time Netgraph version - will be the primary supported version of the code.

- -
- - - - Rescue build infrastructure - - - - - Gordon - Tetlow - - gordon@FreeBSD.org - - - - - Tim - Kientzle - - kientzle@FreeBSD.org - - - - -

The rescue build infrastructure has been committed. There is one - known issue with make using both the '-s' and '-j' flags that appears - to be a bug in make. Anyone interested in tracking down should contact - us.

- -
- - - Dynamically Linked Root Support - - - - - Gordon - Tetlow - - gordon@FreeBSD.org - - - - -

Support for a dynamically linked /bin and /sbin has been committed, - although it is not turned on by default. Adventurous users can try it - out by building /bin and /sbin using the WITH_DYNAMICROOT make flag. - More testing is needed to determine if this is going to be default for - 5.2-RELEASE. If anyone would like to benchmark worldstones with and - without dynamically linked /bin and /sbin, please feel free to do so - and submit the results.

- -
- - - ACPI Status Report - - - - - Nate - Lawson - - njl@FreeBSD.org - - - - - - - - -

Work is continuing on updating ACPI with new features as well - as bugfixing. A new embedded controller driver was written in - July with support for the ACPI 2.0 ECDT as well as more robust - polling support. Also, a buffer overflow in the ACPICA resource list - handling that caused panics for some users was fixed. Marcel - helped get acpidump(8) tested and basically working on ia64.

- -

Upcoming work includes integrating ACPI notifies with devd(8), - committing user-submitted drivers for ASUS and Toshiba hotkeys, - Cx processor sleep states (so my laptop doesn't burn my lap), and - power resource support for intelligently powering down unused or idle - devices.

- -

Users who have problems with ACPI are encouraged to submit a PR - and email its number to acpi-jp@jp.FreeBSD.org. Bug reports - of panics or crashes have first priority and non-working features - or missing devices (except suspend/resume problems) second. - Reports of failed suspend/resume should NOT be submitted as PRs - at this time due to most of them being a result of incomplete - device support that is being addressed. However, feel free - to mail them to the list as any information is helpful.

- -
- - - uart(4) - - - - - Marcel - Moolenaar - - marcel@FreeBSD.org - - - - -

The uart(4) project was born out of the need to have a working - serial interface (i.e. an RS-232-C interface) in a legacy-free - configuration and after an unsuccessful attempt to convert sio(4). - The biggest problem with sio(4) is that it has been intertwined - in many ugly ways into the kernel's core. Conversion could not - happen without breaking something that invariably affects some - group of people negatively. With sio(4) as a good bad example - and a strong desire to solve multiple problems at once, the - idea of an UART (Universal Asynchronuous Receiver/Transmitter) - device that, given its generic name, could handle different - flavors of UART hardware started to settle firmly in the authors - mind.

-

The biggest challenge was of course solving the problem of the - low-level console access prior to the initialization of the bus - infrastructure and still have a driver that uses the bus access - exclusively. Along the way the problem of having an UART function - as the keyboard on sparc64 was solved with the introduction of - system devices, which also encapsulated the console as a system - device.

-

The uart(4) driver can be enhanced to support the various UART - hardware on pc98 and this is currently being worked on. Keyboard - support on sparc64 is underway as well. Plans exist for a rewrite - of the remote gdb support that uses a generic interface to allow - various drivers, including uart(4), to register itself as a - communications channel. And since uart(4) does not support multi- - port cards by itself, we likely need to either enhance puc(4) or - otherwise introduce other umbrella drivers

- -
- - - Compile FreeBSD with Intels C compiler (icc) - - - - - Alexander - Leidinger - - netchild@FreeBSD.org - - - - - Some patches. - - - -

Since I ported icc to FreeBSD I wanted to build FreeBSD with icc. Now - with icc 7.1 (and some patches) it is possible. There are still some bugs, - e.g. NFS doesn't work with an icc compiled kernel, IP seems to be fragile, - and some advanced optimizations trigger an ICE (Intel is working on it). - At the moment I'm waiting for our admins to install icc on the FreeBSD - cluster (we got a commercial license from Intel, so we are allowed to - distribute binaries which are compiled with icc), after that I will try - to convince some people with more knowledge of the IP and NFS parts of - the kernel to debug the remaining problems. When the icc compiled kernel - seems to work mostly bugfree the userland will get the porting focus. - Interested people may try to do a build of the ports tree with icc - independently from the status of the porting of the userland... if this - happens at the FreeBSD cluster, we would also be allowed to distribute - the binaries.

-

Benefits include: another set of compiler errors (debugging help), - more portable source, and code which is better optimized for a P4 (gcc - has some drawbacks in this area)

- -
- - - KDE FreeBSD Project - - - - - KDE-FreeBSD - Mailinglist - - kde@FreeBSD.org - - - - - - - - -

The FreeBSD ports were updated to KDE 3.1.4, another bug- and - security-fixes release. With this update, the QT port was updated - to version 3.2. Both will be included in FreeBSD 4.9. - Significant work was spent to fix KDE on FreeBSD-CURRENT after the - removal of the gcc -pthread Option. Automatic package builds from - KDE CVS continued to ensure and improve the quality of the upcoming - KDE 3.2 release.

- -

Future: Work is in progress to setup a new server for hosting the - KDE-FreeBSD Website, Repository and another KDE CVS mirror. With - help from Marcel Moolenaar the project will try to make KDE compile - and working on the Intel IA64. And last but not least efforts are - being made to fix the currently broken kdesu program.

- -
- - - - WifiBSD Status Report - - - - - Jon - Disnard - - masta@wifibsd.org - - - - - www.wifibsd.org - - - -

WifiBSD is a miniture version of FreeBSD for wireless applications. - Originally for the Soekris Net45xx line of main-boards, but is now - capable of being targeted to any hardware/architecture FreeBSD itself - supports. Although not feature complete, WifiBSD is expected to be - ready for 5.2-RELEASE. The design goal is to meet, or exceed, the - functionality of commercial/consumer 802.11 wireless gear. Features - that need attention (to name just a few) are: http interface, consol - menu interface, and installation. Volunters are welcome.

- -
- - - PowerPC Port - - - - - Peter - Grehan - - grehan@FreeBSD.org - - - - -

Work has restarted after a hiatus. Current focus is on getting - loadable modules working, NEWBUSing the NetBSD dbdma code, and - completing the BMAC ethernet driver.

- -

There is a huge amount of work to do. Volunteers more than welcome!

- -
- - - AMD64 Porting - - - - - Peter - Wemm - - peter@FreeBSD.org - - - - -

The last known bug that prevented AMD64 machines completing a - full release has been fixed - one single character error that - caused ghostscript to crash during rendering diagrams. SMP work - is nearing completion and should be committed within the next few - days. The SMP code uses the ACPI MADT table based on John Baldwin's - work-in-progress there for i386. We need to spend some time on - low level optimization because there are several suboptimal places - that have been ignored for simplicity, context switching in - particular. MTRR support has been committed and XFree86 can use - it. cvsup now works but the ezm3 port has not been updated yet. - The default data segment size limit is 8GB instead of 512M, and - the (primitive) i386 binary emulation support knows how to lower - the rlimits for executing 32 bit binaries.

- -

Notable things missing still: Hardware debug register support - needs to be written; gdb is still being done as an external - set of patches relative to the not-yet-released FSF gdb tree; - DDB does not disassemble properly; DDB cannot do stack traces - without -fno-omit-frame-pointer - a stack unwinder is needed; - i386 and amd64 linux binary emulation is needed, and the i386 - FreeBSD binary emulation still needs work - removing the - stackgap code in particular.

- -

The platform in general is very reliable although a couple of - problems have been reported over the last week. One appears to - be a stuck interrupt, but all that code has been redone for SMP - support.

- - -
- - - bsd.java.mk version 2.0 - - - - Ernst - De Haan - - znerd@FreeBSD.org - - - - Herve - Quiroz - - herve.quiroz@esil.univ-mrs.fr - - - - Project homepage - - -

The FreeBSD Java community has started an effort to improve the - current framework for Java-based ports. The main objective is the - automation of JDK/JRE build and run dependency checking.

-

The original version was aimed to ease the life of porters. Although - it has proved to be useful and reliable to a great extend, we are - currently working on a new version. We intend to reach a high degree - of flexibility to cope with the recent increase of available JDK/JRE - flavors. Furthermore, the new version will be easier to maintain, - which means improved reliability, and hopefully more frequent - updates.

- -
- - - FreeBSD Java Project - - - - - Greg - Lewis - - glewis@FreeBSD.org - - - - - FreeBSD Java Project - - - -

The BSD Java Porting Team has recently reached an exciting milestone - with the release of the first "Diablo" JDK and JRE courtesy of the - FreeBSD Foundation. The release of Diablo Caffe and Diablo Latte - 1.3.1 was the first binary release of a native FreeBSD JDK since - 1.1.8 and marks an important step forward in FreeBSD Java support.

- -

The team is continuing development work, with a focus on achieving - a compliant JDK 1.4 release in the near future.

- -
- - - ATAPI/CAM Status Report - - - - - Thomas - Quinot - - thomas@FreeBSD.org - - - - -

With the introduction of ATAng, some users of ATAPI/CAM have - experienced various problems. These have been mostly tracked down - to issues in the new ATA code, as well as two long-standing problems - in portions of the CAM layer that are rarely exercised with - "real" SCSI SIMs. This has also been an occasion to cleanup - ATAPI/CAM to make it more robust, and to enable DMA for devices - accessed through it, resulting in improved performances.

- - -
- - - jpman project - - - - - Kazuo - Horikawa - - - horikawa@FreeBSD.org - - - - - jpman project - package ja-man-doc-5.1.tbz - - - -

We have released Japanese translation of 5.1-RELEASE online manual - pages on June 10.

- -
- - - FreeBSD ports monitoring system - - - - - Mark - Linimon - - linimon_at_lonesome_dot_com - - - - - - FreeBSD ports monitoring system - - - -

Several months ago, I took it upon myself to to try present the - information contained on the bento - build cluster to be presented in a more user-friendly fashion; that - is, to be browsed by error type, by maintainer, and so forth. An early - addition was code to attempt to classify ports PRs by either "existing - port" (after assiging the most likely category and portname); "new port"; - "framework" (e.g. bsd.port.mk changes); and "unknown". Various columns - about the ports PRs were added to the reports.

- -

The initial intent of this was to make life easier for ports - maintainers; however, the "general" reports are also useful to anyone who - just wants to, e.g., find out if a particular port is working on their - particular architecture and OS combination before downloading it. Those - with that general interest should start with the - - overview of one port.

- -
- - - kgi4BSD Status Report - - - - - Nicholas - Souchu - - nsouch@FreeBSD.org - - - - - Project URL - - - -

A lot of work done since last report: site reworked completly (see new - URL), console design with console message in text or graphic modes - implemented, implementation of a compatibility layer to compile Linux - fbdev drivers with more or less changes in the original driver - (experimental).

- -

Except some memory allocation bugs, X (XGGI based on XFree 3.3.6) is - now working with the same driver as the console. A basic terminal has - now to be implemented.

- -

Volonteers are welcome to the project...

- - -
- - - Device_t locking - - - - - Warner - Losh - - imp@FreeBSD.org - - - - -

A number of races have been identified in locking device_t. - Most of the races have been identified in making device_t have to - do with how drivers are written. Efforts are underway to identify - all the races, and to contact the authors of subsystems that can - help the drivers. Of special concern is the need for the driver - to ensure that all threads are completely out of the driver code - before detach() finishes. Of additional concern is making sure - that all sleepers are woken up before certain routines are called - so that other subsystems can ensure the last condition and leave - no dangling references. Locking device_t is relatively straight - forward apart from these issues. Towards the end of proper - locking, sample strawmen drivers are being used to work out what, - exactly proper is. Once these issues are all known and documented - in the code, efforts will be made to update relevant documentation - in the tree. There are many problems with driver locking that has - been done to date, but until we nail down how to write a driver in - current, it will be premature to contact specific driver writers - with specific concerns.

- - -
- - - Cryptographic Support - - - - - Sam - Leffler - - sam@FreeBSD.org - - - - -

Support for several new crypto devices was added. The SafeNet 1141 is a - medium performance part that is not yet available on retail products. The - Hifn 7955 and 7956 parts are starting to appear on retail products that - should be available by the end of the year. Both devices support AES - encryption. Support for public key operations for the SafeNet devices was - recently done for OpenBSD and will be backported. Public key support for - the Hifn parts is planned.

- -

A paper about the performance work done on the cryptographic subsystem - was presented at the Usenix BSDCon 2003 conference and received the best - paper award.

- -

NetBSD recently imported the cryptographic subsystem.

- -
- - - Release Engineering Status - - - - - Scott - Long - - re@FreeBSD.org - - - - -

The release of 4.9 is just around the corner and offers Physical Address - Extensions (PAE) for x86 along with the same world-class stability and - performance that is expected from the 4-STABLE series. As always, don't - forget to purchase a copy of the CD set from your favorite FreeBSD - vendor.

- -

FreeBSD 5.1 was released in June and offered vastly improved - stability over 5.0 along with a working implementation of Kernel - Scheduled Entities, allowing for true multithreading of applications - across multiple CPUs. FreeBSD 5.2 will be released by the end of 2003 - and will focus on improved network and overall performance.

- - -
- - - Wireless Networking Support - - - - - Sam - Leffler - - sam@FreeBSD.org - - - - -

Numerous bugs have been fixed since the last status report (and of - course a few new ones added). Progress on improved security has been - slowed by other work. But new features and fixes are coming in from - other groups that are now sharing the code. In particular NetBSD - recently imported the revised 802.11 layer and the Linux-based MADWIFI - project is using it too (albeit in an older form). The MADWIFI users - have already contributed features such as fragmentation reassembly of - 802.11 frames and improved signal monitoring. Power save polling and - an improved rate control algorothm are expected to come in from the - NetBSD folks. WPA support is still in the plans; the best estimate is - that work on that will start in January.

- - -
- - - Network Subsystem Locking and Performance - - - - - Sam - Leffler - - sam@FreeBSD.org - - - - -

The purpose of this project is to improve performance of the network - subsystem. A major part of this work is to complete the locking of the - networking subsystem so that it no longer depends on the "Giant lock" - for proper operation. Removing the use of Giant will improve - performance and permit multiple instances of the network stack to - operate concurrently on multiprocessor systems.

- -

This project started in August. The emphasis has been on locking the - "lower half" of the networking code so that packet forwarding through the - IPv4 path can operate without the Giant lock as part of the 5.2 release. - To this end locking was added to several network interface drivers and - much of the "middleware" code in the network was locked (e.g. ipfw, - dummynet, then routing table, multicast routing support, etc). Work - towards this goal is still ongoing but should be ready for 5.2. A - variety of test systems have been running for several months without the - Giant lock in the network drivers and IP layer.

- -

Past the 5.2 release Giant will be removed from the "upper half" of the - network subsystem and the socket layer. Once this is done the plan is to - measure and improve performance (though some work of this sort is always - happening). The ultimate goal is a system that performs at least as well - as 4.x for normal use on uniprocessor systems. On multiprocessor systems - we expect to see significantly better performance than 4.x due to greater - concurrency and reduced latency.

- - -
- -
diff --git a/en/news/status/report-2003-10-2003-12.xml b/en/news/status/report-2003-10-2003-12.xml deleted file mode 100644 index a07e49c033..0000000000 --- a/en/news/status/report-2003-10-2003-12.xml +++ /dev/null @@ -1,1365 +0,0 @@ - - - - - - - - October-December - 2003 - - -
- Introduction: - -

The FreeBSD status reports are back again with the 2003 year-end - edition. Many new projects are starting up and gaining momentum, - including XFS, MIPS, PowerPC, and networking locking and - multithreading. The end of 2003 also saw the release of FreeBSD 4.9, - the first stable release to have greater than 4GB support for the - ia32 platform. Work on FreeBSD 5.2 also finished up and was released - early in January of 2004. Many thanks to all of the people who - worked so hard on these releases and made them happen.

- -

This is the largest status report ever, so read and enjoy!

- -

Scott Long, Robert Watson

- -
- - - libarchive, bsdtar - - - - - Tim - Kientzle - - kientzle@FreeBSD.org - - - - - - - - -

The libarchive library, which reads and writes tar and cpio - archives, is about ready to commit to the tree. The bsdtar - program, built on libarchive, is also nearing completion and - should soon be a worthwhile successor to our aging GNU tar. I - plan a gradual transition during which "bsdtar" and "gtar" will - coexist in the tree.

- -

Oddly enough, libarchive and bsdtar are the first fruits of a - project to completely rewrite the pkg tools. I've started - architecting a libpkg library for handling routine package - management and have a prototype pkg_add that is three times faster - than the current version.

- -
- - - Publications Page Update - - - - - Josef - - El-Rayes - - - josef@daemon.li - - - - - Updated Publications Page - - - -

I did a xml/xslt conversion of the html files to make maintaining - of the page more comfortable. I removed the cdsets, which might be - kept in CVS or some kind of archive for historical reasons. The books - got an update, and were categorized in respect to the language they - are written in. As soon as I get my access on the cvs repository I - will commit the updates. People are encouraged to add local FreeBSD - books, I missed, especially in the asian area. Feel free to send me - links to books to add.

- -
- - - DVB-ASI Support - - - - - Vincent - - Jardin - - - Vincent.Jardin@6wind.com - - - - - Home page and source code - Computer Modules - - - - -

DVB ASI stands for Digital Video Broadcast - Asynchronous Serial - Interface. It is the standard defined to send and receive DVB stream - from Satellite (DVB-S), Terrestrial link (DVB-T), and TV Cable - (DVB-C). This standard was developed in Europe to transport 188-byte - MPEG cells and 204-byte MPEG cells. However it can be used to carry IP - over DVB too.

- -

The FreeBSD driver uses the newbus amd the bus-dma API. It means that it - could be easily ported to all the BSD flavors (NetBSD, OpenBSD).

- -

It uses the same API than the Linux DVB ASI support from - ComputerModules that is based on the following devices: -

    -
  • /dev/asitxN for the transmit stream (only open, write, select, - close and ioctl are supported)
  • -
  • /dev/asirxN for the receive stream (only open, read, select, close - and ioctl are supported)
  • -
- It means that software such as Videolan that support DVB-ASI - broadcasting could be supported by this driver.

- -

Special thanks to Tom Thorsteinson from Computer Modules who helped - 6WIND to port their driver. It is used by 6WIND in order to provide - IPv4, IPv6, Ethernet and our network services over DVB.

- -

Copyright 2003-2004, 6WIND

- -
- - - FreeBSD ports monitoring system - - - - - Mark - - Linimon - - - linimon_at_lonesome_dot_com - - - - - FreeBSD - ports monitoring system - - - -

Enhancements continue to be made to the system. Several, - including improvements to the PR classification algorithm, the - ability to more correctly guess when a PR has been updated, and - better handling of errors in both port Makefiles and the bento - builds, are invisible to end-users. However, the addition of - a "repocopy" classification is notable, as is the allowing the - wildcard search in "overview of one port" (thanks to edwin@ for - the shove in that direction.) Additionally, logic has been - added to identify the proposed category/portname of new ports, - with the goal being to quickly identify possible duplications - of effort. (Some SQL performance was sacrificed to this goal, - leading to some pages to load more slowly; this needs to be - fixed.)

- -

The other work has been on an email back-end to allow the - occasional sending of email to maintainers. Two functions are - currently available: "remind maintainers of their ports that - are marked BROKEN", and "remind maintainers of PRs that they - may not have seen." A recent run of the former got generally - good response, especially as changing some cases of BROKEN to - IGNORE (PR ports/61090) had removed almost all the annoying - false positives. However, work remains to try to find out why - a few allegedly broken ports only fail in certain environments - (including the bento cluster).

- -

The next plan is to use the proposed DEPRECATED Makevar (see - ports/59362) to create a new report to allow querying of "ports - currently slated to be removed". This report could also be - posted to ports@ periodically with minimal work. The author - believes that doing this would allow the port deprecation process - to be much more visible to the general FreeBSD user community.

- -
- - - Compile FreeBSD with Intels C compiler (icc) - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - Some patches - - - -

The FreeBSD kernel now builds and runs fine with icc v7 (only GENERIC - and a custom kernel tested so far). A review on arch@ revealed no - major concerns and some src committers are willing to commit the - patches. As icc v8 is out and defines __GNUC__ I want to rework the - patches before they get committed so an icc v8 compiled kernel DTRT - too.

-

A complete build of the ports collection (as of start of December) - finished and is under review to determine the reason of build - failures. Current icc stats: -

    -
  • 1108 failed builds (excluding build failures because of failed - dependencies)
  • -
  • 3535 successfully build packages (~ 1.7 GB)
  • -
- A parallel build with gcc on the same snapshot of the - ports collection has: -
    -
  • 520 failed builds (excluding build failures because of failed - dependencies)
  • -
  • 7261 successfully build packages (~ 4.8 GB)
  • -
-

-

The above mentioned build of the ports collection was run on a P4 - with a icc compiled kernel (optimized for a P4). No kernel panics or - other strange behavior was noticed. The ports collection was build - with a CPUTYPE of p4 and CFLAGS set to "-Os -pipe -mfpmath=sse -msse2" - in the gcc and "-O2" in the icc case. No package is tested for correct - run-time behavior so far.

- - -
- - - Porting OpenBSD's pf - - - - - Max - Laier - - max@love2party.net - - - - Pyun - YongHyeon - - yongari@kt-is.co.kr - - - - - - PF homepage - PF FAQ - - - -

Much work has been invested into getting release 2.00 stable. It - provides the complete OpenBSD 3.4 function set, as well as fine - grained locking to work with a giant free network stack.

-

pf provides: IPv6 filtering and normalization, "syn-proxy" - to protect (web)server against SYN-floods, passive OS detection, fast - and modular address tables, source/policy routing, stateful filter and - normalization engine, structured rulesets via anchors and many many - more. Especially in connection with ALTQ, pf can help to harden - against various flood attacks and improve user experience.

-

New features from OpenBSD-Current like: state synchronization over wire - and enhanced support for cloned interfaces require patches to the - kernel. We are trying to resolve this issue and start - OpenBSD-Current tracking again as soon as possible.

- -
- - - Binary security updates for FreeBSD - - - - - Colin - - Percival - - - cperciva@daemonology.net - - - - - - - - -

Thanks to recent donations, I am now building binary security - updates for FreeBSD {4.7, 4.8, 4.9, 5.0, 5.1, 5.2}-RELEASE. - (Note that FreeBSD 4.7 and 5.0 are no longer officially - supported; any advisories which are not reflected in the CVS - tree will likewise not result in binary updates.)

- -

The current version (1.5) of FreeBSD Update will warn about - locally modified files and will, by default, leave them - untouched; if a "distribution branch", (i.e. crypto, nocrypto, - krb4, or krb5) is specified, FreeBSD Update can be forced to - "update" files which have been compiled locally.

- -

The only major issue remaining with FreeBSD Update is the - single-point-of-failure of the update building process; I - would like to resolve this in the future by having several - machines cross-verify and cross-sign, but this will require - a significant investment of time, and will probably have to - wait until I've finished writing my DPhil thesis.

- -
- - - SGI XFS port for FreeBSD - - - - - Alexander - - Kabaev - - - kan@FreeBSD.org - - - - Russell - - Cattelan - - - cattelan@thebarn.com - - - - -

A project was started to revive a stalled effort to port SGI XFS - journaling filesystem to FreeBSD. The project is based on Linux - development sources from SGI and is currently being kept in a - private Perforce repository. The work is progressing slowly due - to lack of free time. At the moment we have XFS kernel module - which is capable of mounting XFS filesystems read-only, with a - panic or two happening infrequently, that need to be isolated and - fixed. Semi-working metadata updates with full transaction support - are there too, but will probably have to be rewritten to minimize - the amount of custom kernel changes required.

- -

We seek volunteers to help with userland part of the port. Namely, - existing xfsprogs port needs to be cleaned up, incompletely ported - utilities brought into a working shape. xfs_dump/xfs_restore and - as much from xfstests suite as possible need to be ported too. We do - not need testers for now, so please to not ask for module sources - just yet.

- - -
- - - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - - - Maksim - - - - Yevmenkin - - - - m_evmenkin@yahoo.com - - - - -

Not much to report. Bluetooth code was integrated into the FreeBSD - source tree. Bluetooth kernel modules appear to be stable. I have - received few success stories from the users.

- -

During last few months the efforts were to make Bluetooth code - more user friendly. Bluetooth Service Discovery Procotol daemon - sdpd was reimplemented under BSD-style license and committed. The - next step is to integrate existing Bluetooth utilities with SDP.

- -

Thanks to Matt Peterson <matt at peterson dot org> I now have - Bluetooth keyboard and mouse for development. I'm currently - working on Bluetooth HID profile implementation.

- -

Dave Sainty <dave at dtsp dot co dot nz> from NetBSD project - offered his help in porting Bluetooth stack to NetBSD.

- -
- - - Network interface naming changes - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - -

At the end of October, the if_name and if_unit members of struct - ifnet were replaced with if_xname from NetBSD and if_dname and - if_dunit. These represent the name of the interface and the - driver name and instance of the interface respectively. Other then - breaking IPFilter for a few weeks due to the userland being on the - vendor branch, this change went quite well. A few ports needed - minor changes, but otherwise nothing changed from the user - perspective.

- -

The purpose of this change was the lay the groundwork for support - for network interface renaming and to allow the implementation of - more interesting pseudo interface cloning support. An example of - interesting cloning support would be using "ifconfig fxp0.20 - create" to create and configure a vlan interface on fxp0 that - handled frames marked with the tag 20. Interface - renaming is being worked on in Perforce at the moment with a - working version expected for review soon. Support for enhanced - device cloning is still in the planing stage.

- -
- - - Kernel Tunables Documentation Project - - - - Tom - Rhodes - - trhodes@FreeBSD.org - - - - - The - problem report which kicked this project in action - - - -

FreeBSD has well over a few hundred tunables without - documentation. This project aims at designing an - automated process to rip all available tunables and generate - a manual page based on the selected kernel options. - The ideal implementation, however; would gather tunables - from the LINT kernels as well. This would provide a - default manual page for all supported architectures. - A simple tool has been forged from the various off-list - and on-list discussions and is waiting review from the - -doc team. Anyone interesting in reviewing my current - work is requested to get in contact with me.

- -
- - - jpman project - - - - - Kazuo - Horikawa - - - horikawa@FreeBSD.org - - - - - jpman project - - - -

We have been updating existing Japanese translations - of manual pages to meet the 5.2-RELEASE schedule. - Also, 22 new translations were complete during this period.

- -
- - - FreeBSD MIDI - - - - - Mathew - - Kanner - - - matk@FreeBSD.org - - - - -

This project aims to update the current MIDI implementation. We - are currently looking at removing the current code sometime in - February and importing the new version soon after. I'm currently - working on a kernel/timidity bridge for those without external - hardware.

- - -
- - - The FreeBSD Russian Documentation Project - - - - - Andrey - - Zakhvatov - - - andy@FreeBSD.org - - - - - The FreeBSD Project [Russian] - - - -

The FreeBSD Russian Documentation Project aims to provide FreeBSD - Documentation translated to Russian. Already done: FAQ, Porters - Handbook, WWW (partially synched with English version), some - articles.

- -

We working at Handbook (and more docs) translation and synchronization - with English versions and need more translators (or financial aid to - continue our work. If you can help, please, contact us at - ru-cvs-committers@FreeBSD.org.ua (or andy@FreeBSD.org).

- -
- - - KSE - - - - - Daniel - - Eischen - - - deischen@FreeBSD.org - - - - -

The libkse library will shortly be renamed to libpthread and - be made the default thread library. This includes making the - GCC -pthread option link to -lpthread instead of libc_r and - changing PTHREAD_LIBS to -lpthread. David Xu has been working - on GDB support and has it working with the GDB currently in our - tree. The next step is to make a libpthread_db and get it working - with GDB 6.0 which marcel has imported into the perforce tree.

- -
- - - Donations Team - - - - - Michael - - Lucas - - - donations@FreeBSD.org - - - - - FreeBSD Donations Project - - - -

2003 was quite successful for the Donations team. We - shepherded over 200 items from donors into the hands of - developers. Some high points include: a small cluster for the - security team, assorted laptop hardware for our cardbus work, - and documentation for our standards group. In the main FreeBSD.org - cluster we were able to replace 8 DEC Miata machines with 6 - Alpha DS10s (21264). Every committer doing SMP work now has - multi-processor testing hardware.

- -

We have smoothed out the tax deduction process with the FreeBSD - Foundation, and can ship donated items directly to the - recipients instead of tying up Foundation time handling - shipping.

- -

Current team membership is: Michael Lucas, David O'Brien, and - Tom Rhodes. Wilko Bulte has replaced Robert Watson as the Core - Team representative.

- -
- - - ACPI - - - - - Nate - - Lawson - - - njl@FreeBSD.org - - - - - ACPI TODO - ACPI-JP - Mailing List - - - - -

The updated acpi_cpu driver was committed in November. Work is - ongoing to finish support for _CST re-evaluation, which makes it - possible for laptops based on processors like the Centrino to use - varying CPU idle states when on or off AC power. 5.2-RELEASE also - went out with support for _CID packages, which fixed mouse probing - for Compaq users. Control of CPU idle states and throttling can - now be done through rc.conf(5) settings for the /etc/power_profile - script, which switches between performance/economy levels when - the AC status changes.

- -

One huge task underway is the cpufreq project, a framework for - detecting and controlling various frequency/voltage technologies - (SpeedStep, LongRun, ACPI Performance states, etc.) The ACPI - performance states driver is working and the framework is being - implemented. It requires newbus attachments for CPUs so some - ground work needs to go in before the driver can be committed.

- -

ACPI-CA was updated to 20031203 in early December and with a few - patches is reasonably stable. An ACPI debugging how-to has been - written and is being DocBooked by trhodes@. Ongoing work on fixing - interrupt storms due to various ways of setting up the SCI - is being done by jhb@.

- -

I'd like to welcome Philip Paeps (philip@) to the FreeBSD team. - Philip has written an ACPI ASUS driver that will be committed soon - and has been very helpful on the mailing lists. We've also had - a lot of help from jhb@, marcel@, imp@, and peter@. We're hoping - to see the return of takawata@ and iwasaki@, who have been very - helpful in the past. - If any developers are interested in assisting with ACPI, please - see the ACPI TODO and send us an email.

- -
- - - kgi4BSD Status Report - - - - - Nicholas - - Souchu - - - nsouch@FreeBSD.org - - - - - - - - - -

Most of the console blocks are in place with nice results - (see screenshots on the site). Boot console and virtual - terminals are working with 8bit rendering and perfect integration - of true graphic drivers in the kernel.

- -

Now it is time to bring it to end user and a precompiled R5.2 GENERIC - kernel is available for this (see the site news). In parallel, - after providing a last tarball/patch for R5.2, everything will - move to Perforce.

- -

As always, volunteers are welcome. The task is huge but very - exciting.

- -
- - - FreeBSD/powerpc on PPCBug-based embedded boards - - - - - Rafal - - Jaworowski - - - rafal.jaworowski@motorola.com - - - - -

The direct objective is to make FreeBSD/powerpc work on Motorola - MCP750 and similar (single board computer that is compliant with - Compact PCI standard) Based on this work it would be easy to bring it - to other embedded systems.

- -

1. loader(8): it is based on the existing loader for FreeBSD/powerpc - port but binding to OpenFirmware was removed and replaced with PPCBug - firmware binding. It only supports netbooting for the moment, so disk - (compact flash) support needs to be done one day. The loader is the - only piece that relies onPPCBug system calls - once the kernel starts - it doesn't need firmware support any longer.

- -

2. kernel: it is now divorced from OpenFirmware dependencies; most of - the groundwork finished includes: nexus stuff is sorted out (resources - management is ok except interrupts assignment); host to PCI bridge low - level routines are finished so configuration of and access to PCI - devices works; the only important thing missing is the IRQ management - (Raven MPIC part is done, but the board has the second PIC, - 8259-compatible that needs to be set up, but here the existing code - from x86 arch will be adopted).

- -

Once the IRQ management is cleared out, most of the devices on board - would work straight away since they are pretty standard chips with - drivers already implemented in the tree (e.g. if_de).

- -

At the moment work is on hold (don't have physical access to the - device) but will resume when I'm back home (late Feb).

- - -
- - - TrustedBSD Mandatory Access Control (MAC) - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - TrustedBSD Discussion Mailing List - - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD MAC - page - - - -

The TrustedBSD Mandatory Access Control (MAC) Framework - permits the FreeBSD kernel and userspace access control - policies to be adapted at compile-time, boot-time, or - run-time. The MAC Framework provides common infrastructure - components, such as policy-agnostic labeling, making it - possible to easily development and distribute new access - control policy modules. Sample modules include Biba, MLS, - and Type Enforcement, as well as a variety of system - hardening policies.

- -

TrustedBSD MAC development branch in Perforce integrated - to 5.2-RELEASE.

- -

The TrustedBSD MAC Framework now enforces protections on System - V IPC objects and methods. Shared memory, semaphores, and - message queues are labeled, and most operations are controlled. - The Biba, MLS, Test, and Stub policies have been updated for - System V IPC. (Not yet merged)

- -

The TrustedBSD MAC Framework now enforces protections on POSIX - semaphore objects and methods. The Biba, MLS, Test, and Stub - policies have been updated. (Not yet merged)

- -

The TrustedBSD MAC Framework's central kernel implementation - previously existed in one large file, src/sys/kern/kern_mac.c. - It is now broken out into a series of by-service files in - src/sys/security/mac. src/sys/security/mac/mac_internal.h - specifies APIs, structures, and variables used internally - across the different parts of the framework. System calls - and registration still occur in kern_mac.c. This permits - more easy maintenance of locally added object types. (Merged)

- -

Break out mac_policy_list into two different lists, one to - hold "static" policy modules -- ones loaded prior to kernel - initialization, and that may not be loaded, and one for - "dynamic" policy modules -- that are either loaded later in - boot, or may be unloaded. Perform less synchronization when - using static modules only, reducing overhead for entering - the framework when not using dynamic modules. (Merged)

- -

Introduced a kernel option, MAC_STATIC, which permits only - statically registered policy modules to be loaded at boot - or compiled into the kernel. When running with MAC_STATIC, - no internal synchronization is required in the MAC Framework, - lowering the cost of MAC Framework entry points. (Not yet - merged)

- -

Make mac.h userland API definition C++-happy. (Merged)

- -

Created mac_support.4, a declaration of what kernel and - userspace features are (and aren't) supported with MAC. - (Not yet merged)

- -

Stale SEBSD module deleted from MAC branch; SEBSD module will - solely be developed in the SEBSD branch from now on. See - the TrustedBSD SEBSD report for more detail.

- -

Use only pointers to 'struct label' in various kernel objects - outside the MAC Framework, and use a zone allocator to allocate - label storage. This permits label structures to have their - size changed more easily without changing the normal kernel - ABI. This also lowers the non-MAC memory overhead for base - kernel structures. This also simplifies handling and storage - of labels in some of the edge cases where labels are exposed - outside of the Framework, such as in execve(). Include files - outside of the Framework are substantially simplified and now - frequently no longer require _label.h. (Merged)

- -

Giant pushed down into the MAC Framework in a number of MAC - related system calls, as it is not required for almost all - of the MAC Framework. The exceptions are areas where the - Framework interacts with pieces of the kernel still covered - by MAC and relies on Giant to protect label storage in those - structures. However, even in those cases, we can push Giant - in quite a bit past label internalization/externalization/ - storage allocation/deallocation. This substantially simplifies - file descriptor-based MAC label system calls. (Merged)

- -

Remove unneeded mpo_destroy methods for Biba, LOMAC, and MLS - since they cannot be unloaded. (Merged)

- -

Biba and MLS now use UMA zones for label allocation, which - improves storage efficiency and enhances performance. (Merged)

- -

Bug fix for mac_prepare_type() to better support arbitrary - object label definitions in /etc/mac.conf. (Merged)

- -

Labels added to 'struct inpcb', which represents TCP and UDP - connections at the network layer. These labels cache socket - labels at the application layer so that the labels may be - accessed without application layer socket locks. When a label - is changed on the socket, it is pushed down to the network - layer through additional entry points. Biba, MLS policies - updated to reflect this change. (Merged)

- -

SO_PEERLABEL socket option fixed so that peer socket labels - may be retrieved. (Merged)

- -

mac_get_fd() learns to retrieve local socket labels, providing - a simpler API than SO_LABEL with getsockopt(). mac_set_fd() - learns about local socket labels, providing a simpler API than - SO_LABEL with setsockopt(). This also improves the ABI by not - embedding a struct label in the socket option arguments, instead - using the copyin/copyout routine for labels used for other object - types. (Merged)

- -

Some function names simplified relating to socket options. - (Merged)

- -

Library call mac_get_peer() implemented in terms of getsockopt() - with SO_PEERLABEL to improve API/ABI for networked applications - that speak MAC. (Merged)

- -

mac_create_cred() renamed to mac_cred_copy(), similar to other - label copying methods, allowing policies to implement all the - label copying method with a single function, if desired. This - also provides a better semantic match for the crdup() behavior. - (Merged)

- -

Support "id -M", similar to Trusted IRIX. (Not yet merged)

- -

TCP now uses the inpcb label when responding in timed wait, - avoiding reaching up to the socket layer for label information - in otherwise network-centric code.

- -

Numerous bug fixes, including assertion fixes in the MAC - test policy relating to execution and relabeling. (Merged)

- -
- - - TrustedBSD Access Control Lists (ACLs) - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - TrustedBSD Discussion Mailing List - - - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD - ACLs page - - - -

TrustedBSD Access Control Lists (ACLs) provide extended - discretionary access control support for the UFS and UFS2 - file systems on FreeBSD. They implement POSIX.1e ACLs with - some extensions, and meet the Common Criteria CAPP - requirements. Most ACL-related work is complete, with - remaining tasks associated with userspace integration, third - party applications, and compatibility

- -

Prototyped Solaris/Linux semantics for combining ACLs and - the umask: if an default ACL mask is defined, substitute that - mask for the umask, permitting ACLs to override umasks. (Not - merged)

- -
- - - TrustedBSD "Security-Enhanced BSD" -- FLASK/TE Port - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - TrustedBSD Discussion Mailing List - - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD - SEBSD page - - - -

TrustedBSD "Security-Enhanced BSD" (SEBSD) is a port of NSA's - SELinux FLASK security architecture, Type Enforcement (TE) - policy engine and language, and sample policy to FreeBSD using - the TrustedBSD MAC Framework. SEBSD is available as a loadable - policy module for the MAC Framework, along with a set of - userspace extensions support security-extended labeling calls. - In most cases, existing MAC Framework functions provide the - necessary abstractions for SEBSD to plug in without SEBSD-specific - changes, but some extensions to the MAC Framework have been - required; these changes are developed in the SEBSD development - branch, then merged to the MAC branch as they mature, and then - to the FreeBSD development tree.

- -

Unlike other MAC Framework policy modules, the SEBSD module - falls under the GPL, as it is derived from NSA's - implementation. However, the eventual goal is to support - plugging SEBSD into a base FreeBSD install without any - modifications to FreeBSD itself.

- -

TrustedBSD SEBSD development branch in Perforce integrated - to 5.2-RELEASE. Other changes in the MAC branch, including - restructuring of MAC Framework files also integrated, and a - move to zone allocation for labels. See the TrustedBSD MAC - Framework report for more detail on these and other MAC - changes that also affect the SEBSD work.

- -

FreeBSD PTY code modified so that the MAC Framework and SEBSD - module can create pty's with the label of the process trying - to access them. Improves compatibility with the SELinux - sample policy. (Not yet merged)

- -

SEBSD now loads its initial policy in the boot loader rather - than using a dummy policy until the root file system is - mounted, and then loading it using VFS operations. This - avoids initial labeling and access control conditions during - the boot.

- -

security_load_policy() now passes a memory buffer and length - to the kernel, permitting the policy reload mechanisms to - be shared between the early boot load and late reloads. The - kernel SEBSD code now no longer needs to perform direct file - I/O relating to reading the policy. checkpolicy now mmap's - the policy before making the system call.

- -

SEBSD now enforces protections on System V IPC objects and - methods. Shared memory, semaphores, and message queues are - labeled, and most operations are controlled. The sample - policy has been updated.

- -

The TrustedBSD MAC Framework now controls mount, umount, and - remount operations. A new MAC system call, mac_get_fs() can - be used to query the mountpoint label. lmount() system call - allows a mount label to be explicitly specified at mount - time. The SEBSD policy module has been updated to reflect - this functionality, and sample TE policy has been updated. - (Not yet merged)

- -

SEBSD now enforces protections on POSIX semaphores; the sample - policy has been updated to demonstrate how to label and control - sempahores. This includes sample rules for PostgreSQL.

- -

The SEBSD sample policy, policy syntax, and policy tools have - been updated to the SELinux code drop from August. Bmake these - pieces so we don't need gmake.

- -

Provide file ioctl() MAC Framework entry point and SEBSD - implementation.

- -

A large number of sample policy tweaks and fixes. The policy - has been updated to permit cron to operate properly. It has - been updated for FreeBSD 5.2 changes, including dynamically - linked root. Teach the sample policy about FreeBSD's sendmail - wrapper.

- -

Adapt sysinstall and install process for SEBSD pieces. Teach - sysinstall, newfs, et al, about multilabel file systems, install - SEBSD sample policy pieces, build policy. Automatically load - the SEBSD module on first boot after install.

- -

Allow "ls -Z" to print out labels without long format.

- -
- - - TrustedBSD Audit - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - TrustedBSD Audit Discussion List - - - trustedbsd-audit@TrustedBSD.org - - - - - TrustedBSD - Audit Page - - - - - -

The TrustedBSD Project is producing an implementation of CAPP - compliant Audit support for use with FreeBSD. Little progress - was made on this implementation between October and December - other than an update to the existing development tree. However, - in January, work began on porting the Darwin Audit - implementation to FreeBSD. Details on this work will appear in - the next report; more information is available on the TrustedBSD - audit discussion list. Perforce messages may be seen on the - trustedbsd-cvs mailing list.

- - -
- - - TrustedBSD Documentation - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - TrustedBSD Discussion Mailing List - - - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD - Documentation Page - - - -

The TrustedBSD Project is implementing many new features - for the FreeBSD Project. It also provides documentation for - users, administrators, and developers.

- -

mac_support.4 added -- documents TrustedBSD MAC Framework - feature compatibility. See also the MAC Framework report.

- -

FreeBSD security architecture updated and corrections/additions - made.

- -

A variety of documentation updates relating to API changes, - including the socket-related API changes in libc/mac(3).

- -
- - - FreeBSD/MIPS Status Report - - - - - Juli - - Mallett - - - jmallett@FreeBSD.org - - - - - - - - -

TLB support code and PMAP have come along nicely. GCC and related - have been kept up to date with the main tree. An evaluation board - from Broadcom was donated and initial work on that platform has been - occurring. Much old and obsolete code brought from NetBSD for - bootstrapping the effort has been cleaned up. The system has been - seen to get to the point of trying to initialize filesystems, but - there are still bugs even before that milestone.

- -
- - - AGP 3.0 Support - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - -

Simple support AGP 3.0 including support for AGP 8x mode was - added. The support is simple in that it still assumes only one - master and one target. The main gain is the ability to use AGP - 8x with drm modules that support it.

- -
- - - Network Subsystem Locking and Performance - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - -

The purpose of this project is to improve performance of the network - subsystem. A major part of this work is to complete the locking of - the networking subsystem so that it no longer depends on the "Giant - lock" for proper operation. Removing the use of Giant will improve - performance and permit multiple instances of the network stack to - operate concurrently on multiprocessor systems.

- -

Locking of the network subsystem is largely complete. Network - drivers, middleware layers (e.g. ipfw, dummynet, bridge, etc.), the - routing tables, IPv4, NFS, and sockets are locked and operating - without the use of Giant. Much of this work was included in the 5.2 - release, but not enabled by default. The remaining work (mostly - locking of the socket layer) will be committed to CVS as soon as we - can resolve how to handle "legacy protocols" (i.e. those protocols - that are not locked). The code can be obtained now from the Perforce - database. A variety of test and production systems have been running - this code for several months without any obvious issues.

- -

Performance analysis and tuning is ongoing. Initial results indicate - SMP performance is already better than 4.x systems but UP performance - is still lagging (though improved over -current). The removal of Giant - from the network subsystem has reduced contention on Giant and - highlighted performance bottlenecks in other parts of the system.

- -

This work was supported by the FreeBSD Foundation.

- -
- - - Wireless Networking Support - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - -

Work to merge the NetBSD and MADWIFI code bases is almost complete. - This brings in new features and improves sharing which will enable - future development. Support was added for 802.1x client - authentication (using the open1x xsupplicant program) and for shared - key authentication (both client and AP) which improves interopability - with systems like OS X. The awi driver was updated to use the common - 802.11 layer and the Atheros driver received extensive work to support - hardware multi-rate retry. Kismet now works with the - device-independent radiotap capture format. All of this work is still - in Perforce but should be committed to CVS soon.

- -

Work has begun on full 802.1x and WPA support.

- - -
- - - SMPng Status Report - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - smp@FreeBSD.org - - - - - - - - -

Work is progressing on SMPng on several different fronts. Sam - Leffler and several other folks have been working on locking the - network stack as mentioned elsewhere in this update. Several - infrastructure improvements have been made in the past few months - as well.

- -

The low-level interrupt code for the i386 architecture has been - redesigned to allow for a runtime selection between different types - of interrupt controllers. This work allows the Advanced Programmable - Interrupt Controllers (APICs) to be used instead of the AT 8259A PIC - without having to compile a separate kernel to do so. It also allows - the APIC to be used in a UP kernel as well as on a UP box. Together, - all these changes allow an SMP kernel to work on a UP box and thus - allowed SMP to be enabled in GENERIC as it already is on all of the - other supported architectures. This work also reworked the APIC - support to correctly route PCI interrupts when using an APIC to - service device interrupts. This work was also used to add SMP support - to the amd64 port.

- -

A turnstile implementation was committed that implemented a queue - of threads blocked on a resource along with priority inheritance of - blocked threads to the owner of the resource. Turnstiles were then - used to replace the thread queue built into each mutex object which - shrunk the size of each mutex as well as reduced the use of the - sched_lock spin mutex.

- -
-
diff --git a/en/news/status/report-2004-01-2004-02.xml b/en/news/status/report-2004-01-2004-02.xml deleted file mode 100644 index 72b24400a0..0000000000 --- a/en/news/status/report-2004-01-2004-02.xml +++ /dev/null @@ -1,869 +0,0 @@ - - - - - - - January-February - 2004 - - -
- Introduction: - -

2004 started with another exciting two months for the project. - FreeBSD 5.2 was released in early January and then quickly followed - in February with the 5.2.1 bug-fix release. Looking forward, we - are expecting a late-April release date for FreeBSD 4.10, and - mid-summer date for FreeBSD 5.3. And don't forget to support the - FreeBSD vendors and developers by buying a copy of the latest CD - or DVD sets.

- -

Thanks,

- -

Scott Long

-
- - - Disk and device I/O - - - - - Poul-Henning - Kamp - - phk@FreeBSD.org - - - - -

In the overall area of disk and device I/O, a significant - milestone was reached with the implementation of proper - reference counting on dev_t. We are now able to properly - allocate and free dev_t. Cloning device drivers also had - the job made easier for them with the addition of the unit - number management routines.

-

It is not quite decided which will be the next step in - the quest for a truly SMPng I/O subsystem, but a leading - candidate is to implement the device-access vnode bypass - to get more concurrency in the system: Instead of taking - the tour through the vnodes for each i/o operation on a - device we will go directly from the file descriptor layer to - DEVFS/SPECFS. In addition to Giant-less disk I/O, - this should enable us to pull the entire tty subsystem - and the PTY driver out from under Giant and we expect that - to improve the "snappiness" of the system measurably.

- -
- - The FreeBSD Dutch Documentation Project. - - - - Remko - Lodder - - remko@elvandar.org - - - -

The Dutch Documentation Project is a ongoing project in - translating the handbook and other documentation to the dutch - language. Currently there is 1 active person (me) translating the - documentation. I am currently working on the handbook/basics - section. But i can use some more hands, please drop me an email if - you wish to help out so that the dutch translation will speed up - and be ready in some time. Contact remko@elvandar.org for - information.

- -
- - Weekly cvs-src summaries - - - - - Mark - Johnston - - mark@xl0.org - - - - - Polish translations - - - -

I have been producing weekly summaries of commits and the - surrounding discussions as reported on the cvs-src mailing list. - These summaries are posted to -current on Sunday evenings and - archived on the Web. The reception has been overwhelmingly good. - As of the end of February, Polish translations are being produced - by Lukasz Dudek and Szymon Roczniak; they are also - planning to translate the older summaries.

- -
- - libarchive/bsdtar - - - - Tim - Kientzle - - kientzle@FreeBSD.org - - - - - - -

libarchive, with complete documentation, has been committed to - -CURRENT. bsdtar should follow soon. For a few months, gtar - and bsdtar will both be available in the base system. Once - bsdtar is in the tree, I hope to resume work on libpkg and my - pkg_add rewrite.

- -

Note that bsdtar is not an exact replacement for gtar: it does - some things better (reads/writes standard formats, archive ACLs - and file flags, detects format and compression automatically), - some things worse (does not handle multi-volume archives or - sparse files) and a few things just different (writes POSIX-format - archives by default, not GNU-format). The command lines are - sufficiently similar that most users should have no problems - with the transition. However, people who rely on peculiar - options or capabilities of gtar may have to look to ports.

- -
- - Network interface naming changes - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - - - -

The first actual feature related to the if_xname conversion was - committed in early February. Network interfaces can now be - renamed with "ifconfig <if> name <newname>".

- -

Work is slowly progressing on a new network interface cloning API - to enable interesting cloners like auto-configurating vlans. - This work is taking place in the perforce repository under: - //depot/user/brooks/xname/...

- -
- - PowerPC Port - - - - - Peter - Grehan - - grehan@FreeBSD.org - - - - -

After a slow time at the end of last year due to a disk crash, - the project is moving along rapidly. The loader is fully - functional with Forth support. Syscons has been integrated. - New Powerbook models are supported. Work is starting on a - G5 port.

- -

There's still lots to do, so as usual volunteers are most - welcome.

- -
- - The FreeBSD Simplified Chinese Project - - - - Dong - LI - - ld@FreeBSD.org.cn - - - - Xin - LI - - delphij@frontfree.net - - - - The FreeBSD Simplified - Chinese Project (In Simplified Chinese) - Translated - Website Snapshot - Translated Handbook Snapshot - - -

The project is a joint effort of volunteers, which focus in - the internationalization and localization of the FreeBSD - Operating System and applications running on FreeBSD. All of the - work resulted in this project will be contributed back to the - FreeBSD project.

-

Thanks to many volunteers' help, by this time of writing, we - have finished more than 60% of the translation of the FreeBSD - Handbook. We plan to submit a preliminary translation of the - FreeBSD website as well as the FreeBSD Handbook when most part of - them were finished, which is expected to happen in a couple of - months. The snapshot of the documentation translation effort - could be accessed through the URL listed above.

-

The project also supported individual efforts on porting - applications (especially software that supports Simplified - and/or Traditional Chinese) to FreeBSD. We are also doing some - research on making FreeBSD kernel and base system more - i18n-aware.

- -
- - Verify source reachability option for ipfw2 - - - - Andre - Oppermann - - andre@FreeBSD.org - - - - - - -

The verify source reachability option for ipfw2 checks if the - source IP address of a packet entering the machine is reachable - at all. Thus if we can't send a packet back because we don't - have a route back we don't have to forward it because two way - communication isn't possible anyway. It is more than likely - that such a packet is spoofed. This option is almost the same as - what is known on Cisco IOS as "ip verify unicast source - reachable-via [any|ifn]". Using this option only makes sense - when you don't have a default route which naturally always - matches. So this is useful for machines acting as routers with - a default-free view of the entire Internet as common when running - a BGP daemon (Zebra/Quagga or OpenBSD bgpd).

-

One useful way of enabling it globally on a router looks like - this: ipfw add xxxx deny ip from any to any not versrcreach or for - an individual interface only: ipfw add xxxx deny ip from any to - any not versrcreach recv fxp0

- -
- - - Move ARP out of routing table - - - - Andre - Oppermann - - andre@FreeBSD.org - - - -

The ARP IP address to MAC address mapping does not belong into - the routing table (FIB) as it is currently done. This will move - it to its own hash based structure which will be instantiated - per each 802.1 broadcast domain. With this change it is possible - to have more than one interface in the same IP subnet and layer 2 - broadcast domain. The ARP handling and the routing table will be - quite a bit simplified afterwards. As an additional benefit full - MAC address based accosting will be provided. Work on this - project is already in progress.

- -
- - Automatic sizing of TCP send buffers - - - - Andre - Oppermann - - andre@FreeBSD.org - - - -

The current TCP send and receive buffers are static and set to a - conservative value to preserve kernel memory. This is sub-optimal - for connections with a high bandwidth*delay product because the - size of the TCP send buffer determines how big the send window - can get. For high bandwidth trans-continental links this seriously - limits the maximum transfer speed per TCP connection. For example - a 170ms RTT and a 32kB send buffer limit the speed to approximately - 1.5Mbit per second even thought you might have a 10Mbit pipe.

-

This project makes the TCP send buffer to automatically adapt to - the optimal buffer size for maximal link usage. In the case - above this would be a buffer of approximately 220kB. The main - challenge is to have a stable and reliable measurement of the link - parameters and manage the kernel memory properly and in a fair way. - We don't want to have a few connections to monopolize all available - socket buffer space and many edge cases have to be considered. The - first implementation will be tuned conservatively but even that - will provide significantly better performance than the static - buffers currently. Work on this project is already in - progress.

- -
- - - Testbed for testing and qualification of TCP performance - - - - Andre - Oppermann - - andre@FreeBSD.org - - - -

The TCP performance test and qualification testbed is an automated - environment that simulates various common and uncommon end-to-end - network and link characteristics such as delay, bandwidth - limitations, congestion, packet drops, packet corruption and out - of order arrival. The testbed automatically steps through all - link types and tests various TCP optimizations and parameter - adjustments. In the end all data is graphically arranged and - compared against standard behaviour and each other to judge the - positive or negative effects of the modifications. Work on this - project has just started and is based on FreeBSDs dummynet.

- -
- - FreeBSD ports monitoring system - - - - - Mark - Linimon - - linimon_at_lonesome_dot_com - - - - - - FreeBSD ports monitoring system - - - -

Thanks to the loan of a box by Will Andrews, the system has - been moved into production. The previous installation - at lonesome.com now refers you to the new system. As part of - the installation, a preliminary - FAQ was - added.

-

The database is updated once per hour.

-

New reports available include ones about ports marked DEPRECATED, - since that function has now been incorporated into bsd.port.mk. - (The author hopes that this will allow the port deprecation process - to be much more visible to the general FreeBSD user community.) In - addition, a report for ports marked FORBIDDEN was added (the code - was essentially the same).

-

The next topic of interest is to try to identify ports which are - slave ports because the status of these ports is not currently - being updated automatically. This problem also affects - FreshPorts. PR ports/63683 is an attempt to address this problem. - Also, preliminary work has been done on creating some graphs and - charts for various statistics, and in creating a tool to browse - port dependencies for the entire ports tree.

-

Some general observations about the trends in ports PRs can be - made: -

    -
  • In the past 6 months, the amount of time to get ports PRs - committed has dropped dramatically. (This is especially - true of PRs for new ports.)
  • -
  • The queue of PRs for existing ports that are unmaintained - has similarly been trimmed. Both of these two items are due - in large part to a few very active committers (how do they - ever get their "real" work done?) Thanks, guys, you know who - you are.
  • -
  • There is still a fairly high number of PRs (~400/~750) which - apply to existing ports, and have been assigned to a FreeBSD - committer. This represents around 370 individual ports. We - seem to have a much harder time getting these numbers to go - down; basically, we just hold our own most weeks. This is - somewhat disappointing.
  • -
  • The number of ports marked BROKEN has jumped dramatically, - currently standing at over 250 (for i386-current). This - represents less a sudden problem as it does Kris' effort to - bring existing brokenness to people's attention -- thus, a - much larger percentage of ports with build errors are now - labeled as BROKEN.
  • -
  • Approximately two-thirds of the port build errors are still - due to compilation problems, primarily from the gcc3.3 import. - Another 10% fail to install correctly. The reasons for the - others are more varied.
  • -
-

- -
- - FreeSBIE - - - - FreeSBIE - Staff - - staff@FreeSBIE.org - - - - FreeSBIE Home - FreeSBIE Mailing - List - FreeSBIE - Mirror List - - -

The FreeSBIE Project aims to develop a set of scripts that allow - anyone to create their own FreeBSD Bootable Cdrom, with their own - set of installed packages. The Project releases an ISO builded - with FreeSBIE scripts, to show what they can do. On Sunday 29 - February 2004, FreeSBIE 1.0 was released and it had a great - success, as there were post on Slashdot.org, OSnews, DaemonNews - and BSDForums. Thanks to the huge amount of feedback they got, - FreeSBIE Developers are now developing new features such as - support for archs different from i386. Website redesign is on the - way too.

- -
- - kgi4BSD - - - - Nicholas - Souchu - - nsouch@FreeBSD.org - - - - Project URL - - - -

Move to Perforce is done. I spent some time on building a - common compilation tree with Linux: until now drivers were - build in a FreeBSD makefile tree, not compatible with Linux.

- -

The next priorities are ANSI support and keymaps in the - KGC Kernel Graphic Console system.

- -
- - - FreeBSD/ia64 - - - - - Marcel - Moolenaar - - marcel@FreeBSD.org - - - - - - Home page. - - - -

Work on the PMAP overhaul has been put into gear. A lot of issues - will be addressed, including support for sparse physical memory - and of course SMP. Performance will be addressed to the extend - possible, but functionality has priority. The redesign will lay - the foundation for NUMA support where possible. An example of this - is limiting TLB shootdowns to processors that actually have or had - TLBs belonging to the PMAP loaded. Of course, without NUMA - hardware the implementation of NUMA support is quite limited.

- -
- - FreeBSD Package Grid - - - - - Kris - Kennaway - - kris@FreeBSD.org - - - - - -

Distributed package builds are currently done using a set of - home-grown shell scripts for managing, scheduling and - dispatching of package builds on the client machines. This has - been sufficient for our needs in the past, but has a number of - significant shortcomings that limit future growth. I am - rewriting the package build scripts to work on top of Sun - GridEngine (ports/sysutils/sge), as a client application of a - "FreeBSD package grid". Some of the design goals for the new - system are:

- -
    -
  • Better robustness against machine failure, and more efficient - scheduling of build jobs
  • -
  • Support for remote build machines, to make better use of machine - resources and clusters that are not on the same LAN as the - build master
  • -
  • Ability for other committers to submit port build jobs to the - system, for testing of changes, new ports, etc.
  • -
- - -
- - vinum + GEOM - - - - Lukas - Ertl - - le@FreeBSD.org - - - - - - - - -

The "geomification" of vinum has made some progress. I now have - all basic setups working (concatenated plexes, striped plexes, - RAID5 plexes, and RAID1), but I still have to implement correct - error handling and status change handling.

-

Still missing is a userland tool, so currently you still have to - use "old-style" vinum to configure your setup.

- -
- - NanoBSD - - - - - Poul-Henning - Kamp - - phk@FreeBSD.org - - - - -

NanoBSD, src/tools/tools/nanobsd, is a tool for stuffing FreeBSD - onto small disk media (like CompactFlash) for embedded - applications. The disk image is built with three partitions, two - for software images and one for configuration files. Having two - software partitions means that new software can be uploaded to the - non-active partition while running off the active partition.

-

The first really public version has been committed and many - suggestions and offers of patches have started pouring in.

- -
- - Porting OpenBSD's pf - - - - Max - Laier - - max@love2party.net - - - - Pyun - YongHyeon - - yongari@kt-is.co.kr - - - - - - PF homepage - PF FAQ - ALTQ - - - -

The sources were imported from OpenBSD 3.4R and patched with - diffs obtained from the port. Since March the 8th it is linked - to the build and install. There is some more work to be done in - order make pf a home inside the tree, but the biggest hunk of - work was lifted during the past two month.

-

OpenBSD 3.5 is scheduled for early May, so we might see an update - before 5.3R. Work towards integration of the - often requested - - ALTQ framework is in progress also, though it is not yet clear - how well it goes along with the ongoing work towards a giant free - net stack.

- -
- - FreeBSD/arm Status Report - - - - Olivier - Houchard - - cognet@FreeBSD.org - - - - -

Development goes reasonably fast, right now it boots single user. - It is still very simics-centric, and it deserves a huge cleanup - and a few bug fixes, but there's already a decent amount of code - to work with, mostly taken from NetBSD. I now plan to work on real - hardware support (as soon as I can get some), to get the missing - userland bits (mainly rtld and the pthread libs) so that I can - build a full world.

- -
- - SGI XFS port for FreeBSD - - - - Alexander - Kabaev - - kan@FreeBSD.org - - - - Russell - Cattelan - - cattelan@thebarn.com - - - - -

Not much has changed since last report was submitted. The - read-only access XFS volumes is quite stable now. The work is - underway to rewrite xfs_buf layer to minimize local changes - intrusiveness. Initial attempt to make XFS code to compile and - run on amd64 is in progress too.

-

We really need a care-taker for our userland tools.

- -
- - Compile FreeBSD with Intels C compiler (icc) - - - - - Alexander - Leidinger - - netchild@FreeBSD.org - - - - - Some patches. - - - -

If nothing bad happened, the icc patches got committed around - the date of the deadline for submissions of this report. Please - search the archives of -current and/or cvs-all for more - information.

- -

The next steps in this project are to -

    -
  • fix the kernel to also run without problems when compiled - with icc v8
  • -
  • fix the kernel if some problems surface after more people - give it a try
  • -
  • get some ports to compile with icc
  • -
-

- -
- - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - - Maksim - Yevmenkin - - m_evmenkin@yahoo.com - - - - -

Not much to report. Bluetooth Service Discovery Procotol daemon - sdpd was integrated with existing Bluetooth utilities. From now - on users should not use GNU sdpd (Linux BlueZ port).

-

Bluetooth HID profile implementation is almost complete. Thanks - to Matt Peterson < matt at peterson dot org > for giving me - Bluetooth keyboard and mouse for development.

- -
- - FreeBSD GNOME Project Report - - - - - FreeBSD - GNOME Team - - gnome@FreeBSD.org - - - - - FreeBSD GNOME Project - Site. - - - -

It has been a year since our last status report, but we - haven't slowed down. Since the last report, Alexander - Nedotsukov (bland) and Pav Lucistnik (pav) have joined the - FreeBSD GNOME team. GNOME 2.4 was released back in September - 2003, followed by 2.4.1 and 2.4.2. We are actively working on - getting GNOME 2.6.0 out the door at the end of March. GNOME 2.6 - Beta releases can be obtained via the project URL above.

- -

To help make GNOME 2.6.0 our best release to date, we have - created a script to automate the upgrade from GNOME 2.4. We - also have a new GNOME - package build - server - that builds and serves i386 packages for all supported FreeBSD - releases. We plan on having the GNOME 2.6.0 packages available - the moment 2.6.0 hits the ports tree.

- -

Included in the release of GNOME 2.6 is GTK+ 2.4, the next - installment in the GTK+ 2 series. Because GTK+ 2 has become - very stable over the past few years, the FreeBSD GNOME Team is - pushing for GTK+ 2 support to be included by default in all - applications that support it. This has already been done with - Mozilla, Firefox, and Thunderbird. A complete GNOME Desktop and - application environment can already be built using only GTK+ 2. - The ultimate goal is to phase GTK+ 1 out of the ports tree.

- -
- - Network Stack Locking - - - - - Sam - Leffler - - sam@FreeBSD.org - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - - - - -

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.

- -

Work continues to improve the maturity and completeness of - the locking (and performance) of the network stack for 5.3. The - network stack locking development branch has been updated to the - latest CVS HEAD, tracking a variety of FreeBSD changes, including - tracking and driving changes in the interface and device cloning - APIs, push-down and fixes to locking in the Berkeley Packet - Filter, consistency improvements in allocation flags for network - objects, diagnosis of excessive acquisition of Giant in various - system callouts and timeouts, removal of Giant from several - system callouts, "const"-ification of a number of global - variables in the network stack (IPv4, IPv6, elsewhere) as part of - ananalysis of locking requirements, fine-grain locking of a - number of pseudo-interfaces (disc, loopback, faith, stf, gif, tap, - tun), IP encapsulation and tunneling, initial review and locking - of parts of PPP and SLIP, experimentation with PCB assertions on - IPv6, additional socket locking assertions, graphing of the FreeBSD - sockets layer to support locking analysis, merging of theMT_TAG to - m_tag conversion to improve the ability to queue packets, moving - of the debug.mpsafenet tunable to controlling Giant over the - forwarding plane to Giant over the entire stack("dual-mode" to - support non-MPSAFE protocols), adaption of existing network lock - assertions to also assert Giant when running non-MPSAFE, analysis - of high cost of select() locking, improved locking and - synchronization annotations, TCP callouts run MPSAFE, logtimeout() - runs MPSAFE, uma_timeout() runs MPSAFE, callout sampling - instrumentation, loadav() runs MPSAFE, AppleTalk locking begun: - AARP locked down and DDP analysis, rawcb list locked, locking - analysis of mrouter and IP ID code, IGMP locked, IPv6 analysis - begun, IPX/SPX analysis begun, PPP timeouts converted to callouts, - Netgraph analysis begun. Many of these changes have not yet been - merged to the main FreeBSDtree, but this is a work in progress.

- -

In related work on Pipe IPC (not quite network stack locking), - substantial time was invested in diagnosing an increase in the - cost of pipe allocation since FreeBSD 4.x, as well as coalescing - the several allocations needed to create a pipe, as well as moving - to slab allocation so as to amortize the cost of pipe - initialization. Future work here will include caching the VM - structures supporting pipe buffers.

- -

Recent contributors include Robert Watson, Sam Leffler, MaxLaier, - Maurycy Pawlowski-Wieronski, Brooks Davis, and many others who are - omitted here only by accident.

- -
-
diff --git a/en/news/status/report-2004-03-2004-04.xml b/en/news/status/report-2004-03-2004-04.xml deleted file mode 100644 index c2c2f5318b..0000000000 --- a/en/news/status/report-2004-03-2004-04.xml +++ /dev/null @@ -1,1156 +0,0 @@ - - - - - - - - March-April - 2004 - - -
- Introduction - -

2004 continues on with wonderful progress. Work continues on locking - down the network stack, ACPI made more great strides, an ARM port - appeared in the tree, and the FreeBSD 4.10 release cycle wrapped up. - Once 4.10 is released, the next big focus will be FreeBSD 5.3. We - expect this is be the start of the 5-STABLE branch, meaning that not - only will it be stable for production use, it will also be largely - feature complete and stable from an internal API standpoint. We expect - to release 5.3 in mid-summer, and we encourage everyone to download the - latest snapshots from - for a preview.

-

Thanks,

-

Scott Long

-
- - - OpenOffice.org porting status - - - - - NAKATA - Maho - - maho@FreeBSD.org - - - - -

After almost three years efforts for porting OpenOffice.org 1.0.x and - 1.1.0 for FreeBSD by Martin Blapp (mbr@FreeBSD.org) and other - contributors, There are four version of OpenOffice.org (OOo) in ports - tree. 1.1.1: stable version, 1.1.2: next stable, 2.0: developer and - 1.0.3: legacy. -

- -

Stable version 1.1.1 in /usr/ports/editors/openoffice-1.1/ - builds/installs/works fine for 5.2.1-RELEASE. Packages for - 5.2.1-RELEASE, 26 localized versions and 4.10-PRELEASE only English - version, are available at - http://oootranslation.services.openoffice.org/pub/OpenOffice.org/ooomisc/ - (note: source of OOo 1.1.1.RC3 is identical OOo 1.1.1)

- -

Patches needed to build are currently 18 for 1.1.1, and 161 for 1.0.3 - the number of patches are greatly reduced.

- -

OOo 1.1.2, the next stable version in - /usr/ports/editors/openoffice-1.1-devel is also builds/installs/works - fine for 5.2.1-RELEASE. We are planning to upgrade this port as soon - as 1.1.2 will be released.

- -

Next major release, 2.0 (planned to be released at January 2005 - according to - http://development.openoffice.org/releases/OpenOffice_org_trunk.html), - /usr/ports/editors/openoffice-2.0-devel, now compiles for - 5.2.1-RELEASE but have big problem that prohibits to remove BROKEN.

- -

Legacy version, OOo 1.0.3: /usr/ports/editors/openoffice-1.0/ I'm not - interested in this port. We hope someone else will maintain this.

- -

For builds, my main environment is 5.2.1-RELEASE, and I have no access - to 4-series, so several build problems had been reported for 5-current - and 4-stable, however, they now seems to be fixed. Please make sure - your Java and/or kernel are up-to-date.

- -

For version 1.1.1, yet we have serious reproducible core dumps, this - means OOo cannot pass the Quality Assurance protocol of OpenOffice.org - (http://qa.openoffice.org), so we cannot release OOo as quality - assured package. It seems to be FreeBSD's userland bug, since some - reports show that there are no problem for 4-stable but we still - searchingthe reason.

- -

Note that developers should sign JCA (Joint Copyright Assignment) - before submitting patches via PR or e-mail, otherwise patches won't be - integrated to OOo's source tree. We seriously need more developers, - testers and builders.

- -
- - - Network interface naming changes - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - -

An enhanced network interface cloning API has been created. It - allows interfaces to support more complex names than the current - name# 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. A patch has been posted to - the freebsd-net mailing list for review and will be committed in - early May. This work is taking place in the perforce repository - under: //depot/user/brooks/xname/...

- -
- - - FreeBSD Dutch Documentation Project - - - - Remko - Lodder - - remko@elvandar.org - - - - - Status and download of the documentation (not yet complete) - - - -

The FreeBSD Dutch Documentation Project is a ongoing project in - translating the handbook and other documentation to the Dutch - language. Currently we have a small team of individuals who - translate, check other's work, and publish them on the internet. - You can view the current status on the webpage (listed above). - Still we can use more people helping out, since we have a long - way to go. Every hand that wants to help, contact me, and i will - provide you details on how we work etc. Currently the project has - translated the handbook pages of: The X Windows System, and - Configuration and Tuning, they only need to be checked before - publishing.

- -
- - - ACPI - - - - - Nate - Lawson - - njl@FreeBSD.org - - - - - ACPI TODO - - ACPI Mailing List - - - -

Much of the ACPI project is waiting for architectural changes to be - completed. For instance, the cpufreq driver requires newbus - attachments for CPUs. Support code for this should be committed - at the time of publication. Other architectural changes needed - include rman support for memory/port resources and a generic hotkey - and extras driver. Important work in other areas of the kernel - including PCI powerstate support and APIC support have been - invaluable in improving ACPI on modern platforms. Thanks go to - Warner Losh and John Baldwin for this work.

- -

Code which is mostly completed and will go in once the groundwork - is finished includes the cpufreq framework, an ACPI floppy controller - driver, and full support for dynamic Cx states.

- -

ACPI-CA was updated to 20040402 in early April. This has some GPE - issues that persist in 20040427 that will hopefully be resolved by - the date of publication.

- -

I'd like to welcome Mark Santcroos (marks@) to the FreeBSD team. - He has helped in the past with debugging ACPI issues. - If any developers are interested in assisting with ACPI, please - see the ACPI TODO and send us an email.

- -
- - - Verify source reachability option for ipfw2 - - - - Andre - Oppermann - - andre@FreeBSD.org - - - - - - - -

The verify source reachability option for ipfw2 has been committed - on 23. April 2004 to FreeBSD-CURRENT. For more information see the - links above.

- -
- - - Convert ipfw2 to use PFIL_HOOKS mechanism - - - - Andre - Oppermann - - andre@FreeBSD.org - - - - - - -

ipfw2 is built directly into ip_input() and ip_output() and it makes - these functions more complicated. For some time now we have the - generic packet filter mechanism PFIL_HOOKS which are used by IPFILTER - and the new OpenBSD PF firewall packages to hook themselves into the - IP input and output path.

-

This patch makes ipfw2 fully self contained and callable through the - PFIL_HOOKS. This is still work in progress and DUMMYNET and IPDIVERT - plus Layer2 firewall are not yet fully functional again but normal - firewalling with it works just fine.

-

The patch contains some more cleanups of ip_input() and ip_output() - that is work in progress too.

- -
- - - Move ARP out of routing table - - - - Luigi - Rizzo - - luigi@FreeBSD.org - - - - Andre - Oppermann - - andre@FreeBSD.org - - - - - - -

The ARP IP address to MAC address mapping does not belong into - the routing table (FIB) as it is currently done. This will move - it to its own hash based structure which will be instantiated per - each 802.1 broadcast domain. With this change it is possible to - have more than one interface in the same IP subnet and layer 2 - broadcast domain. The ARP handling and the routing table will be - quite a bit simplified afterwards. As an additional benefit full - MAC address based accounting will be provided.

-

Luigi has become the driver of this project and posted a first - implementation for comments on 25. April 2004 (see link).

- -
- - - Automatic sizing of TCP send buffers - - - - Andre - Oppermann - - andre@FreeBSD.org - - - - - - -

The current TCP send and receive buffers are static and set to a - conservative value to preserve kernel memory. This is sub-optimal - for connections with a high bandwidth*delay product because the - size of the TCP send buffer determines how big the send window can - get. For high bandwidth trans-continental links this seriously - limits the maximum transfer speed per TCP connection. A moredetailed - description from the last status report can be found with the link - above.

-

Work on this project has been stalled due to some other network stack - projects with higher precedence (ipfw2 to pfil_hooks and - ip_input/ip_output cleanups).

- -
- - - libarchive/bsdtar - - - - Tim - Kientzle - - kientzle@FreeBSD.org - - - - - - - - -

Both bsdtar and libarchive are now part of -CURRENT. - A few minor problems have been reported and addressed, - including performance issues with many hard-links, and - options required by certain packages. - For now, the "tar" command is still an alias for "gtar." - Those who would like to use bsdtar as the default system tar - can define WITH_BSDTAR to make "tar" be an alias for - "bsdtar."

- -

My current plan is to make bsdtar be the default in -CURRENT in - about another month, probably after the 5-STABLE split, and remove - gtar from -CURRENT sometime later. It's still open if and when - this switch will occur in 5-STABLE. On the one hand, I see - potential problems if 5-STABLE and 6-CURRENT have different tar - commands; on the other hand, switching could be disruptive for - some users.

- - -
- - - GEOM Gate - - - - - Pawel Jakub - - Dawidek - - - pjd@FreeBSD.org - - - - -

GEOM Gate class is now committed as well as ggatec(8), ggated(8) - and ggatel(8) utilities. It makes distribution of disk devices - through the network possible, but on the disk level (don't confuse - it with NFS, which provides exporting data on the file system - level).

- -
- - - Improved Multibyte/Wide Character Support - - - - Tim - Robbins - - tjr@FreeBSD.org - - - -

New locales: Unicode UTF-8 locales have been added to the base system. - All of the locales previously supported by FreeBSD now have a - corresponding UTF-8 version, along with one or two new ones -- - 53 in all.

-

Library changes: The restartable conversion functions (mbrtowc(), - wcrtomb(), etc.) in the C library have been updated to handle partial - characters in the way prescribed by the C99 standard. - The <wctype.h> functions have been optimized for handling - large, fragmented character sets like Unicode and GB18030. - Documentation has been improved.

-

Utilities: The ls utility has been modified to work with wide - characters internally when determining whether a character in a - filename is printable, and how many column positions it takes on - the screen. Character handling in the wc utility has been made - more robust. Other text-processing utilities (expand, fold, unexpand, - uniq) have been modified, but these changes have not been committed - until the performance impact can be evaluated. Work on a POSIX-style - localedef utility has started, with the aim to have it replace - the current mklocale and colldef utilities in FreeBSD 6. - (It is currently on the back-burner awaiting a response to a POSIX - defect report.)

-

Future directions: wide character handling functions need to be - optimized so that they are more competitive with the single-byte - functions when dealing with 8-bit character sets. Utilities need to - be modified to handle multibyte characters, but with a careful eye - on performance. Localedef needs to be finished.

- -
- - - ATA project Status Report - - - - - Søren - Schmidt - - sos@FreeBSD.org - - - - - There is finally support (except for RAID5) for the Promise SX4/SX4000 - line of controllers. The support is rudimentary still, and doesn't - really make any good use of the cache/sequencer HW yet. The Silicon - Image 3114 support has been completed. Lots of bug fixes and cleanups. - Future work now concentrates on new controller chips (Marvell SATA - chips probably the most prominent) and getting the SATA support - finished so that hotswap etc works with SATA HW as well. Also ATA RAID - is about to get rewritten to take advantage of the features that the - ATA subsystem now offers, including support for the HW on - Promise/Marvell and the like controllers. A number of new RAID metadata -

formats (Intel, AMI) is also in the works.

- -
- - - Porting OpenBSD's packet filter - - - - - Max - Laier - - mlaier@FreeBSD.org - - - - Daniel - Hartmeier - - dhartmei@FreeBSD.org - - - - Pyun - YongHyeon - - yongari@kt-is.co.kr - - - - - - - - - - - -

The two months after the import was done were actually rather quiet. - We imported a couple of minor fixes from the OpenBSD stable branch. - The import of tcpdump 3.8.3 and libpcap 0.8.3 done by Bruce M.Simpson - in late March finally put us into the position to build a working - pflogd(8) and provide rc.d linkage for it. Tcpdump now understandsthe - pflog(4) pseudo-NIC packet format and can be used to read the - log-files.

- -

There has also been work behind the scenes to prepare an import of - the OpenBSD 3.5 sources. The patches are quite stable already andwill - be posted shortly. Altq is in the making as well and going alongquite - well based on the great work from rofug.ro, but as it needs - modifications to every network driver which have to be tested - thoroughly it needs more time.

- -
- - - The FreeBSD Simplified Chinese Project - - - - - Xin - LI - - - delphij@frontfree.net - - - - - The FreeBSD Simplified - Chinese Project (In Simplified Chinese) - - Translated Handbook Snapshot - - Translation status - Translated - Website Snapshot - - - -

We have finished about 75% of the Handbook translation work. - In the last two months we primarily worked on bringing the - handbook chapters more up to date. To make the translation - more high quality we are also doing some revision on it.

-

We are still looking for manpower on SGML'ifying the FAQ - translation which has been done last year by several volunteers.

- -
- - - - Cronyx Tau-ISA driver - - - - - Roman - Kurakin - - rik@FreeBSD.org - - - - - Cronyx WAN Adapters. - - - -

ctau(4) driver for Cronyx Tau-ISA was added. Cronyx Tau-ISA is family - of synchronous WAN adapters with various set of interfaces such as - V.35, RS-232, RS-530(449), E1 (both framed and unframed). This is a - second family of Cronyx adapters that is supported by FreeBSD now. The - first one was Cronyx Sigma-ISA, cx(4).

- -

Cronyx Tau-PCI family will become a third one. The peculiarity of this - driver that it contains private code. This code is distributed as - obfuscated source code with usual open source license agreement.Since - code is protected by obfuscation it is satisfy needs of commerce. On - the other hand it still stays a source code and thus it becomes closer - to open source projects. I hope this form of private code distribution - will become a real alternative to object form.

- -
- - - - Sync protocols (Netgraph and SPPP) - - - - - Roman - Kurakin - - rik@FreeBSD.org - - - - -

As part of my work on synchronous protocol stack a ng_sppp driver was - added to the system. This driver allows to use sppp as a Netgraph - node. Now I plan to update sppp driver as much as possible to make it - in sync with Cronyxs one (PPP part). Also I work on FRF.12 support in - FreeBSD (now I have FRF.12 support for Netgraph and SPPP (and for - Cronyx linux fr driver) but only End-to-End). I plan to test it by my - self within a week and after that I plan to make full support of - FRF.12.

-

If you want to get current version and test it, please feel free to - contact me.

- -
- - - FreeBSD threading support - - - - David - Xu - - davidxu@FreeBSD.org - - - - Doug - Rabson - - dfr@FreeBSD.org - - - - Julian - Elischer - - julian@FreeBSD.org - - - - Marcel - Moolinar - - marcel@FreeBSD.org - - - - Dan - Eischen - - deischen@FreeBSD.org - - - - - basic data on - TLS - basic threads - page - - - -

- Threading developers have been active behind the scenes - though not much has been visible. Real Life(TM) has been - hard on us as a group however.

-

Marcel and Davidxu have both (individually) - been looking at the support - for debugging threaded programs. David has a set of - patches that allow gdb to correctly handle KSE programs and - patches are being considered for libthr based processes. - Marcel added a Thread ID to allow debugging code to unambiguously - specify a thread to debug. He has also been looking at corefile - support. Both sets of patches are preliminary.

-

Dan Eischen continues to support people migrating to - libpthreads and it seems to be going well.

-

Doug Rabson has done his usual miracle work and produced - a set of preliminary patches to implement TLS (Thread - Local Storage) for the i386 platform.

-

Julian Elischer is investigating some refactoring of the kernel - support code.

-

Platforms:

-

i386, amd64, ia64 libpthread works.

-

alpha, sparc64 not implemented.

- -
- - - Binary security updates for FreeBSD - - - - Colin - Percival - - cperciva@daemonology.net - - - - - - - - -

Having recently passed its first birthday, FreeBSD Update is - now being used on about 170 machines every day; on a typical - day, around 60 machines will download updates (the others being - already up to date). To date, over 157000 files have been - updated on over 4200 machines.

- -
- - - - PCI Powerstates and Resource - - - - - Warner - Losh - - imp@FreeBSD.org - - - - -

Lazy allocation of pci resources has been merged into the main - tree. These changes allow FreeBSD to run on computers where PnP - OS is set to true. In addition, the saving and restoring of the - resources across suspend/resume has helped some devices come - back from suspend.

- -

Future work will focus on bus numbering.

- -
- - - Book: The Design and Implementation of the FreeBSD Operating System - - - - Kirk - McKusick - - mckusick@FreeBSD.org - - - - George - Neville-Neil - - gnn@neville-neil.com - - - - - - -

The new Book "The Design and Implementation of the FreeBSD Operating - System" is the successor of the legendary "The Design and - Implementation of 4.4BSD" book which has become the de-facto standard - for teaching of Operating System internals in universities - world-wide.

-

This new and completely reworked edition is based on FreeBSD 5.2 and - the upcoming FreeBSD 5.3 releases and contains in-details looks into - all areas (from virtual memory management to interprocess - communication and network stack) of the operating system on 700 - pages.

-

It is now in final production by Addison-Wesley and will be available - in early August 2004. The ISBN is 0-201-70245-2.

- -
- - - Status Report - - - - Roland - van Laar - - the_mip_rvl@myrealbox.com - - - - - - - - - -

This patch if for if_wi current. It enables you to disable the ssid - broadcasting and it also allows you to disable clients connecting - with a blank ssid.

- -
- - - SMPng Status Report - - - - - John - Baldwin - - jhb@FreeBSD.org - - - - smp@FreeBSD.org - - - - - - - - -

Several folks continue to work on the locking the network stack - as noted elsewhere in this report. Outside of the network stack, - the following items were worked on during the March and April time - frame. Giant was pushed down in the fork, exit, and wait system - calls as far as possible. Alan Cox (alc@) continues to lock the - VM subsystem and push down Giant where appropriate. A few system - calls and callouts were marked MP safe as well.

- -

A few changes were made to the interrupt thread infrastructure. - Interrupt thread preemption was finally enabled on the Alpha - architecture with the help of the recently added support to the - scheduler for pinning threads to a specific CPU. An optimization - to reduce context switches during heavy interrupt load was added - as well as rudimentary interrupt storm protection.

- -
- - - FreeBSD/arm - - - - - Olivier - Houchard - - cognet@FreeBSD.org - - - - -

FreeBSD/arm is now in the FreeBSD CVS tree. Dynamic libraries now work, - and NO_CXX=true NO_RESCUE=true buildworld works too (with patches for - toolchain that will live outside the tree for now). Now the focus - should be on xscale support.

- -
- - - CAM lockdown and threading - - - - - Scott - Long - - scottl@FreeBSD.org - - - - -

Work has begun on locking down the CAM subsystem. The project is - divided into several steps: -

-
    -
  • Separation of the SCSI probe peripheral from cam_xpt.c to - scsi_probe.c
  • -
  • Threading of the device probe sequence.
  • -
  • Locking and reference counting the peripheral drivers.
  • -
  • Locking the XPT and device queues.
  • -
  • Locking one or more SIMs and devising a way for non-locked drivers - to function.
  • -
- -

While the immediate goal of this work is to lock CAM, it also points - us in the direction of separating out the SCSI-specific knowledgefrom - the core. This will allow other transports to be written, such as - SAS, iSCSI, and ATA.

- -

Progress is being tracked in the FreeBSD Perforce server in the - camlock branch. I will make public patches available once it has - progressed far enough for reasonable testing. So far, the first two - items are being worked on.

- -
- - - Network Stack Locking - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - - SMPng Web Page - Robert's - Network Stack Locking Page - - - -

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.

- -

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:

- -
    -
  • Review of socket flag and socket buffer flag locking; - so_state broken out into multiple fields covered by different - locks to avoid lock orders in frobbing the so_state field. - Work in progress.
  • -
  • WITNESS now includes hard ordering for many network locks to - improve lock order debugging process.
  • -
  • MAC Framework modified to use pcbs instead of sockets in a - great many situations to avoid socket locking in network layer, - especially when generating new mbufs.
  • -
  • New annotations relating to socket and interface locking.
  • -
  • Began NetGraph review and corrected NetGraph socket locking - problems.
  • -
  • sendfile() locking appears now to be fixed, albeit holding - Giant more than strictly necessary.
  • -
  • if_ppp global variable locking performed and merged.
  • -
  • A variety of race conditions and bugs in soreceive() locking - fixed, including existing race conditions triggered only rarely - in -HEAD and -STABLE that triggered easily with SMP and Giant-free - operation.
  • -
  • Locking of socket buffer and socket fields from fifofs. - Proposed patch to correct lock order problem between vnode - interlock and socket buffer lock order problems. fifofs - interactions with UNIX domain sockets cleaned up.
  • -
  • Research into KQueue issues. Feedback to KQueue locking - patch authors.
  • -
  • netatalk AARP locked down, MPSAFE, and merged to CVS.
  • -
  • Lock order issues between socket, socket buffer, and UNIX domain - socket locks corrected. Race conditions and potential deadlocks - removed.
  • -
  • if_gif recursion cleanups, if_gif is much more MPSAFE.
  • -
  • First pass MPSAFE locking of NFS server uses an NFS server - subsystem lock to allow so_upcall() from socket layer without - Giant. This closes race conditions in the NFS server when - operating Giant free. Second pass for data based locking is - also in testing.
  • -
  • if_sl.c (SLIP) fine-grained locking completed and merged to - CVS.
  • -
  • if_tun.c (tunnel) fine-grained locking completed and merged to - CVS.
  • -
  • Merge of conditional Giant locking on debug.mpsafenet to CVS; - semantics now changed so that Giant isn't just twiddled over - the forwarding path, but the entire stack. Must be used with - caution unless running with our patches. Callouts also - convered to conditional safety.
  • -
  • if_gif, if_gre global variables locked and merged to CVS.
  • -
  • netatalk DDP cleanup (break out PCB from protocol code), - largely locked down at the PCB level. Some work remains to - be done before patches can be distributed for testing, but close - to MPSAFE.
  • -
  • Began review of netipx, netinet6 code for locking requirements, - some bugs corrected.
  • -
  • Race conditions in handling of socket so_comp, so_incomp - debugged and hopefully closed through new locking of these - fields.
  • -
  • Many new locking annotations, field documentation, lock order - documentation.
  • -
-

Netperf patches are proving to be quite stable in a broad variety - of environment, as long as non-MPSAFE chunks are avoided. Kqueue, - IPv6, and ifnet locking remain the most critical areas where - additional functionality is required. Focus is shifting from new - development to in depth testing, performance measurement, and - interactions with other subsystems.

-

This work would not be possible without contributions from the - following people (and no doubt many others): - John Baldwin, Bob Bishop, Brooks Davis, Pawel Jakub Dawidek, Matthew - Dodd, Julian Elischer, Ruslan Ermilov, John-Mark Gurney, Jeffrey Hsu, - Kris Kennaway, Roman Kurakin, Max Laier, Sam Leffler, Scott Long, Rick - Maklem, Bosko Milekic, George Neville-Neil, Andre Oppermann, Luigi - Rizzo, Jeff Roberson, Tim Robbins, Mike Silberback, Bruce Simpson, - Seigo Tanimura, Hajimu UMEMOTO, Jennifer Yang, Peter Wemm. We hope to - present these patches on arch@ within a few days, although some - elements required continued refinement (especially socket locking).

- -
- - - TrustedBSD Mandatory Access Control (MAC) - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - - TrustedBSD Discussion List - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD Project - - - -

The TrustedBSD Mandatory Access Control (MAC) Framework - permits the FreeBSD kernel and userspace access control - policies to be adapted at compile-time, boot-time, or - run-time. The MAC Framework provides common infrastructure - components, such as policy-agnostic labeling, making it - possible to easily development and distribute new access - control policy modules. Sample modules include Biba, MLS, - and Type Enforcement, as well as a variety of system - hardening policies.

- -

The TrustedBSD MAC development branch in Perforce was - integrated to the most recent 5-CURRENT.

- -

mdmfs(8) -l to create multi-label mdmfs file systems (merged).

- -

Diskless boot updated to support MAC.

- -

Re-arrangement of MAC Framework code to break out mac_net.c - into mac_net.c, mac_inet.c, mac_socket.c (merged).

- -

libugidfw(3) grows bsde_add_rule(3) to automatically allocate - rule numbers (merged). ugidfw(8) grows 'add' to use this - (merged).

- -

pseudofs(4) no longer requires MAC localizations.

- -

BPF fine-grained locking now used to protect BPD descriptor - labels instead of Giant (merged).

- -

Prefer inpcb's as the source of labels over sockets when - creating new mbufs throughout the network stack, reducing - socket locking issues for labels.

- -
- - - TrustedBSD Security-Enhanced BSD (SEBSD) port - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - - TrustedBSD Discussion List - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD Project - - - - -

TrustedBSD "Security-Enhanced BSD" (SEBSD) is a port of NSA's - SELinux FLASK security architecture, Type Enforcement (TE) - policy engine and language, and sample policy to FreeBSD using - the TrustedBSD MAC Framework. SEBSD is available as a loadable - policy module for the MAC Framework, along with a set of - userspace extensions support security-extended labeling calls. - In most cases, existing MAC Framework functions provide the - necessary abstractions for SEBSD to plug in without SEBSD-specific - changes, but some extensions to the MAC Framework have been - required; these changes are developed in the SEBSD development - branch, then merged to the MAC branch as they mature, and then - to the FreeBSD development tree.

- -

Unlike other MAC Framework policy modules, the SEBSD module - falls under the GPL, as it is derived from NSA's - implementation. However, the eventual goal is to support - plugging SEBSD into a base FreeBSD install without any - modifications to FreeBSD itself.

- -

Integrated to latest FreeBSD CVS and MAC branch.

- -

New FreeBSD code drop updated for capabilities in preference - to superuser checks.

- -

Installation instructions now available!

- - -
- - - TrustedBSD Audit - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - - TrustedBSD Discussion List - - trustedbsd-discuss@TrustedBSD.org - - - - - TrustedBSD Project - - - -

The TrustedBSD Project is producing an implementation of CAPP - compliant Audit support for use with FreeBSD based on the Apple - Darwin implementation.

- -

Experimentally integrated the XNU audit implementation from Apple's - Darwin 7.2 into Perforce.

- -

Adapted audit framework to compile into FreeBSD -- required - modifying memory allocation and synchronization to use FreeBSD - SMPng primitives instead of Mach primitives. - Pushed down the Giant lock out of most of the audit code, various - other FreeBSD adaptations such as suser() API changes, using BSD - threads, td->td_ucred, etc.

- -

Adapted per-thread audit data to map to FreeBSD threads

- -

Cleaned up userspace/kernel API interactions, including udev_t/ - dev_t inconsistencies between Darwin and FreeBSD.

- -

Use vn_fullpath() instead of vn_getpath(), which is a less - complete solution we'll need to address in the future.

- -

Basic kernel framework now operates on FreeBSD; praudit - tool written that can parse FreeBSD BSM and Solaris BSM.

- - -
-
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 b009ca22d6..0000000000 --- a/en/news/status/report-2004-05-2004-06.xml +++ /dev/null @@ -1,1107 +0,0 @@ - - - - - - - May-June - 2004 - - -
- Introduction - -

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!

- -

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 - - http://www.freebsd.org/releases/5.3R/todo.html. 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!

-

Thanks,

-

Scott Long

-
- - - Network Stack Locking - - - - - Robert - Watson - - rwatson@FreeBSD.org - - - - - FreeBSD SMPng Web Page - Netperf Web Page - - - -

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.

- -

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.

- -
    -
  • 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)
  • -
  • 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)
  • -
  • Extensive annotation of locking state throughout the network - stack, especially relating to sockets.
  • -
  • Several locking fixes for ng_base.c, the basic Netgraph - infrastructure. (Merged)
  • -
  • Global accept filter list locking, especially during registration. - (Partially merged)
  • -
  • Revise locking in socket state transition helpers, such as - soisconnecting(), soisconnected(), etc, to simplify lock - handling. (Merged)
  • -
  • Fix bugs in netatalk DDP locking, merge all netatalk locking to - CVS. (Merged)
  • -
  • soref() socket locking assertions and associated fixes. - (Merged)
  • -
  • Fifofs now uses its own mutex instead of the vnode interlock to - synchronize fifo operations, avoiding lock order issues with - socket buffer locking. (Merged)
  • -
  • Cleanup of locking related to file descriptor close and Giant - requirements. Experimentation with reducing locking here.
  • -
  • Review and fix several instances of socket locking in the TCP - code. (Merged)
  • -
  • NFS server locking merged to FreeBSD CVS. (Merged)
  • -
  • 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)
  • -
  • Issue associated with non-atomic setting of SS_NBIO in fifofs - resolved by adding MSG_NBIO. (Merged)
  • -
  • Several flags from so_state moved to sb_state so they can be - locked properly using the socket buffer mutex. (Merged)
  • -
  • 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)
  • -
  • 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)
  • -
  • sb_flags now properly locked. (Merged)
  • -
  • Global MAC label ifnet lock introduced to protect labels on - network interfaces. (Merged)
  • -
  • 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)
  • -
  • 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)
  • -
  • 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)
  • -
  • IGMP and multicast locking merged to CVS. (Merged)
  • -
  • Cleanup of lasting recursive Giant acquisition left over from - forwarding/bridging plane only locking. (Merged)
  • -
  • ALTQ imported into the FreeBSD in a locked state. (Merged)
  • -
  • Conditional locking in sbdrop(), sbdroprecord(), sbrelease(), - sbflush(), spappend(), sbappendstream(), sbappendrecord(), - sbinsertoob(), sbappendaddr(), sbappendcontrol() eliminated. - (Merged)
  • -
  • Some cleanup of IP stack management ioctls and lock order issues. - (Merged)
  • -
  • Cleanup and annotation of sorflush() use of a temporary stack held - socket buffer during flush. (Merged)
  • -
  • 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)
  • -
  • With the integration of revised ifnet cloning, cloning data - structures are now better locked. (Merged)
  • -
  • Socket locking for portalfs. (Merged)
  • -
  • Global so_global_mtx introduced to protect generation numbers and - socket counts. (Merged)
  • -
  • KAME IPSEC and FAST_IPSEC now use rawcb_mtx to protect raw socket - list integration. More work required here. (Merged)
  • -
  • Socket locking around SO_SNDLOWAT and SO_RCVLOWAT. (Merged)
  • -
  • soreserve() and sbreserve() reformulation to improve locking and - consistency. Similar cleanup in the use of reservation - functions in tcp_mss(). (Merged)
  • -
  • Locking cost reduction in sbappend*(). (Merged)
  • -
  • 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)
  • -
  • IPv6 inpcb locking. Resulting cleanup of inpcb locking - assertions, and enabling of inpcb locking assertions by default - even with IPv6 compiled in.
  • -
  • if_xl now MPSAFE. (Merged)
  • -
  • soreceive() non-inline OOB support placed in its own function. - (Merged)
  • -
  • NFS client socket locking. (Merged)
  • -
  • SLIP now uses a asynchronous task queue to prevent Giant-free - entrance of the TTY code.
  • -
  • E-mail sent to current@ providing Giant-free operation guidelines - and details.
  • -
- -
- - - FreeBSD/MIPS Status Report - - - - - Juli - Mallett - - jmallett@FreeBSD.org - - - - - - mips64emul - - - -

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.

-

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.

-

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.

- -
- - - PowerPC Port - - - - - Peter - Grehan - - - grehan@FreeBSD.org - - - - -

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.

- -
- - - IPFilter Upgraded to 3.4.35 - - - - Darren Reed - - darrenr@FreeBSD.org - - - - IPFilter home page - - -

IPFilter has been upgraded in both FreeBSD-current and 4-STABLE - (post 4.10) from version 3.4.31 to 3.4.35.

- -
- - - Low-overhead performance monitoring for FreeBSD - - - - - Joseph - Koshy - - jkoshy@FreeBSD.org - - - - - A - best-in-class performance monitoring system for FreeBSD built - over the hardware performance monitoring facilities of modern - CPUs. - - - -

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.

- -

An early prototype is available under Perforce [under - //depot/user/jkoshy/projects/pmc/].

- -
- - - FreeBSD profile.sh - - - - - Tobias - - Roth - - - ports@fsck.ch - - - - - - - - -

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.

- -
- - - Sync protocols (Netgraph and SPPP) - - - - - Roman - Kurakin - - rik@FreeBSD.org - - - - - Current code, ideas, problems. - - - -

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).

- -

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.

- -

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.

- -
- - - Cronyx Adapters Drivers - - - - - Roman - Kurakin - - rik@FreeBSD.org - - - - - Cronyx WAN Adapters. - - - -

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).

-

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).

- -
- - - Network interface naming changes - - - - - Brooks - Davis - - brooks@FreeBSD.org - - - - -

An enhanced network interface cloning API has been committed. It - allows interfaces to support more complex names then the current - name# 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.

-

Work on userland support for this functionality is ongoing.

- -
- - - SMPng Status Report - - - - - John - Baldwin - - jhb@FreeBSD.org - - - smp@FreeBSD.org - - - - - - - - -

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.

- -
- - - i386 Interrupt Code & PCI Interrupt Routing - - - - - John - Baldwin - - jhb@FreeBSD.org - - - - -

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.

- -

Support for suspend and resume on i386 was also slightly - improved. Suspend and resume support was added to the ELCR, - $PIR, and apic drivers.

- -

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.

- -

Mixed mode can now be disabled or enabled at boot time via a - loader tunable.

- -
- - - KDE on FreeBSD - - - - - Michael - Nottebrock - - lofi@FreeBSD.org - - - - - - - - -

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 - http://snapshots.se.freebsd.org, - 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.

- -
- - - Various GEOM classes and geom(8) utility - - - - - Pawel Jakub - Dawidek - - pjd@FreeBSD.org - - - - -

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.

- -
- - - FreeBSD Handbook, 3rd Edition, Volume II: Administrator Guide - - - - - Murray - Stokely - - murray@FreeBSD.org - - - - - FreeBSD Handbook 3rd Edition Task List. - - - -

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.

- -
- - - VuXML and portaudit - - - - - Tom - Rhodes - - trhodes@FreeBSD.org - - - - - VuXML DTD and more information - Rendered contents of FreeBSD VuXML - Rendered version of portaudit.txt - - - -

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.

- -

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.

- -
- - - - Bluetooth stack for FreeBSD (Netgraph implementation) - - - - - - Maksim - Yevmenkin - - m_evmenkin@yahoo.com - - - - -

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.

- -
- - - FreeBSD Dutch Documentation Project - - - - Remko - Lodder - - remko@elvandar.org - - - - Preview html documentation - Preview documentation tree - Preview html in in tbz - - -

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.

- -
- - - FreeBSD Brazilian Documentation Project - - - - - DOC-BR - Discussion List - - doc@fugspbr.org - - - - - - - - - - -

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.

-

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!

- -
- - - Packet Filter - pf - - - - - Max - Laier - - mlaier@FreeBSD.org - - - - Daniel - Hartmeier - - dhartmei@FreeBSD.org - - - - - The pf homepage. - - - -

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.

- -

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.

- -

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.

- -
- - - ALTQ import - - - - - Max - Laier - - mlaier@FreeBSD.org - - - - - ALTQ homepage. - ALTQ integration in FreeBSD project. - ALTQ merged into pf. - - - - -

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".

- -

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.

- -

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.

- -
- - - HP Network Scanjet 5 - - - - - Julian - Stacey - - jhs@FreeBSD.org - - - - - HP Network Scanjet 5 Running FreeBSD Inside - - - -

HP Network Scanjet 5 can unobtrusively run FreeBSD inside the - scanner. Those who miss their Unix at work can have a FreeBSD box, - un-noticed & un-challenged by blinkered managers who block any - non Microsoft PC in the building. http://berklix.com/scanjet/

- -
- - - EuroBSDCon 2004 registration now open - - - - - Patrick M. - Hausen - - hausen@punkt.de - - - - - EuroBSDCon 2004 official website - - - -

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.

- -
- - - Buf Junta project - - - - - Poul-Henning - Kamp - - phk@FreeBSD.org - - - - -

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.

- -
- - - TTY subsystem realignment - - - - - Poul-Henning - Kamp - - phk@FreeBSD.org - - - - -

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 & 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.

- -
- - - kgi4BSD - - - - - Nicholas - Souchu - - nsouch@FreeBSD.org - - - - - Project URL - - - -

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.

- -

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.

- -

Documentation about KGI design is in progress.

- -
- - - FreeBSD ports monitoring system - - - - - Mark - Linimon - - - linimon_at_lonesome_dot_com - - - - - FreeBSD ports monitoring system - - - -

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.

-

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.)

-

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.

-

Here are my latest observations about the trends in ports PRs:

-
    -
  • 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%.
  • -
  • 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.)
  • -
  • 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.
  • -
  • 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.
  • -
  • 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.
  • -
  • 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". - - Here is the entire list; the individual bars are - clickable.
  • -
- -
- - - Improved Multibyte/Wide Character Support - - - - Tim - Robbins - - tjr@FreeBSD.org - - - -

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.

-

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).

- -
- - - FreeBSD/arm - - - - - Olivier - Houchard - - cognet@FreeBSD.org - - - - - Not much to report, Xscale support is in progress, and should - boot at least single user really soon on an Intel IQ31244 -

Evaluation board.

- -
- - - CAM Lockdown - - - - - Scott - Long - - scottl@freebsd.org - - - - -

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 //depot/projects/scottl-camlock/... branch for now.

- -
- - - Project Mini-Evil - - - - - Scott - Long - - scottl@freebsd.org - - - - -

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.

-

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.

- -
- -
diff --git a/en/news/status/report-2004-07-2004-12.xml b/en/news/status/report-2004-07-2004-12.xml deleted file mode 100644 index 4e362229aa..0000000000 --- a/en/news/status/report-2004-07-2004-12.xml +++ /dev/null @@ -1,2341 +0,0 @@ - - - - - - July-December - - 2004 - - -
- Introduction - -

The FreeBSD status report is back again after another small break. The - second half of 2004 was incredibly busy; FreeBSD 5.3 was released, the - 6-CURRENT development branch started, and EuroBSDCon 2004 was a huge - success, just to name a few events. This report is packed with an - impressive 44 submissions, the most of any report ever!

- -

It's also my pleasure to welcome Max Laier and Tom Rhodes to the status - report team. They kindly volunteered to help keep the reports on time - and help improve their quality. Max in particular is responsible for - the reports being divided up into topics for easier browsing. Many - thanks to both for their help!

-
- - - proj - - Projects - - - - doc - - Documentation - - - - kern - - Kernel - - - - arch - - Architectures - - - - ports - - Ports - - - - vendor - - Vendor / 3rd Party Software - - - - misc - - Miscellaneous - - - - Project Frenzy (FreeBSD-based Live-CD) - - - - - Sergei - - Mozhaisky - - - technix@ukrpost.com.ua - - - - - Official web site - - English version - - - -

Frenzy is a "portable system administrator toolkit," Live-CD - based on FreeBSD. It generally contains software for hardware - tests, file system check, security check and network setup and - analysis. Current version 0.3, based on FreeBSD 5.2.1-RELEASE, - contains almost 400 applications in 200MB ISO-image.

- -

Tasks for next release: script for installation to HDD; unified - system configuration tool; updating of software collection.

- -
- - - ALTQ - - - - - Max - - Laier - - - mlaier@FreeBSD.org - - - - - - - - ALTQ(4) man-page. - - - -

ALTQ is part of FreeBSD 5.3 release and can be used to do - traffic shaping and classification with PF. In CURRENT IPFW gained - the ability to do ALTQ classification as well. A steadily - increasing number of NIC drivers has been converted to support - ALTQ. For details see the ALTQ(4) man-page.

- - - - Convert/test more NIC drivers. - - Write documentation. - -
- - - TCP Reassembly Rewrite and Optimization - - - - - Andre - - Oppermann - - - andre@FreeBSD.org - - - - - - - - - - -

Currently TCP segment reassembly is implemented as a linked list - of segments. With today's high bandwidth links and large - bandwidth*delay products this doesn't scale and perform well.

- -

The rewrite optimizes a large number of operational aspects of - the segments reassembly process. For example it is very likely that - the just arrived segment attaches to the end of the reassembly - queue, so we check that first. Second we check if it is the missing - segment or alternatively attaches to the start of the reassembly - queue. Third consecutive segments are merged together (logically) - and are skipped over in one jump for linear searches instead of - each segment at a time.

- -

Further optimizations prototyped merge consecutive segments on - the mbuf level instead of only logically. This is expected to give - another significant performance gain. The new reassembly queue is - tracking all holes in the queue and it may be beneficial to - integrate this with the scratch pad of SACK in the future.

- -

Andrew Gallatin was able to get 3.7Gb/sec TCP performance on - dual-2Gbit Myrinet cards with severe packet reordering (due to a - firmware bug) with the new TCP reassembly code. See second - link.

- -
- - - TTCPv2: Transactional TCP version 2 - - - - - Andre - - Oppermann - - - andre@FreeBSD.org - - - - - - - - -

The old TTCP according to RFC1644 was insecure, intrusive, - complicated and has been removed from FreeBSD >= 5.3. Although - the idea and semantics behind it are still sound and valid.

- -

The rewrite uses a much easier and more secure system with 24bit - long client and server cookies which are transported in the TCP - options. Client cookies protect against various kinds of blind - injection attacks and can be used as well to generally secure TCP - sessions (for BGP for example). Server cookies are only exchanged - during the SYN-SYN/ACK phase and allow a server to ensure that it - has communicated with this particular client before. The first - connection is always performing a 3WHS and assigning a server - cookie to a client. Subsequent connections can send the cookie back - to the server and short-cut the 3WHS to SYN->OPEN on the - server.

- -

TTCPv2 is fully configurable per-socket via the setsockopt() - system call. Clients and server not capable of TTCPv2 remain fully - compatible and just continue using the normal 3WHS without any - delay or other complications.

- -

Work on implementing TTCPv2 is done to 90% and expected to be - available by early February 2005. Writing the implementation - specification (RFC Draft) has just started.

- -
- - - CPU Cache Prefetching - - - - - Andre - - Oppermann - - - andre@FreeBSD.org - - - - - - - - -

Modern CPU's can only perform to their maximum if their working - code is in fast L1-3 cache memory instead of the bulk main memory. - All of today's CPU's support certain L1-3 cache prefetching - instructions which cause data to be retrieved from main memory to - the cache ahead of the time that it is already in place when it is - eventually accessed by the CPU.

- -

CPU Cache Prefetching however is not a golden bullet and has to - be used with extreme care and only in very specific places to be - beneficial. Incorrect usage can lead to massive cache pollution and - a drop in effective performance. Correct and very carefully usage - on the other can lead to drastic performance increases in common - operations.

- -

In the linked patch CPU cache prefetching has been used to - prefetch the packet header (OSI layer 2 to 4) into the CPU caches - right after entering into the network stack. This avoids a complete - CPU stall on the first access to the packet header because packets - get DMA'd into main memory and thus never are already pre-cache in - the CPU caches. A second use in the patch is in the TCP input code - to prefetch the entire struct tcpcb which is very large and used - with a very high probability. Use in both of these places show a - very significant performance gain but not yet fully quantified.

- -

The final patch will include documentation and a guide to - evaluate and assess the use of CPU cache prefetch instructions in - the kernel.

- -
- - - TCP Cleanup and Optimizations - - - - - Andre - - Oppermann - - - andre@FreeBSD.org - - - - - - - - -

The TCP code in FreeBSD has evolved significantly since the fork - from 4.4BSD-Lite2 in 1994 primarily due to new features and - refinements of the TCP specifications.

- -

The TCP code now needs a general overhaul, streamlining a - cleanup to make it easily comprehensible, maintainable and - extensible again. In addition there are many little optimizations - that can be done during such an operation propelling FreeBSD back - at the top of the best performing TCP/IP stacks again, a position - it has held for the longest time in the 90's.

- -

This overhaul is a very involved and delicate matter and needs - extensive formal and actual testing to ensure no regressions - compared to the current code. The effort needed for this work is - about two man-month of fully focused and dedicated time. To get it - done I need funding to take time off my day job and to dedicate me - to FreeBSD work much the way PHK did with his buffer cache and - vnode rework projects.

- -

In February 2005 I will officially announce the funding request - with a detailed description of the work and how the funding works. - In general I can write invoices for companies wishing to sponsor - this work on expenses. Tax exempt donations can probably be - arranged through the FreeBSD foundation. Solicitations of money are - already welcome, please contact me on the email address above.

- - - - Funding for two man-month equivalents of my time. - - If you want or intend to sponsor US$1k or more please contact - me in advance already now. - -
- - - Move ARP out of routing table - - - - - Andre - - Oppermann - - - andre@FreeBSD.org - - - - - Qing - - Li - - - qingli@speackeasy.net - - - - - - - - -

The ARP IP address to MAC address mapping does not belong into - the routing table (FIB) as it is currently done. This will move it - to its own hash based structure which will be instantiated per each - 802.1 broadcast domain. With this change it is possible to have - more than one interface in the same IP subnet and layer 2 broadcast - domain. The ARP handling and the routing table will be quite a bit - simplified afterwards. As an additional benefit full MAC address - based accounting will be provided.

- -

Qing Li has become the driver and implementor of this project - and is expected to post a first patch for comments shortly in - February 2005.

- -
- - - Layer 2 PFIL_HOOKS - - - - - Andre - - Oppermann - - - andre@FreeBSD.org - - - - - - - - -

IPFW2 has been converted to use PFIL_HOOKS for the IP[46] - in/output path. (See link.) Not converted yet is the Layer 2 - Etherfilter functionality of IPFW2. It is still directly called - from the ether_input/output and bridging code.

- -

Layer 2 PFIL_HOOKS provide a general abstraction for packet - filters to hook into the Layer 2 packet path and filter or - manipulate such packets. This makes it possible to use not only - IPFW2 but also PF and others for Layer 2 filtering.

- -
- - - Common Address Redundancy Protocol - CARP - - - - - Max - - Laier - - - mlaier@FreeBSD.org - - - - - - - - -

CARP is an alternative to VRRP. In contrast to VRRP it has full - support for IPv6 and uses crypto to protect the advertisements. It - was developed by OpenBSD due to concerns that the HSRP patent might - cover VRRP and CISCO might defend its patent. CARP has, since then, - improved a lot over VRRP.

- -

CARP is implemented as an in-kernel multicast protocol and - displays itself as a pseudo interface to the user. This makes - configuration and administration very simple. CARP also - incorporates MAC based load-balancing.

- -

Patches for RELENG_5 and recent HEAD are available from the URL - above. I plan to import these patches in the course of the next two - to four month. RELENG_5 has all necessary ABI to support CARP and I - might MFC it for release 5.4 or 5.5 - depending how well the HEAD - import goes.

- - - - Please test and send feedback! - - Write documentation. - - Import newest OpenBSD changes. - -
- - - FreeBSD Source Repository Mirror for svn/svk - - - - - Kao - - Chia-liang - - - clkao@FreeBSD.org - - - - - Repository - browser. - - - RSS for RELENG_5 commits. - - - RSS for CURRENT commits. - - svk homepage. - - - -

A public Subversion mirror of the FreeBSD repository is provided - at svn://svn.clkao.org/freebsd/. This is intended for people who - would like to try the svk distributed version control system.

- -

svk allows you to mirror the whole repository and commit when - offline. It also provides history-sensitive branching, merging, and - patches. Non-committers can easily maintain their own branch and - track upstream changes while their patches are being reviewed.

- -
- - - Secure Updating - - - - - Colin - - Percival - - - cperciva@FreeBSD.org - - - - - Portsnap - - FreeBSD - Update - - - -

In my continuing quest to secure the mechanisms by which FreeBSD - users keep their systems up to date, I've added a new tool: - Portsnap. Available as sysutils/portsnap in the ports tree, this - utility securely downloads and updates a compressed snapshot of the - ports tree; this can then be used to extract or update an - uncompressed ports tree. In addition to operating in an end-to-end - secure manner thanks to RSA signatures, portsnap operates entirely - over HTTP and can use under one tenth of the bandwidth of cvsup for - users who update their ports tree more than once a week.

- -

FreeBSD Update -- my utility for secure and efficient binary - tracking of the Security/Errata branches -- continues to be widely - used, with over 100 machines downloading security or errata updates - daily.

- -

At some point in the future I intend to bring both of these - utilities into the FreeBSD base system, probably starting with - portsnap.

- -
- - - Cronyx Adapters Drivers - - - - - Roman - - Kurakin - - - rik@FreeBSD.org - - - - - Cronyx Software download - page. - - - -

Currently FreeBSD supports three family of Cronyx sync adapters: - Tau-PCI - cp(4), Tau-ISA - ctau(4) and Sigma - cx(4). All these - drivers were updated (in 6.current) and now they are Giant free. - However, this is true only for sppp(4). If you are using Netgraph - or async mode (for Sigma) you may need to turn mpsafenet off for - that driver with appropriate kernel variable.

- - - - Now all these drivers and sppp(4) are using recursive lock. - So the first task is to make these locks non recursive. - - Second task is to check/make drivers workable in - netgraph/async mode. - - I think about ability to switch between sppp/netgraph mode at - runtime. For now you should recompile module/kernel to change - mode. - -
- - - EuroBSDCon 2005 - Basel / Switzerland - - - - - Max - - Laier - - - mlaier@FreeBSD.org - - - - - EuroBSDCon Homepage - - - -

This year's EuroBSDCon will be held at the University of Basel, - Switzerland from 25th through 27th November. The call for papers - should happen shortly. Please consider attending or even - presenting. Check the conference homepage for more information.

- -
- - - FreeSBIE Status Report - - - - - FreeSBIE - - Staff - - - staff@FreeSBIE.org - - - - - FreeSBIE Website - - - FreeSBIE Mailing List - - - -

FreeSBIE is a Live-CD based on the FreeBSD Operating system, or - even easier, a FreeBSD-based operating system that works directly - from a CD, without touching your hard drive.

- -

On December, 6th, 2004, FreeSBIE Staff released FreeSBIE 1.1, - based on FreeBSD 5.3-RELEASE. Some of the innovations are: a - renewed series of scripts to support power users in the use of - FreeSBIE 1.1, an installer to let users install FreeSBIE 1.1 on - their hard drives, thus having a powerful operating system such as - FreeBSD, but with all the personalizations FreeSBIE 1.1 carries, - the presence of the best open source software, chosen and - personalized, such as X.Org 6.7, XFCE 4.2RC1, Firefox 1.0 and - Thunderbird 0.9.2.

- -

For a complete list of the included software, please consult: - - http://www.freesbie.org/doc/1.1/FreeSBIE-1.1-i386.pkg_info.txt -

- -

At EuroBSDCon 2004 in Karlsruhe, Germany, people from the - FreeSBIE staff gave a talk, deeping into FreeSBIE scripts - implementation and use.

- - - - Translating website and documentation - -
- - - PowerPC Port - - - - - Peter - - Grehan - - - grehan@FreeBSD.org - - - - - Miniinst - ISO. - - Miniinst - relnotes. - - - -

A natively built 6.0-CURRENT miniinst ISO is available at the - above link. It runs best on G4 Powermacs, but may run on other - Newworld machines. See the release notes for full details.

- -

As usual, lots of help is needed. This is a great project for - those who want to delve deeply into FreeBSD kernel internals.

- -
- - - Dingo Monthly Report - - - - - George - - Neville-Neil - - - gnn@FreeBSD.org - - - - - - Network Stack Cleanup Project. - - - -

In the last month we set up the project page noted above and - also created a p4 branch for those of us who use p4 to do work - outside of CVS.

- -
- - - FreeBSD GNOME Project Status Report - - - - - Joe - - Marcus - - - marcus@FreeBSD.org - - - - - FreeBSD GNOME - Project - - - -

We haven't produced a status report in a while, but that's just - because we've been busy. Since our last report in March 2004, we - have added three new team members: Koop Mast (kwm), Jeremy - Messenger (mezz), and Michael Johnson (ahze). Jeremy has been quite - helpful in GNOME development porting while Michael and Koop have - been focusing on improving GNOME multimedia, especially GStreamer. - The stable release of GNOME is now up to 2.8.2, and we are actively - working on the GNOME 2.9 development branch with is slated to - become 2.10 on March 9 of this year.

- -

The - GNOME - Tinderbox - - is still cranking away, and producing packages for both the stable - and development releases of GNOME for all supported i386 versions - of FreeBSD.

- -

Thanks to Michael Johnson, the FreeBSD GNOME team has recently - been given - - permission to use the Firefox and Thunderbird names - - , official icons, and to produce officially branded builds. Mozilla - has also been very interested in merging our local patches back - into the official source tree. This should greatly improve the - quality of Firefox and Thunderbird on FreeBSD moving forward.

- -

Finally, Adam Weinberger (adamw) has been pestering the team - for photos so that we can finally show the community who we are. It - is still unclear as to whether or not this will attract more - FreeBSD GNOME users, or land us on the Homeland Security no-fly - list.

- - - - Need help porting - HAL - - to FreeBSD (contact - marcus@FreeBSD.org - - ) - - Need help porting - - libburn - - to FreeBSD (contact - bland@FreeBSD.org - - ) - - Anyone interested in reviving - Gnome Meeting - - should contact - kwm@FreeBSD.org - - -
- - - SMPng Status Report - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - smp@FreeBSD.org - - - - - - - - -

Lots of changes happened inside the network stack that will - hopefully be covered by a separate report. Outside of the network - stack, several changes were made however including changes to proc - locking, making the kernel thread scheduler preemptive, fixing - several priority inversion bugs in the scheduler, and a few - performance tweaks in the mutex implementation.

- -

Locking work on struct proc and its various substructures - continued with locking added where needed for struct uprof, struct - rusage, and struct pstats. This also included reworking how the - kernel stores process time statistics to store the raw struct - bintime and tick counts internally and only compute the more user - friendly values when requested via getrusage() or wait4().

- -

Support for kernel thread preemption was added to the scheduler. - Basically, when a thread makes another thread runnable, it may - yield the current CPU to the new thread if the new thread has a - more important priority. Previously, only interrupt threads - preempted other threads and the implementation would occasionally - trigger spurious context switches. This change exposed bugs in - other parts of the kernel and was turned off by default in - RELENG_5. Currently, only the i386, amd64, and alpha platforms - support native preemption.

- -

Several priority inversion bugs present in the scheduler due to - various changes to the kernel from SMPng were also fixed. Most of - the credit for these fixes belongs Stephan Uphoff who has recently - been added as a new committer. Fixes include: closing a race in the - turnstile wakeup code, changing the sleep queue code to store - threads in FIFO order so that the sleep queue wakeup code properly - handles having a thread's priority changes, and abstracting the - concept of priority lending so that the thread scheduler is now - able to properly track priority inheritance and handle priority - changes for threads blocked on a turnstile.

- -

Works in progress include separating critical sections from spin - mutexes some so that bare critical sections become very cheap as - well as continuing to change the various ABI compatibility layers - to use in-kernel versions of system calls to reduce stackgap usage - and make the system call wrappers MPSAFE.

- -
- - - i386 Interrupt Code & PCI Interrupt Routing - - - - - John - - Baldwin - - - jhb@FreeBSD.org - - - - -

The ACPI PCI link support code was reworked to work around some - limitations in the previous implementation. The new version more - closely matches the current non-ACPI $PIR link support. - Enhancements include disabling unused link devices during boot and - using a simpler and more reliable algorithm for choosing ISA IRQs - for unrouted link devices.

- -

Support for using the local APIC timer to drive the kernel - clocks instead of the ISA timer and i8254 clock is currently being - worked on in the jhb_clock perforce branch. It is mostly complete - and will probably hit the tree in the near future. By letting each - CPU use its own private timer to drive the kernel clocks, the - kernel no longer has to IPI all the other CPUs in the system every - time a clock interrupt occurs.

- -
- - - Low-overhead performance monitoring for FreeBSD - - - - - Joseph - - Koshy - - - jkoshy@FreeBSD.org - - - - - - A best-in-class performance monitoring system for FreeBSD built - over the hardware performance monitoring facilities of modern - CPUs. - - - -

System-wide and process-virtual counting-mode performance - monitoring counters are now supported for the AMD Athlon and Intel - P4 CPUs. SMP works, but is prone to freezes. Immediate next steps - include: (1) implementing the system-wide and process-virtual - sampling modes, (2) debugging, (3) writing a test suite and (4) - improving the project's documentation.

- -
- - - Wiki with new software - - - - - Josef - - El-Rayes - - - josef@FreeBSD.org - - - - - Wiki - - - -

After experiencing spam attacks on the old wiki-engine caused by - non-existent authentification mechanism, I had to replace it with a - more advanced software. Instead of usemod, we now run moinmoin. As - a consequence it's no longer just a 'browse & edit', but you - have to sign up and let someone who is already in the ACL group - 'developers' add you to the group. So it is a 'developers-only' - resource now. The old wiki is found at - http://wiki2.daemon.li -

- - - - Move content from old wiki to new one. - -
- - - kgi4BSD - - - - - Nicholas - - Souchu - - - nsouch@FreeBSD.org - - - - - Homepage - - - - - -

The project was very quiet (but still alive!) and mostly - dedicated to testing by volunteers. New documentation at - - http://wiki.daemon.li/moin.cgi/KGI - - .

- - - - Help improving the documentation - -
- - - OpenOffice.org port status - - - - - Maho - - Nakata - - - maho@FreeBSD.org - - - - - FreeBSD - OpenOffice.org porting status page - - - Stable OOo Packages for FreeBSD - - Some - volatile WIP status of packages - - - -

OpenOffice.org 2.0 status -

- - OpenOffice.org 1.1 status - - - General -
    -
  • Invoking OpenOffice.org from command line has been changed. - Now `.org' is mandatory. e.g. openoffice-1.1.4 -> - openoffice.org-1.1.4. Since the name of the software is - OpenOffice.org, not OpenOffice. We are also considering the name - of the ports (/usr/ports/editors/openoffice-2.0-devel -> - openoffice.org2-devel etc)
  • - -
  • Now marked as BROKEN OOo ports for prior than 5.3-RELEASE and - 4.11-RELEASE. These ports have been suffering from a minor - implementation difference of rtld.c between FreeBSD and Linux, - Solaris, NetBSD. We have been applying a patch adding _end in - mapfile. We need this since rtld depend on existence of _end - symbol in obj_from_addr_end, unfortunately this seem to induce - hard-to-solve errors. A great progress has been made kan, rtld - now do not depend on _end. A fix was committed 2004/02/25 - 17:06:16, - - http://www.freebsd.org/cgi/cvsweb.cgi/src/libexec/rtld-elf/rtld.c.diff?r1=1.91&r2=1.92&f=h - - .
  • - -
  • Benchmark test! Building OOo requires huge resources. We just - would like to know the build timings, so that how your machine is - well tuned for demanding jobs. - - http://porting.openoffice.org/freebsd/benchmark.html - - . Currently, GOTO daichi (daichi)'s Pentium 4 3.0GHz machine - build fastest. Just 1h25m22.42s for second build of OOo 1.1.4, - using ccache.
  • - -
  • SDK tutorial is available at - - http://porting.openoffice.org/freebsd/sdk.html -
  • - -
  • Still implementation test and quality assurance have not yet - been done. Even systematic documentations are not yet available - for FreeBSD. - - http://porting.openoffice.org/freebsd/testing.html - - and - - http://porting.openoffice.org/freebsd/QA.html - - for details.
  • -
- - Acknowledgments Two persons contributed in many aspects. Pavel - Janik (reviewing and giving me much advice) and Kris Kennaway - (extremely patient builder). and (then, alphabetical order by first - name). daichi, Eric Bachard, kan, lofi, Martin Hollmichel, nork, - obrien, Sander Vesik, sem, Stefan Taxhet, and volunteers of - OpenOffice.org developers (esp. SUN Microsystems, Inc.) for - cooperation and warm encouragements.

- -
- - - OpenBSD packet filter - pf - - - - - Max - - Laier - - - mlaier@FreeBSD.org - - - - - Daniel - - Hartmeier - - - dhartmei@FreeBSD.org - - - - - PF4FreeBSD - Homepage - - - -

FreeBSD 5.3 is the first release to include PF. It went out - okay, but some bugs were discovered too late to make it on the CD. - It is recommend to update `src/sys/contrib/pf' to RELENG_5. The - specific issues addressed are:

- -
    -
  • Possible NULL-deref with user/group rules.
  • - -
  • Crash with binat on dynamic interfaces.
  • - -
  • Silent dropping of IPv6 packets with option headers.
  • - -
  • Endless loops with `static-port' rules.
  • -
- -

Most of these issues were discovered by FreeBSD users and got - fed back to OpenBSD. This is a prime example of open source at - work.

- -

The Handbook's Firewall section was modified to mention PF as an - alternative to IPFW and IPF.

- - - - Write more documentation/articles. - - Write an IPFilter to PF migration guide/tool. - -
- - - New Modular Input Device Layer - - - - - Philip - - Paeps - - - philip@FreeBSD.org - - - - - - - - -

Following a number of mailing lists discussions on the topic, - work has been progressing on the development of a new modular input - device layer for FreeBSD. The purpose of this is twofold:

- -
    -
  • Easier development of new input device drivers.
  • - -
  • Support for concurrent use of multiple input devices, - particularly the hot-pluggable kind.
  • -
- -

Currently, implementing support for new input devices is a - painful process and there is great potential for code-duplication. - The new input device layer will provide a simple API for developers - to send events from their hardware on to the higher regions of the - kernel in a consistent way, much like the 'input-core' driver in - the Linux kernel.

- -

Using multiple input devices at the moment is painful at best. - With the new input device layer, events from different devices will - be properly serialized before they are sent to other parts of the - kernel. This will allow one to easily use, for instance, multiple - USB keyboards in a virtual terminal.

- -

The work on this is still in very rudimentary state. It is - expected that the first visible changes will be committed to - -CURRENT around late February or early March.

- -
- - - Funded FreeBSD kernel development - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.org - - - - - - Long winded status report. - - - -

A longish status report for the 6 months of funded development - was posted on announce, rather than repeat it here, you can find it - at the link provided.

- -
- - - The FreeBSD Dutch Documentation Team - - - - - Remko - - Lodder - - - Remko@FreeBSD.org - - - - - The - project's webpage. - - The - officially released documentation. - - Preview of the - documentation. - - - -

The FreeBSD Dutch Documentation Project is a ongoing project to - translate the documentation into the Dutch language. Currently we - are mainly focused on the Handbook, which is progressing pretty - well. However, lots need to be translated and checked before we - have a 'complete' translation ready. So if you are willing to help - out, please checkout our website and/or contact me.

- - - - Translating the Handbook - - Checking the grammar of the Dutch Handbook - - Translate the rest of the documentation - -
- - - Ports Collection - - - - - Mark - - Linimon - - - linimon_at_FreeBSD_dot_org - - - - - Erwin - - Lansing - - - erwin@FreeBSD.org - - - - - The FreeBSD ports - collection - - FreeBSD ports - monitoring system - - - -

Since the last report on the Ports Collection, much has changed. - Organizationally, the portmgr team saw the departure of some of the - long-term members, and the addition of some newer members, Oliver - Eikemeier, Kirill Ponomarew and Mark Linimon. Later on, portmgr - also had to say goodbye to Will Andrews. In addition, we have - gained quite a few new ports committers during this time period, - and their contributions are quite welcome!

- -

Most effort was devoted to two releases. The 5.3 release saw an - especially long freeze period, but due to the good shape of the - ports tree, the freeze for the 4.11 could be kept to a minimum. - Several iterations of new infrastructure changes were tested on the - cluster and committed. Also, the cluster now builds packages for - 6-CURRENT, increasing the total number of different build - environment to 10.

- -

Additionally, several sweeps through the ports tree were made to - bring more uniformity in variables used in the different ports and - their values, e.g. - BROKEN - - , - IGNORE - - , - DEPRECATED - - , - USE_GCC - - , and and others.

- -

In technical terms, the largest change was moving to the X.org - codebase as our default X11 implementation. At the same time, code - was committed to be able to select either the X.org code or the - XFree86 code, which also saw an update during that time. Due to - some hard work by Eric Anholt, new committer Dejan Lesjak, and Joe - Marcus Clarke, all of this happened more smoothly than could have - reasonably been expected.

- -

As well, GNOME and KDE saw updates during this time, as did Perl - and the Java framework. Further, there were some updates to the - Porter's Handbook, but more sections are still in need of updates - to include recent changes in practices. Also, during this time, - Bill Fenner was able to fix a bug in his - distfile - survey - - .

- -

Shortly before the release for 4.11 our existing linux_base was - marked forbidden due to security issues. A lot of effort was spent - to upgrade the default version to 8 from 7 to ship 4.11 with a - working linuxolator.

- -

Due to stability problems in the April-May timeframe, the - package builds for the Alpha were dropped. After Ken Smith and - others put some work into the Alphas in the build cluster, package - builds for 4.X were reenabled late in 2004.

- -

Ports QA reminders -- portmgr team members are now sending out - periodic email about problems in the Ports Collection. The current - set includes: -

    -
  • a public list of all ports to be removed due to security - problems, build failures, or general obsolescence, unless they - are fixed first
  • - -
  • private email to all maintainers of the affected ports - (including ports dependent on the above)
  • - -
  • private email to all maintainers of ports that are marked - BROKEN - - and/or - FORBIDDEN -
  • - -
  • private email to maintainers who aren't committers, who have - PRs filed against their ports (to flag PRs that might never have - been Cc:ed to them)
  • - -
  • public email about port commits that break building of - INDEX -
  • - -
  • public email about port commits that send the revision - metadata backwards (and thus confuse tools like portupgrade)
  • -
- - The idea behind each of these reminders is to try to increase the - visibility of problems in the Ports Collection so that problems can - be fixed faster.

- -

Finally, it should be noted that we passed yet another milestone - and the Ports Collection now contains over 12,000 ports.

- - - - The majority of our build errors are still due to compilation - problems, primarily from the gcc upgrades. Thanks to the efforts of - many volunteers, these are decreasing, but there is still much more - work to be done. - - 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." - - Here is the entire list - - ; the individual bars are clickable. This will become more and more - important now that the amd64 port has been promoted to tier-1 - status. - - A lot of progress has been meed to crack down on ports that - install files outside the approved directories and/or do not - de-install cleanly (see "Extra files not listed in PLIST" on - pointyhat - - ) and this will remain a focus area. - -
- - - Hardware Notes - - - - - Simon L. - - Nielsen - - - simon@FreeBSD.org - - - - - Christian - - Brueffer - - - brueffer@FreeBSD.org - - - - - - FreeBSD/i386 5.3-RELEASE Hardware Notes - - - FreeBSD/i386 6.0-CURRENT Hardware Notes - - - -

The FreeBSD Hardware Notes have been (mostly) converted to being - directly generated from the driver manual pages. This makes it much - simpler to maintain the Hardware Notes, so they should be more - accurate. The Hardware Notes for FreeBSD 5.3 use this new - system.

- -
- - - Update of the Linux userland infrastructure - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - -

The default linux_base port port was changed from the RedHat 7 - based emulators/linux_base to the RedHat 8 based - emulators/linux_base-8 just in time for FreeBSD 4.11-Release - because of a security problem in emulators/linux_base. In the - conversion process several problems where fixed in some Linux - ports.

- -

Both RedHat 7 and 8 are at their end of life, so expect an - update to a more recent Linux distribution in the future. For QA - reasons this update wasn't scheduled before FreeBSD - 4.11-Release.

- -
- - - FreeBSD Security Officer and Security Team - - - - - Jacques - - Vidrine - - - nectar@FreeBSD.org - - - - - Security Officer - - - security-officer@FreeBSD.org - - - - - Security Team - - - security-team@FreeBSD.org - - - - - FreeBSD Security - Information - - FreeBSD - Security Officer Charter - - - FreeBSD Security Team members - - FreeBSD VuXML web site - - - portaudit - - - -

During 2004, there were several notable changes and events - related to the FreeBSD Security Officer role and Security Team.

- -

The charter for the Security Officer (SO) as approved by Core in - 2002 was finally published on the web site. This document describes - the mission, responsibilities, and authorities of the SO. (The - current SO is Jacques Vidrine.)

- -

The SO is supported by a Deputy SO and the Security Team. In - April, Chris Faulhaber resigned as Deputy SO and Dag-Erling - Smorgrav was appointed in his place. Also during the year, the - following team members resigned: Julian Elischer, Bill Fumerola, - Daniel Harris, Trevor Johnson, Kris Kennaway, Mark Murray, Wes - Peters, Bruce Simpson, and Bill Swingle; while the following became - new members: Josef El-Rayes, Simon L. Nielsen, Colin Percival, and - Tom Rhodes. A huge thanks is due to all past and current members! - The current Security Team membership is published on the web - site.

- -

With the release of FreeBSD 4.8, the SO began extended support - for some FreeBSD releases and their corresponding security - branches. "Early adopter" branches, such as FreeBSD 5.0 - (RELENG_5_0), are supported for at least six months. "Normal" - branches are supported for at least one year. "Extended" branches, - such as FreeBSD 5.3 (RELENG_5_3), are supported for at least two - years. The currently supported branches and their estimated "end of - life" (EoL) dates are published on the FreeBSD Security Information - web page. In 2004, four releases "expired": 4.7, 4.9, 5.1, and - 5.2.

- -

With the releases of FreeBSD 4.10 and 5.3, the SO and the - Release Engineering team extended the scope of security branches to - incorporate critical bug fixes unrelated to security issues. - Currently, separate Errata Notices are published for such fixes. In - the future, Security Advisories and Errata Notices will be merged - and handled uniformly.

- -

17 Security Advisories were published in 2004, covering 8 issues - specific to FreeBSD and 9 general issues.

- -

2004 also saw the introduction of the Vulnerabilities and - Exposures Markup Language (VuXML). VuXML is a markup language - designed for the documentation of security issues within a single - package collection. Over 325 security issues in the Ports - Collection have been documented already in the FreeBSD Project's - VuXML document by the Security Team and other committers. This - document is currently maintained in the ports repository, path - ports/security/vuxml/vuln.xml. The contents of the document are - made available in a human-readable form at the FreeBSD VuXML web - site. The "portaudit" tool can be used to audit your local system - against the listed issues. Starting in November, the popular - FreshPorts.org web site also tracks issues documented in VuXML.

- -
- - - Sync Protocols (SPPP and NETGRAPH) - - - - - Roman - - Kurakin - - - rik@FreeBSD.org - - - - - My FreeBSD home page. You - could find here some results of my work. Unfortunately I do not - update this page often. - - - -

sppp(4) was updated (in 6.current) to be able to work in mpsafe - mode. For compatibility if an interface is unable to work in mpsafe - mode, sppp will not use mpsafe locks.

- -

Support of FrameRelay AnnexD was added as a historical commit. - Many of Cronyx users were expecting this commit for a long long - time, and most of them still prefer sppp vs netgraph because of - simplicity of its configuration (especially for ppp (vs mpd) and fr - (vs a couple of netgraph modules). After MFCing this I'll finally - close a PR 21771, from 2000/10/05

- -
- - - Improved Multibyte/Wide Character Support - - - - - Tim - - Robbins - - - tjr@FreeBSD.org - - - - -

Support for multibyte characters has been added to many more - base system utilities, including basename, col, colcrt, colrm, - column, fmt, look, nl, od, rev, sed, tr, and ul. As a result of - changes to the C library (see below), most utilities that perform - regular expression matching or pathname globbing now support - multibyte characters in these aspects.

- -

The regular expression matching and pathname globbing routines - in the C library have been improved and now recognize multibyte - characters. Various performance improvements have been made to the - wide character I/O functions. The obsolete 4.4BSD "rune" interface - and UTF2 encoding have been removed from the 6-CURRENT branch.

- -

Work is progressing on implementations of the POSIX iconv and - localedef interfaces for potential inclusion into the FreeBSD 6.0 - release.

- -
- - - FreeBSD/arm status report - - - - - Olivier - - Houchard - - - cognet@FreeBSD.org - - - - - FreeBSD/arm - project page. - - - -

FreeBSD/arm made some huge progress. It can boot multiuser, and - run things like "make world" and perl on the IQ31244 board. It also - now has support for various things, including DDB, KTR, ptrace and - kernel modules. A patch is available for early gdb support, and the - libpthread almost works.

- -
- - - ATA Driver Status Report - - - - - Søren - - Schmidt - - - sos@FreeBSD.org - - - - -

The ATA driver is undergoing quite a few important changes, - mainly it is being converted into modules so it can be - loaded/unloaded at will, and just the pieces for wanted - functionality need be present.

- -

This calls for ata-raid to finally be rewritten. This is almost - done for reading metadata so arrays defined in the BIOS can be - used, and its grown quite a few new metadata formats. This also - paves the way for ataraid to finally be able to take advantage of - some of the newer controllers "RAID" abilities. However this needs - more work to materialize but now its finally possible

- -

There is also support coming for a few new chipsets as - usual.

- -

The work is just about finished enough that it can be released - as patches to sort out eventual problems before hitting current. - The changes are pretty massive as this touches all over the driver - infrastructure, so lots of old bugs and has also been spotted and - fixed during this journey

- -
- - - Atheros Wireless Support - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - -

The ath driver was updated to support all the new features added - to the net80211 layer. As part of this work a new version of the - Hardware Access Layer (HAL) module was brought in; this version - supports all available Atheros parts found in PCI and Cardbus - products. Otherwise, adhoc mode should now be usable, antenna - management has been significantly improved, and soft LED support - now identifies traffic patterns.

- -

The transmit rate control algorithm was split out of the driver - into an independent module. Two different algorithms are available - with other algorithms (hopefully) to be added.

- -

Work is actively going on to add Atheros' SuperG - capabilities.

- -
- - - New DHCP Client - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - -

The OpenBSD dhcp client program has been ported and enhanced to - listen for 802.11-related events from the kernel. This enables - immediate IP address acquisition when roaming (as opposed to the - polling done by the old code). The main change from the previous - client is that there is one dhclient process per interface as - opposed to one for the entire system. This necessitates changes to - the system startup scripts.

- -

Incorporation into the base system is waiting on a volunteer who - will shepherd the changes into the tree and deal with bugs.

- -
- - - EuroBSDCon 2004 submitted papers are online - - - - - Patrick M. - - Hausen - - - hausen@punkt.de - - - - - - Papers/Presentations Download Page - - - -

Finally all of the papers and presentations are online for - download from our conference website. Thanks again to all who - helped make EuroBSDCon 2004 a success.

- -
- - - ifconfig Overhaul - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - -

The ifconfig program used to configure network interfaces was - overhauled. Over the years ifconfig has grown into a complex and - often contorted piece of software that is hard to understand and - difficult to maintain. The primary motivation for this work was to - enable minimal configurations (for embedded use) without changing - the code and to support future additions in a modular way. - Functionality is now broken out into separate files and operations - are registered with the central ifconfig code base. Features are - configured simply by specifying which code is to be included when - building the program.

- -

In the future the plan is for ifconfig to auto-load - functionality through dynamic libraries. This mechanism will allow, - for example, third party software packages to provide kernel - services and ifconfig add-on code without changing the base - system.

- -
- - - Network Stack Locking - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - FreeBSD - Project Netperf project web page. - - Robert - Watson's personal Netperf web page. - - - -

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 - focused 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. - Tasks include completing the locking work, optimizing locking - strategies, amortizing locking costs, introducing new - synchronization primitives, adopting non-locking synchronization - strategies, and improving opportunities for parallelism through - additional threading.

- -

Between July, 2004, and December, 2004, the Netperf project did - a great deal of work, for which there is room only to include - limited information. Much more information is available by visiting - the URLS above, including information on a variety of on-going - activities. Accomplishments include:

- -

July, 2004: A variety of improvements to PCB locking in the IPv6 - implementation; locking for the if_xl driver; socket locking for - the NFS client; cleanup of the soreceive() code path including - structural improvements, assertions, and locking fixes; cleanup of - the IPX/SPX code in preparation for locking; additional locking and - locking assertions for the TCP implementation; bug fixes for - locking and memory allocation in raw IP; - netatalk cleanup and locking merged to FreeBSD CVS - - ; - locking for many netgraph nodes merged to FreeBSD CVS - - ; SLIP structural improvements; experimental locking for netatalk - ifaddrs; BPF locking optimizations (merged); Giant assertions for - VFS to check VFS/network stack boundaries; UNIX domain socket - locking optimizations; expansion of lock order documentation in - WITNESS, additional NFS server code running MPSAFE; pipe locking - optimizations to improve pipe allocation performance; Giant no - longer required for fstat on sockets and pipes (merged); Giant no - longer required for socket and pipe file descriptor closes - (merged); - IFF_NEEDSGIANT interface flag added to support compatibility - operation for unlocked device drivers (merged) - - ; merged accept filter locking to FreeBSD CVS; documented uidinfo - locking strategy (merged); Giant use reduced in fcntl().

- -

August, 2004: UMA KTR tracing (merged); UDP broadcast receive - locking optimizations (merged); TCP locking cleanup and - documentation; IPv6 inpcb locking, cleanup, and structural - improvements; - IPv6 inpcb locking merged to FreeBSD CVS - - ; KTR for systems calls added to i386; - substantial optimizations of entropy harvesting synchronization - (merged) - - ; callout(9) sampling converted to KTR (merged); inpcb socket - option locking (merged); GIANT_REQUIRED removed from netatalk in - FreeBSD CVS; - merged ADAPTIVE_GIANT to FreeBSD CVS, resulting in substantial - performance improvements in many kernel IPC-intensive - benchmarks - - ; prepend room for link layer headers to the UDP header mbuf to - avoid one allocation per UDP send (merged); a variety of UDP bug - fixes (merged); additional network interfaces marked MPSAFE; UNIX - domain socket locking reformulated to protect so_pcb pointers; - MP_WATCHDOG, a facility to dedicate additional HTT logical CPUs - as watchdog CPUs developed (merged) - - ; annotation of UNIX domain socket locking merged to FreeBSD CVS; - kqueue locking developed and merged by John-Mark Gurney - - ; task list for netinet6 locking created; conditional locking - relating to kqueues and socket buffers eliminated (merged); NFS - server locking bugfixes (merged); in6_prefix code removed from - netinet6 by George Neville-Neil, lowering the work load for - netinet6 (merged); unused random tick code in netinet6 removed - (merged); - ng_tty, IPX, KAME IPSEC now declare dependence on Giant using - compile-time declaration NET_NEEDS_GIANT("component") permitting - the kernel to detect unsafe components and automatically acquire - the Giant lock over network stack operation if needed (merged) - - ; additional locking optimizations for entropy code (merged); Giant - disabled by default in the netperf development branch (merged).

- -

September, 2004: bugs fixed relating to Netgraph's use of the - kernel linker while not holding Giant (merged); - merged removal of Giant over the network stack by default to - FreeBSD CVS - - ; races relating to netinet6 and if_afdata corrected (merged); - annotation of possible races in the BPF code; BPF code converted to - queue(3) (merged); race in sopoll() corrected (merged).

- -

October, 2004: IPv6 netisr marked as MPSAFE; TCP timers locked, - annotated, and asserted (merged); IP socket option locking and - cleanup (merged); Netgraph ISR marked MPSAFE; netatalk ISR marked - MPSAFE (merged); some interface list locking cleanup (merged); use - after free bug relating to entropy harvesting and ethernet fixed - (merged); soclose()/sofree() race fixed (merged); IFF_LOCKGIANT() - and IFF_UNLOCKGIANT() added to acquire Giant as needed when - entering the ioctls of non-MPSAFE network interfaces.

- -

November, 2004: cleanup of UDPv6 static global variables - (merged); - FreeBSD 5.3 released! First release of FreeBSD with an MPSAFE - and Giant-free network stack as the default configuration! - - ; additional TCP locking documentation and cleanup (merged); - optimization to use file descriptor reference counts instead of - socket reference counts for frequent operations results in - substantial performance optimizations for high-volume send/receive - (merged) - - ; an accept bug is fixed (merged) experimental network polling - locking introduced; - substantial measurement and optimization of mutex and locking - primitives (merged) - - ; - experimental modifications to UMA to use critical sections to - protect per-CPU caches instead of mutexes yield substantial - micro-benchmark benefits when combined with experimental critical - section optimizations - - ; FreeBSD Project Netperf page launched; performance - micro-benchmarks benchmarks reveal IP forwarding latency in 5.x is - measurably better than 4.x on UP when combined with optional - network stack direct dispatch; several NFS server locking bugfixes - (merged); - development of new mbufqueue primitives and substantial - experimentation with them permits development of amortized cost - locking APIs for handoff between the network stack and network - device drivers (work in collaboration with Sandvine, Inc) - - ; Linux TCP_INFO API added to allow user-space monitoring of TCP - state (merged); SMPng task list updated; UDP static/global fixes - merged to RELENG_5.

- -

December, 2004: UDP static/global fixes developed for - multi-threaded in-bound UDP processing (merged); socket buffer - locking fixes for urgent TCP input processing (merged); lockless - read optimizations for IF_DEQUEUE() and IF_DRAIN(); Giant-free - close for sockets/pipes/... merged to FreeBSD CVS; optimize - mass-dequeues of mbuf chains in netisr processing; netrate tool - merged to RELENG_5; TCP locking fixes merged to RELENG_5; "show - alllocks" added to DDB (merged); IPX locking bugfixes (merged); - IPX/SPX __packed fixes (merged); IPX/SPX moved to queue(9) - (merged); TCP locking fixes and annotations merged to FreeBSD CVS; - IPX/SPX globals and pcb locking (merged); - IPX/SPX marked MPSAFE (merged) - - ; IP socket options locking merged to FreeBSD; SPPP locked by Roman - Kurakin (merged); UNIX domain socket locking fixes by Alan Cox - (merged).

- -

On-going work continues with regard to locking down network - stack components, including additional netinet6 locking, mbuf queue - facilities and operations; benchmarking; moving to critical - sections or per-CPU mutexes for UMA per-CPU caches; moving to - critical sections or per-CPU mutexes for malloc(9) statistics; - elimination of separate mbuf allocator statistics; additional - interface locking; a broad variety of cleanups and documentation of - locking; a broad range of optimizations.

- -
- - - FreeBSD profile.sh - - - - - Tobias - - Roth - - - ports@fsck.ch - - - - - FreeBSD profile.sh - site - - - -

FreeBSD profile.sh is targeted at laptops. It allows to define - multiple network environments (eg, home, work), and will then - detect in which environment the laptop is started and configure it - accordingly. Almost everything from under /etc can be configured - per environment, and only the overrides to the default /etc have to - be defined. Suspending in one environment and resuming in a - different one is also supported.

- -

Proper integration into the acpi/apm and several small - improvements are underway. More testing with different system - configurations is needed.

- -
- - - FreeBSD Release Engineering - - - - - Scott - - Long - - - re@FreeBSD.org - - - - - - - - -

At long last, FreeBSD 5.3 was released in November of 2004. This - marked the start of the RELENG_5/5-STABLE branch and the beginning - of the 6-CURRENT development branch. Many thanks to the tireless - efforts of the FreeBSD developer and user community for making this - release a success.

- -

FreeBSD 4.11 release engineering is also now in progress. This - will be the final release from the 4.x series and is mainly - incremental bug fixes and a handful of feature additions. Of note - is that the IBM ServeRAID 'IPS' driver is now supported on 4.x and - will be included in this release, and the Linux emulation layer has - been updated to support a RedHat 8.0 userland. The release is - expected to be available on January 24.

- -

Looking forward, there will be several FreeBSD 5.x releases in - the coming year. FreeBSD 5.4 release engineering will start in - March, and FreeBSD 5.5 release engineering will likely start in - June. These releases are expected to be more conservative than - previous 5.x releases and will follow the same philosophy as - previous -STABLE branches of fixing bugs and adding incremental - improvements while maintaining API stability.

- -

For the 6-CURRENT development branch as well as all future - development and stable branches, we are planning to move to a - schedule with fixed timelines that move away from the uncertainty - and wild schedule fluctuations of the previous 5.x releases. This - means that major branches will happen at 18 month intervals, and - releases from those branches will happen at 4 month intervals. - There will also be a dedicated period of testing and bug fixing at - the beginning of each branch before the first release is cut from - that branch. With the shorter and more defined release schedules, - we hope to lessen the problem of needed features not reaching users - in a reasonable time, as happened too often with 5.x. This is a - significant change in our strategy, and we look forward to - realizing the benefits of it. This will kick off with the RELENG_6 - branch happing in June of 2005, followed by the 6.0 release in - August of 2005.

- -

Also on the roadmap is a plan to combine the live-iso disk2 and - the install distributions of disk1 into a single disk which can be - used for both installation and for recovery. 3rd party packages - that currently reside on disc1 will be moved to a disk2 that will - be dedicated to these packages. This move will allow us to deal - with the ever growing size of packages and also provide more - flexibility to vendors that wish to add their own packages to the - releases. It also opens the door to more advanced installers being - put in place of sysinstall. Anyone interested in helping with this - is encouraged to contact us.

- -
- - - Wireless Networking Support - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - -

The wireless networking layer was updated to support the 802.1x, - WPA, and 802.11i security protocols, and the WME/WMM multi-media - protocol. As part of this work extensible frameworks were added for - cryptographic methods, authentication, and access control. - Extensions are implemented as loadable kernel modules that hook - into the net80211 layer. This mechanism is used, for example, to - implement WEP, TKIP, and CCMP crypto protocols. The Atheros driver - (ath) is currently the only driver that uses the full set of - features. Adding support to other drivers is simple but waiting on - volunteers. Ports of the wpa_supplicant and hostapd programs enable - use of the new security protocols.

- -

The support for tracking stations in a bss (managed or adhoc) - and stations found when scanning was overhauled. Multiple tables - are now used, each with different management policies, reference - counting is now done consistently, and inactivity processing is - done more intelligently (e.g. associated stations are probed before - removal). This is the first step towards proper roaming support and - other advanced features.

- -

AP power save support was added. Associated stations may now - operate in power save mode; frames sent to them will be buffered - while they are sleeping and multicast traffic will be deferred - until after the next beacon (per the 802.11 protocol). Power save - support is required in a standards-compliant access point. Only the - ath driver currently implements power save support.

- -

Work is actively going on to add Atheros' SuperG capabilities, - WDS, and for multi-bss support (ssid and/or bssid) on a single - device.

- - - - Drivers other than ath need updates to support the new - security protocols - - hostapd needs work to support the IAPP and 802.11i - preauthentication protocols (these are simple conversion of - existing Linux code) - -
- - - FreeBSD on Xen - - - - - Kip - - Macy - - - kmacy@fsmware.com - - - - - binaries + source + - slightly out of date HOWTO - - Xen - project page - - - -

FreeBSD 5.2.1 is stable on the stable branch of Xen as a guest. - FreeBSD 5.3 runs on the stable branch of Xen as a guest, but a - couple of bugs need to be tracked down.

- - - - FreeBSD support for running in Domain 0 (host) - - FreeBSD support for VM checkpoint and migration - -
-
- diff --git a/en/news/status/report-2005-01-2005-03.xml b/en/news/status/report-2005-01-2005-03.xml deleted file mode 100644 index b9b43ada34..0000000000 --- a/en/news/status/report-2005-01-2005-03.xml +++ /dev/null @@ -1,2147 +0,0 @@ - - - - - - January-April - - 2005 - - -
- Introduction - -

The first quarter of 2005 has been extremely active in both - FreeBSD-CURRENT and -STABLE. With FreeBSD 5.4 in the final RC stage - and an anticipated branch of FreeBSD-6 this summer we have seen a lot - of performance improvements in 5 and a couple of exciting new - features in 6.

- -

The report turnout was extremely good and it seems that the - webform provided by Julian Elischer has made it more enjoyable to - write reports. Many thanks to Julian for providing this. We also - like to get your attention to the open tasks section provided in some - reports.

- -

On special note, please take a look at the report about the - upcoming BSDCan in Ottawa. There will be lots of interesting FreeBSD - related talks and activities. If you enjoy reading these reports, you - will love the conference. See you there!

- -

Thanks to all the reporters, we hope you enjoy reading.

-
- - - proj - - Projects - - - - doc - - Documentation - - - - kern - - Kernel - - - - net - - Network infrastructure - - - - bin - - Userland programs - - - - arch - - Architectures - - - - ports - - Ports - - - - vendor - - Vendor / 3rd Party Software - - - - misc - - Miscellaneous - - - - Secure Updating - - - - - Colin - - Percival - - - cperciva@FreeBSD.org - - - - - - - - - - -

Shortly before the ports freeze for FreeBSD 5.4, I released a - new version of Portsnap. In addition to being secure and more - efficient than CVSup, this latest version distributes INDEX, - INDEX-5, and INDEX-6 files, thereby eliminating the need to run - "make fetchindex" and ensuring that the ports INDEX will match the - existing ports tree. In addition, portsnap builds have now moved - onto hardware managed by the FreeBSD project, thereby sharply - increasing portsnap's chances of survival if I get hit by a - bus.

- -

In early February hardware problems caused both FreeBSD Update - and Portsnap to stop functioning for a few days, but those were - resolved thanks to a server donated by layeredtech.com.

- -

I intend bring Portsnap into the FreeBSD base system before the - end of the month, followed by FreeBSD Update a few months - later.

- -
- - - if_bridge from NetBSD - - - - - Andrew - - Thompson - - - andy@fud.org.nz - - - - - - - - -

This project aims to import the bridging code and interface from - NetBSD and OpenBSD. The bridge is a cloned interface which can be - modified by ifconfig and brconfig. It supports assigning an IP - address directly to the bridge (e.g. bridge0) instead of one of the - member interfaces, and can be used with tcpdump to inspect the - bridged packets. The code also supports spanning tree (802.1D) for - loop detection and link redundancy. Any pfil(9) packet filter can - be used to filter the bridged packets.

- - - - Testing performance and functionality against the existing - bridge code. Testers welcome! - -
- - - ARM Support for TS-7200 - - - - - John-Mark - - Gurney - - - jmg@FreeBSD.org - - - - - - TS-7200 Board - - - Perforce Code Location - - FreeBSD/arm - TS-7200 dmesg output - - - -

I have been working on getting FreeBSD/arm running on the - TS-7200. So far the board boots, and has somewhat working ethernet - (some unexplained packet loss). I can netboot from a FreeBSD/i386 - machine, and I can also mount msdosfs's on CF.

- - - - Figuring out why some small packets transmit with - error - - EP93xx identification information to properly attach various - onboard devices - -
- - - Update of the Linux userland infrastructure - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - Emulation - - Mailinglist - - - freebsd-emulation@FreeBSD.org - - - - - - - -

The update to RedHat 8 as discussed in the last status report - went smoothly (just some minor glitches which got resolved - fast).

- -

As a next step a cleanup/streamlining and the possibility of - overriding the default Linux base is in progress. This depends on - changes which need at least one testrun on the ports build cluster, - so the final date for those changes depends upon the availability - of the cluster resources.

- - - - Refactoring the common RPM code into bsd.rpm.mk. - - Determining which up-to-date Linux distribution to use as the - next default Linux base. Important criteria: -
    -
  • RPM based (to be able to use the existing - infrastructure)
  • - -
  • good track record regarding availability of security - fixes
  • - -
  • packages available from several mirror sites
  • - -
  • available for several hardware architectures (e.g. i386, - amd64, sparc64; Note: not all architectures have a working - linuxolator for their native bit with, but as long as there are - no userland bits available, no motivation regarding writing the - kernel bits will arise)
  • -
-
- - Moving the linuxolator userland to an up-to-date version (see - above). -
-
- - - Pipe namespace added to portalfs - - - - - Diomidis - - Spinellis - - - dds@FreeBSD.org - - - - - - - - -

A new sub-namespace, called pipe, has been added to portalfs. - The pipe namespace executes the named command, starting back at the - root directory. The command's arguments can be provided after the - command's name, by separating them with spaces or tabs. Files - opened for reading in the pipe namespace will receive their input - from the command's standard output; files opened for writing will - send the data of write operations to the command's standard input. - The pipe namespace allows us to perform scatter gather operations - without using temporary files, create non-linear pipelines, and - implement file views using symbolic links.

- -
- - - Low-overhead performance monitoring for FreeBSD - - - - - Joseph - - Koshy - - - jkoshy@FreeBSD.org - - - - - - Project home page - - - -

Many modern CPUs have on-chip performance monitoring counters - (PMCs) that can be used to count low-level hardware events like - instruction retirals, branch mispredictions, cache and TLB misses - and the like. PMC architectures and capabilities vary between CPU - vendors and between CPU generations from the same vendor, making - the creation of portable applications difficult. This project - attempts to provide a uniform API for applications to use, and the - necessary infrastructure to "virtualize" and manage the available - PMC hardware resources. The creation of performance analysis tools - that use this infrastructure is also part of the project's - goals.

- -

Work since the last status report:

- -
    -
  • Support for Intel - Pentium-Pro/Pentium-II/Pentium-III/Pentium-M/Celeron style PMCs - has been added.
  • - -
  • The Pentium-4/HTT machine dependent layer has been - overhauled.
  • - -
  • A Python language interface to the C library interface pmc(3) - has been written.
  • - -
  • Many bugs have been fixed and documentation has been - updated.
  • -
- - - - The code needs to be tested on Intel Pentium-M, Celeron, - Pentium II and Pentium Pro CPUs. - -
- - - GELI - GEOM class for providers encryption - - - - - Pawel Jakub - - Dawidek - - - pjd@FreeBSD.org - - - - - - Kernel module. - - - Userland configuration utility. - - - -

GELI is a GEOM class used for GEOM providers encryption. I - decided to work on this, as I needed some feature, which cannot be - found in similar projects. Here is the list of features, I found - interesting:

- -
    -
  • makes use of crypto(9)
  • - -
  • if there is a crypto hardware available, GELI will run - cryptography on it automatically; if not, it starts dedicated - kernel thread and do crypto software work in there
  • - -
  • supports many cryptographic algorithms (AES, Blowfish, - 3DES)
  • - -
  • is able to take key components from many sources at once - (user entered passphrase, random bits from a file, etc.)
  • - -
  • allows to encrypt root partition
  • - -
  • user will be asked for the passphrase before root file system - is mounted
  • - -
  • uses "PKCS #5: Password-Based Cryptography Specification - Version 2.0" for user passphrase protection (optional)
  • - -
  • allows to use two independent keys (e.g. "user key" and - "company key")
  • - -
  • is fast
  • - -
  • GELI does simple sector-to-sector encryption
  • - -
  • allows to backup/restore Master Keys, so when user have to - quickly destroy keys, it is able to get the data back by - restoring keys from the backup
  • - -
  • provider can be configured at attach time to automatically - detach on last close (so user don't have to remember to detach - after unmounting file system)
  • - -
  • allows to attach provider with a random, one-time keys
  • - -
  • useful for swap partitions and temporary file systems
  • -
- - - - Code audit/review is more than welcome! - -
- - - FreeBSD Dutch Documentation Project - - - - - Remko - - Lodder - - - remko@FreeBSD.org - - - - - FreeBSD - Dutch Handbook - - FreeBSD Dutch - Handbook preview - - The - Project Page - - - -

The FreeBSD Dutch Documentation Project is a ongoing project in - translating the English documentation to the Dutch language. - Currently we have translated almost the entire handbook, and more - to come. If you want to help out by review the Dutch documents, or - you want to help translating the remainders of the handbook or - other documents, feel free to contact me at - remko@FreeBSD.org -

- - - - Translate the English handbook, then review the Dutch - handbook - - Translate the English FAQ, then review the Dutch FAQ - - Translate the English Articles, then review the Dutch - Articles - -
- - - FreeBSD Java Project - - - - - Greg - - Lewis - - - glewis@FreeBSD.org - - - - - Alexey - - Zelkin - - - phantom@FreeBSD.org - - - - - - - - -

The FreeBSD Java Project released its initial support for JDK - 1.5.0 with patch set 1 "Sabretooth" in January. The initial release - featured support for both FreeBSD 5.3/i386 and 5.3/amd64. Since - then preliminary support for FreeBSD 4.11/i386 has been added and - several bug fixes have been made. Updates in the coming months will - add support for the browser plug in and Java Web Start, which were - not in the initial release.

- - - - Volunteers to look into some serious problems with JDK 1.5.0 - on FreeBSD 4.x - -
- - - Common Address Redundancy Protocol - CARP - - - - - Max - - Laier - - - mlaier@FreeBSD.org - - - - - - - Gleb - - Smirnoff - - - glebius@FreeBSD.org - - - - - - - - - - -

CARP is an alternative to VRRP. In contrast to VRRP it has full - support for IPv6 and uses crypto to protect the advertisements. It - was developed by OpenBSD due to concerns that the HSRP patent might - cover VRRP and CISCO might defend its patent. CARP has, since then, - improved a lot over VRRP.

- -

CARP has been committed to HEAD and MFCed to RELENG_5. It will - be available in upcoming 5.4-RELEASE.

- -

Big thanks to all users who provided testing and reported bugs - to Max and Gleb. Daniel Seuffert has donated hardware to Max for - this project. Gleb's work was sponsored by - Rambler - - .

- - - - Improve vlan(4) support. Test ng_eiface(4). - - Improve locking, consider removing interface layer. - -
- - - netgraph(4) status report - - - - - Gleb - - Smirnoff - - - glebius@FreeBSD.org - - - - - - ng_netflow(4) - - - ng_ipfw(4) - - - ng_nat work in progress - - - -

This report covers period since August 2004 until April - 2005.

- -

New nodes. Two new nodes have been added to base FreeBSD - distribution. ng_netflow(4) node, which implements NetFlow version - 5 accounting of IPv4 packets. ng_ipfw(4) node, which diverts - packets from ipfw(4) to netgraph(4) and back. A well known - ng_ipacct node has been added to ports tree.

- -

SMP. Nodes, which need to allocate unique names have been - protected with mutex in RELENG_5, and subr_unit allocator in HEAD. - Nodes, which need to run periodical jobs were reworked to use - mpsafe ng_callout() API. ng_tty(4) node has been overhauled to be - compatible with debug.mpsafenet=1. NetGraph ISR and callout are now - declared MPSAFE in HEAD.

- -

NetGraph flow control. Two nodes ng_ether(4) and ng_cisco(4) - have been improved to emit flow control messages to upstream node, - when state of link changes. New link failure detection method have - been introduced in ng_one2many(4) node - listening to these flow - control messages from downstream.

- - - - more SMP testing of many nodes - - review locking of graph restructuring - - ng_nat node - an in-kernel natd(8) - - make ng_bridge(4) multithreaded - -
- - - drm - - - - - Eric - - Anholt - - - anholt@FreeBSD.org - - - - - ATI R300 DRI project - - - -

A DRM update was finally committed to -current on 2005-04-15, - after jhb@ did the necessary fix to vm_mmap. New development - drivers were added for mach64 and r300 (see URL for info). The - nearly-finished code for savage and i915 were also added, but left - disconnected from the build. However, the most visible change is - likely the support for texture tiling, color tiling, and HyperZ on - Radeons, which (with updated userland) likely provide a 50-75% - framerate increase in many applications.

- - - - Find someone with newbus knowledge to figure out why the i915 - won't attach to drmsub0. - - Finish porting the savage driver. - - Integrate busdma code from Tonnerre (NetBSD). - -
- - - Storage driver SMPng locking - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - - - -

Several storage drivers have been taken out from under the Giant - mutex in the past few months. Thanks to sponsorship from - FreeBSD Systems, Inc - - and - ImproWare, AG, Switzerland - - , the LSI MegaRAID (AMR) and IBM/Adaptec ServeRAID (IPS) drivers - have been locked. SMPng locking is a key step in improving the - performance of system drivers in FreeBSD 5.x and beyond, and both - of these drivers are showing the benefits of this. FreeBSD 5.4 will - contains these improvements when it is released.

- -

Similar work is ongoing with the 3WARE Escalade (TWE) driver, - and preliminary patches have been made available to testers. I hope - to have this driver complete in time for the next FreeBSD - release.

- -

Unfortunately, most benefits can only be gained from pure block - storage drivers such as the ones mentioned here due to the SCSI - subsystem in FreeBSD (CAM) not be locked itself at this time. It is - possible, however, to lock a CAM sub-driver and bring the driver's - interrupt handler out from under Giant for a partial gain. The Sun - FAS366 SCSI driver (ESP) operates like this. Volunteers to lock - other drivers or to tackle locking CAM are gladly accepted, so - please contact me if you are interested.

- -
- - - Filesystem journalling for UFS - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - - - - -

It's time to bite the bullet and admit that fsck is no longer - scalable for modern storage capacities. While a healthy debate can - still be had on the merits and data integrity guarantees of - journalling vs. SoftUpdates, the fact that SoftUpdates still - requires a fsck to ensure consistency of the filesystem metadata - after an unclean shutdown means uptime is lost. While background - fsck is available, it saps system performance and stretched the - fsck time out to hours.

- -

Journalling provides a way to record transactions that might not - have fully been written to disk before the system crashed, and then - quickly recover the system back to a consistent state by replaying - these transactions. It doesn't guarantee that no data will be lost, - but it does guarantee that the filesystem will be back to a - consistent state after the replay is performed. This contrasts to - SoftUpdates that re-arranges metadata updates so that - inconsistencies are minimized and easy to recover from, though - recovery still requires the traditional full filesystem scan.

- -

Journalling is a key feature of many modern filesystems like - NTFS, XFS, JFS, ReiserFS, and Ext3, so the ground is well covered - and the risks for UFS/FFS are low. I'm aware that groups from CMU - and RPI have attempted similar work in the past, but unfortunately - the work is either very outdates, or I haven't had any luck in - contacting the groups. Is this absence, I've decided to work on - this project myself in hopes of having a functional prototype in - time for FreeBSD 6.0.

- -

The approach is simple and journals full metadata blocks instead - of just deltas or high-level operations. This greatly simplifies - the replay code at the cost of requiring more disk space for the - journal and more work within the filesystem to identify discreet - update points. An important design consideration is whether to make - the journal data and code compatible with the UFS2 filesystem, or - to start a new UFS3 derivative. Since the latter presents a very - high barrier to adoption for most people, I'm going to try to make - it a compatible option for UFS2. This means that the journal blocks - will likely appear as an unlinked file to legacy filesystem and - fsck code, and will be treated as such. This will allow seamless - fallback to using fsck, though once the unlinked journal data - blocks are reclaimed by fsck, the user will have to take action to - re-create the journal file again.

- -

One key piece of journalling is ensuring that each journal - transaction is fully written to disk before the associated metadata - blocks are written to the filesystem. I plan to adopt the buffer - 'pinning' mechanism from Alexander Kabaev's XFS work to assist with - this. This will allow the journalling subsystem fine-grained - control over which blocks get flushed to disk by the buffer daemon - without having to further complicate the UFS/FFS code. One - consideration is how Softupdates falls into this and whether it is - mutually exclusive of journalling or if it can help provide - transaction ordering functionality to the journal. Research here is - on-going.

- -

Some preliminary work can be found in Perforce in the - //depot/user/scottl/ufsj/... tree or at the URL provided. Hopefully - this will quickly accelerate.

- -
- - - Status Report for FreeBSD ATA driver project - - - - - Søren - - Schmidt - - - sos@FreeBSD.org - - - - -

ATA mkIII has been committed to -current after a couple of month - testing as patches post on -current and 5-stable. I will continue - to provide patches for 5-stable for those that need up-to-date ATA - support there.

- -

Here a short rehash of what mkIII brings:

- -

ATA is now fully modular so each part can be loaded/unloaded at - will to provided the wanted functionality.

- -

Much improved SATA support that support hotplug events on - controllers that support it (Promise, SiS, nVidia so far) ie the - system will automagically detect when SATA devices come and go and - add/delete device entries etc.

- -

Much improved ATA RAID support. The ata-raid driver has been - largely rewritten to take advantage of the features the improved - infrastructure provides, including composite ATA operations etc. - The rebuild functionality has been changed to rebuild on userland - reads, so a simple dd of the entire array will get it rebuild (what - atacontrol now does). This means that the resources used for this - can be better tailored to the actually usage pattern if needed. ATA - RAID now supports 10+ different RAID metadata formats, so most BIOS - defined ATA RAID arrays can be picked up and used. The number of - metadata formats that can be created from within FreeBSD is still - limited though and is not a high priority feature right now.

- -

The lowlevel infrastructure of the ATA driver has been refined - even further to support "strange" chipsets much more easily and in - most case transparent to the higher levels. This to easy ports to - new platforms where ATA controllers doesn't necessarily have the - x86 legacy layout.

- -

Lots of bug fixes and corrections all over the driver proper. - The rework of the infrastructure has revealed bugs and deficiencies - that has been fixed in the process of modulerising ATA and making - the infrastructure more generic, and hopefully easier to - understand.

- -

The work continues to keep ATA on top of new chipsets and other - advancements in the ATA camp. SATA ATAPI support is in the works - and so are support for NCA/TCQ (tags). Donations of unsupported - hardware is the way to get it supported as I'm way out of my budget - for new hardware for the next decade or so according to my wife - :)

- - - - Lots of testing wanted, especially SATA and RAID - support - -
- - - GSHSEC - GEOM class for handling shared secret - - - - - Pawel Jakub - - Dawidek - - - pjd@FreeBSD.org - - - - - - Manual page. - - - -

GSHSEC is a GEOM class used for handling shared secret data - between multiple GEOM providers. For every write request, SHSEC - class splits the data using XOR operation with random data, so N-1 - providers gets just random data and one provider gets the data - XORed with the random data from the other providers. All of the - configured providers must be present in order to reveal the secret. - The class is already committed to HEAD and RELENG_5 branches.

- -
- - - ATAPI/CAM - - - - - Thomas - - Quinot - - - thomas@FreeBSD.org - - - - - - - -

ATAPI/CAM integration with the new ATA (mkIII) framework is now - completed. ATAPI/CAM is now available as a loadable module - (atapicam.ko). It is also independent from the native ATAPI drivers - again, as was the case before mkIII.

- -

Thanks to Scott Long and Søren Schmidt for their - participation in the integration work.

- -
- - - twa driver - - - - - Vinod - - Kashyap - - - vkashyap at amcc.com - - - - - - source code - - - source code - - - -

A newly re-architected twa(4) driver was committed to 6 -CURRENT - on 04/12/2005. Highlights of this release are:

- -
    -
  1. The driver has been re-architected to use a "Common Layer" - (all tw_cl* files), which is a consolidation of all - OS-independent parts of the driver. The FreeBSD OS specific - portions of the driver go into an "OS Layer" (all tw_osl* files). - This re-architecture is to achieve better maintainability, - consistency of behavior across OS's, and better portability to - new OS's (drivers for new OS's can be written by just adding an - OS Layer that's specific to the OS, by complying to a "Common - Layer Programming Interface (CLPI)" API. If there's interest in - porting the 3ware driver to any other OS, you may contact ctchu - at amcc.com to get a copy of the CLPI specifications.
  2. - -
  3. The driver takes advantage of multiple processors. It does - not need to be Giant protected anymore.
  4. - -
  5. The driver has a new firmware image bundled, the new features - of which include Online Capacity Expansion and multi-lun support, - among others. More details about 3ware's 9.2 release can be found - here: - - http://www.3ware.com/download/Escalade9000Series/9.2/9.2_Release_Notes_Web.pdf -
  6. -
- -
- - - IPv6 Support for IPFW - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - - - - -

In April 18th, I committed support for IPv6 to IPFW. This - support was written by two student of Luigi's, Mariano Tortoriello - and Raffaele De Lorenzo. I updated it to use PFIL_HOOKS and fixed a - few minor issues. As of this commit, IP6FW should be considered - deprecated in favor of IPFW. It should be possible to MFC this - change to 5.x, but that is not currently planned.

- - - - Testing. - - IP6FW to IPFW migration guide. - - Patches relative to 5-STABLE. - -
- - - Removable interface improvements. - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - - - - - - -

This project is an attempt to clean up handling of network - interfaces in order to allow interfaces to be removed reliably. - Current problems include panics if Dummynet is delaying packets to - an interface when it is removed.

- -

I am currently working to remove struct ifnet's from device - driver structures to allow them to be managed properly upon device - removal. I believe I have removed all known instances of casting a - struct ifnet pointer to something else (except that that are just - magic values and not real struct ifnets.) I will begin committing - these changes to the tree shortly and will then add a new function - if_alloc() that will allocate struct ifnets. if_detach() will be - modified to destroy them.

- -
- - - cpufreq - - - - - Nate - - Lawson - - - njl - - - - - - cpufreq man page - - - -

The cpufreq project was committed to 6-CURRENT in early February - and has undergone bugfixes and updates. It will soon be MFCd to - 5-STABLE.

- -

The cpufreq driver provides a unified kernel and user interface - to CPU frequency control drivers. It combines multiple drivers - offering different settings into a single interface of all possible - levels. Users can access this interface directly via sysctl(8), by - indicating to power_profile that it should switch settings when the - AC line state changes, or by using powerd(8).

- -

For example, an absolute driver offering frequencies of 1000 Mhz - and 750 Mhz combined with a relative driver offering settings of - 100% and 50% would result in cpufreq providing levels of 1000, 750, - 500, and 375 Mhz.

- -

Colin Percival helped with powerd(8), which provides automatic - control of CPU frequencies. The adaptive mode is especially - interesting since it attempts to respond to changes in system load - while reducing power consumption.

- -

Current hardware drivers include acpi_perf (ACPI CPU performance - states), est (Intel Enhanced SpeedStep for Pentium-M), ichss - (Intel's original SpeedStep for ICH), and powernow (AMD Powernow! - K7 and K8 support). Other drivers for relative hardware include - acpi_throttle (ACPI CPU throttling) and p4tcc (Pentium 4 Thermal - Control Circuitry)

- -

Thanks to Bruno Ducrot for the powernow driver, Colin Percival - for the est driver, and the many testers who have sent in - feedback.

- - - - We'd appreciate someone with a Transmeta CPU converting the - existing longrun driver to the cpufreq framework. It would also be - good if someone wrote a VIA Longhaul driver. See the Linux - arch/i386/kernel/cpu/cpufreq directory for examples. - - Various other architectures, including ARM, have CPU power - control that could be implemented as a cpufreq driver. - - The powerd(8) algorithm is rather simple and we'd appreciate - more help in testing it and alternative algorithms with various - workloads. The -v flag causes powerd to report frequency - transitions and print a summary of total energy used upon - termination. This should help testers profile their - algorithms. - -
- - - Move ARP out of routing table - - - - - Qing - - Li - - - qingli@FreeBSD.org - - - - - containing the - patch - - - -

I have finished the basic functionality for both IPv4 and IPv6. - The userland utilities ("arp" and "ndp") have been updated. I have - tested the changes with "make buildworld". I have been testing the - new code in a production environment and things appear to be - stable. Gleb Smirnoff (glebius@FreeBSD.org) has provided review - comments and I have incorporated these feedback into the patch. I - have discussed the IPv6 changes with two of the core KAME - developers during the last IETF meeting in March 2005. They - indicated that these changes may result in divergence from the KAME - project but that is not necessarily a bad thing.

- - - - I am waiting for review feedback from my mentor Andre. I need - locking experts to help me fix my giant-lock shortcut. I am hoping - to send out the code for wider review soon. - -
- - - Support for telephone hardware (aka Zaptel) - - - - - Maxim - - Sobolev - - - sobomax@FreeBSD.org - - - - - Oleksandr - - Tymoshenko - - - gonzo@pbxpress.com - - - - - Max - - Khon - - - fjoe@FreeBSD.org - - - - - - - - -

During the last 2 months lot of progress has been made. Existing - support for TDM400 (FXO/FXS) has been significantly improved. - Drivers for PRI and BRI cards have been added and now should be - considered beta-quality.

- - - - More testing of PRI/BRI drivers. - - Add support for channelized DS3 card(s). - -
- - - FreshPorts - - - - - Dan - - Langille - - - dan@langille.org - - - - - FreshPorts - - - -

This is the first status report for FreshPorts. FreshPorts - started in early 2000 and now contains over 170,000 commits. - FreshPorts is primarily concerned with port commits, but actually - processes and records all commits to the FreeBSD source tree. Its - sister site, - FreshSource - - uses the same database as FreshPorts but has a wider reporting - scope. In recent months, FreshPorts has been enhanced to process - and include - VuXML - - information. In addition, RESTRICTED and NO_CDROM have been added - to list of things that FreshPorts keeps track of. For unmaintained - ports, we recently added this message: -

- There is no maintainer for this port. -
- - Any concerns regarding this port should be directed to the - FreeBSD Ports mailing list via ports@FreeBSD.org
-

- - FreshPorts, with direct and indirect support from the FreeBSD - community, continues to evolve and to provide a great tool for - users and developers alike.

- - - - Provide a copy/paste method for updating watch lists - - improvement of query times for "People watching this port, - also watch" - - pagination of commits within a port - - pagination of watch lists - - create an RSS feed for individual watch lists - -
- - - BSDCan - - - - - Dan - - Langille - - - dan@langille.org - - - - - - - - -

BSDCan made a strong debut in - 2004 - - . The favorable reception gave us a strong incentive for - 2005 - - . We have been rewarded with a very interesting - program - - and a higher rate of registrations. Percentage-wise, we have more - Europeans than last year as they have decided that the trip across - the Atlantic is worth taking. We know they won't be disappointed. - See you at BSDCan 2005!

- - - - volunteers needed for the conference - -
- - - Ports Collection - - - - - Mark - - Linimon - - - linimon@FreeBSD.org - - - - - The FreeBSD ports - collection - - FreeBSD ports - monitoring system - - The FreeBSD - Ports Management Team - - - -

As this report was being written, the 5.4 release was - ongoing.

- -

A new charter for the Ports Management (portmgr) team was - approved by core and has been posted at the URL above. In addition, - two other new pages describe the policies of the team, and the - range of QA activities both during and between releases.

- -

Due to being absent from email discussions for some time, Oliver - Eikemeier (eik) was moved to non-voting status on portmgr.

- -

We have added several new and very active committers recently; - this is helping us to keep the PR count low even with the large - numbers of new ports that have been added.

- -

Several more iterations of infrastructure changes have been - tested on the cluster and committed; see /usr/ports/CHANGES for - details.

- -

Updates have occurred to x.org, GNOME, KDE, and perl.

- -

There have been some updates to the Porter's Handbook, but more - sections are still in need of updates to include recent changes in - practices.

- -

The ports collection now contains almost 12,750 ports.

- - - - Further progress has been made in cracking down on ports that - install files outside the approved directories and/or do not - deinstall cleanly (see "Extra files not listed in PLIST" on - pointyhat - - ) and this will remain a focus area. We appreciate everyone who has - sent in PRs or committed fixes. - - Demand for new features and revisions for bsd.port.mk is - still very high and the portmgr team is trying to work through them - all. - - We still have a large number of PRs that have been assigned - to committers for some time (in fact, they constitute the - majority). One goal of portmgr in the coming months is to try to - reduce this number, and we would like to ask our committers to help - us out as much as possible. - -
- - - PowerPC Port - - - - - Peter - - Grehan - - - grehan@FreeBSD.org - - - - -

Progress continues. X.Org 6.8.1 server has been up and running - on a number of different Macs, and the work is being merged into - 6.8.2. There have been successful installs on Mac Minis

- -
- - - OpenBSD packet filter - pf - - - - - Max - - Laier - - - mlaier@FreeBSD.org - - - - - pf4FreeBSD - Homepage - - pf 3.7 patches - - - -

OpenBSD is about to release - version 3.7 - - . There are - patches - - available to catch up with the development done in OpenBSD 3.6 and - 3.7. These patches are in an early stage, but ready for testing, - please help.

- -

Otherwise there was not much activity on pf, as it already is - quite stable. Other work, such as CARP and if_bridge are having - impact on pf in FreeBSD however, please see the respective - reports.

- - - - Alpha/Betatesting of the 3.7 import - - Testing with if_bridge - -
- - - libthread - - - - - David - - Xu - - - davidxu@FreeBSD.org - - - - - - - -

libthread is a pure 1:1 threading library, it had stayed in my - perforce branch for a long time, recent it was imported into source - tree and replaced libthr. The purpose of the work is to improve 1:1 - threading on FreeBSD, the library is designed in mind that simplest - is best, currently it can run almost all of the applications - libpthread can run, but gives you better SMP performance. The - library size is smaller than libpthread.

- -

Currently it supports i386, AMD64, sparc64 and ia64 and may - support alpha, powerpc and arm. I didn't do many tests on sparc64 - and ia64, I only tested it on FreeBSD cluster machines. For i386, I - always used LDT, but know that Peter committed GDT code, and now - there is no 8191 threads limitation anymore.

- -

libthread_db was updated to support debugging the new libthr. It - is an assistant library used by gdb to debug threaded process, that - understands internal detail of thread libraries. I have improved it - a bit to support event reports for libthr, currently it can report - thread creation and death events. That means a thread that was - created and died will be reported to the user regardless if you are - tracking it or not.

- - - - I am working on thread creation performance, currently it - needs considerable number of libc functions and syscalls to create - a thread, I would like to introduce a syscall to create a thread in - atomically. That means one syscall will setup thread entry, tls, and - signal mask and PTHREAD_SCOPE_PROCESS/SYSTEM; in future maybe even - CPU affinity masks, when userland entry code is executed, the - thread is already fully setup. - - Process shareable synchronization objects. In Current FreeBSD - does not support this specification. The idea about the shareable - mutex and others is like other systems did, one can use mmap() to - create a shared memory page, and put a pthread synchronization - object in the page, multiple processes use the shared object to - control resource access. I am not working on it, if someone is - interested, please let me know. - -
- - - Coverity Code Analysis - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - - - - - -

There has been an ongoing effort to review the kernel source - code using Coverity's source code analysis tools - (http://www.coverity.com). These tools check for a variety of - problems such as null pointer dereference, use-after-free of - allocated variables, invalid array references, etc. This work is a - joint project between FreeBSD and Coverity.

- -

Two passes have been completed over the 6-current kernel source - code base and all significant problems have been corrected. These - runs were done in February and March of this year. A few reports of - minor problems await response from outside groups and will be - resolved in time for the first 6.x release. Another analysis run - over the kernel will happen soon. We are looking for a way to use - these tools on a regular basis as they have been helpful in - improving the code base.

- -

Thanks to Coverity for their help and especially Ted Unangst. - Several developers have been especially helpful in resolving - reports: Poul-Henning Kamp, David Schultz, Pawel Jakub Dawidek, - George V. Neville-Neil, and Matthew Dodd.

- -
- - - Wireless Networking Support - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - - - - -

Several new drivers by by Damien Bergamini were brought into the - tree: iwi, ipw, ral, and ural.

- -

WPA-PSK support for the ndis driver was contributed by Arvind - Srinivasa.

- -

A new tx rate control algorithm for the ath driver was - contributed by John Bicket. It will become the default algorithm - shortly.

- -

Work on multi-bss support is going on outside the cvs tree. A - presentation on this work will be given at BSDCan 2005 and the - slides for the talk will be made available after.

- - - - Drivers other than ath and ndis need updates to support the - new security protocols. - - hostapd needs work to support the IAPP and 802.11i - preauthentication protocols (these are simple conversions of - existing Linux code). - - The OpenBSD dhclient program has been ported but needs a - developer that will maintain it once it is brought into cvs. - -
- - - Many subdirs for UFS - - - - - David - - Malone - - - dwmalone@FreeBSD.org - - - - - - Thread on freebsd-fs - - - -

I'm currently looking at the limit on the number of - subdirectories a directory can have in UFS. There is currently a - limit of 32K subdirectories because of the 16 bit link count field - in both struct stat and the on-disk inode format. The thread above - shows that dirhash provides acceptable performance for directories - with 100k subdirectories using a prototype patch. Two options for - allowing many subdirectories seem to exist: changing the link - counting scheme for directories and expanding the link count field. - The prototype patch implements the first scheme and there are plans - to investigate the second scheme (which may require an ABI - change).

- -
- - - IMUNES - a FreeBSD based kernel-level network topology - emulator - - - - - Miljenko - - Mikuc - - - miljenko@tel.fer.hr - - - - - Marko - - Zec - - - zec@tel.fer.hr - - - - - - - - -

IMUNES is a scalable kernel-level network topology emulator - based on FreeBSD. In IMUNES each virtual node operates on its - private instance of network stack state variables, such as routing - tables, interface addresses, sockets, ipfw rules etc. Most if not - all existing FreeBSD application binaries, including routing - protocol daemons such as quagga or XORP, can run unmodified within - the context of virtual nodes with no noticeable performance - penalty. Complex network topologies can be constructed by - connecting the virtual nodes through netgraph-based link-layer - paths. A GUI tool allows for simple and intuitive network topology - specification, deployment and management. The current version of - IMUNES is based on FreeBSD 4.11-RELEASE and supports IPv4.

- -
- - - XenFreeBSD - FreeBSD on Xen - - - - - Kip - - Macy - - - kmacy@fsmware.com - - - - - Xen - project page - - Xen changeset logs - - - -

FreeBSD 5.3 runs on the stable and the development branches of - xen and is now checked into both trees. Over the next couple of - weeks I will be adding improvements for better batching of page - table updates and SMP support.

- - - - FreeBSD support for running as Domain 0, i.e. running as the - hosting operating system. - - FreeBSD support for VM checkpoint and migration. - -
- - - Dingo - - - - - George - - Neville-Neil - - - gnn@neville-neil.com - - - - - - Project page (out of date) - - Blog - covering test framework - - - -

On the protocol conformance tool I have finally made some - progress getting a scriptable packet library using libnet, and - SWIG. This will hopefully become a port that can then be used to do - conformance testing on protocol stack changes. Qing Li has - separately taken up the ARP rewrite and that will be taken out of - the Dingo project pages.

- - - - Many :-) - -
- - - Interrupt Latency - - - - - Warner - - Losh - - - imp@FreeBSD.org - - - - - - - -

I've setup a test system to measure interrupt latency on FreeBSD - 5.3 and current. So far I've measured the baseline latency for a - 300MHz embedded cyrix based single board computer. I've tried a - number of different strategies to optimize the interrupt path. Most - of these strategies resulted in some improvement of the time it - takes to get from the start of the interrupt servicing to the - driver's ISR. These improvements turned out to be about 1-2% of the - processing times on this single board computer, but a wash on - faster machines. However, the time between when the interrupt - should happen, and when FreeBSD starts to service the interrupt is - the dominant factor in these measurements. Despite the fact that - these are fast interrupt handlers (so the scheduler is out of the - loop), I routinely see average latencies of 18us, with large - variations (on the order of 5us standard deviation).

- - - - I need to measure the latencies with 4.x and current to - characterize the differences more precisely. I'm especially - interested in the effects on interrupt latency that the elimination - of mixed mode will cause. - - I need to characterize different parts of our ISR routines to - see if some of the variation I've seen so far can be reduced by - improved coding techniques. - - I need to re-run my tests with 5.4 and summarize my results - in a paper. - -
- - - Infrastructure Cleanup - - - - - Warner - - Losh - - - imp@FreeBSD.org - - - - - Takahashi - - Yoshihiro - - - nyan@FreeBSD.org - - - - - - - -

Unglamorous cleanup of the code base continues. The focus of - recent efforts have been to reduce the number of machine #ifdefs - that are in the machine independent code. In addition, we're also - trying to increase code sharing between pc98 and i386 ports and - reduce the number of #ifdef PC98 instances in the tree.

- -

In addition, a number of cleanup tasks are underway for - different parts of the kernel that are more complicated than - necessary. Recently, the pccard code's allocation routines were - simplified to reassign ownership of resources more directly than - before. The search is on for other areas that can benefit from - cleanup.

- - - - On pc98, there's no such thing as an ISA bus. It is desirable - to move to having cbus appear in the probe messages. This would - also allow for additional segregation of pc98 specific code in the - drivers and eliminate many ifdefs. Ideally, isa and cbus would - share a common newbus ancestor class so their similarities can be - exploited (they both have PNPBIOS enumeration methods, for - example). - - cbus devices can have complicated resources. There's support - for vectors of resources. Yet there's no support for populating a - vector of resources from the plug and play information. Doing so - would help the complex world of pc98 a lot, and the odd edge cases - in i386 (floppy, ata) a little. - - The hints mechanism provides a way to associate hardware with - drivers and resource that would otherwise be completely unknown to - the system. A refinement in the hints mechanism to allow matching - of driver instances to resources is desirable. This would allow one - to hardwire sio0 to 0x2f8, even when the serial device in the plug - and play resource list (or acpi resource list) is listed second. A - further refinement could also be wiring sio0 to "port B" as defined - by acpi or some other enumeration method. Chances are good that - these seemingly related concepts may need separate implementations - due to the decision points for unit assignment. - - Pccard, cardbus and usb probe their devices after interrupts - are enabled. It would be desirable to hook into new kernel APIs to - allow the mounting of root to be put off until those systems know - that they are done with their initial probe of the devices present - at boot. - -
- - - FreeBSD Security Officer and Security Team - - - - - Security - - Officer - - - security-officer@FreeBSD.org - - - - - Security - - Team - - - security-team@FreeBSD.org - - - - - - - - - - - - -

In January 2005, Warner Losh (Security Officer Emeritus) stepped - down from the FreeBSD Security Team in order to better devote his - time to other projects. In March, Colin Percival was named as a - second Deputy Security Officer, joining Dag-Erling Smørgrav in - that position. The current Security Team membership is published on - the web site.

- -

So far in 2005, four security advisories have been issued - concerning problems in the base system of FreeBSD, three of which - were specific to FreeBSD. The Vulnerabilities and Exposures Markup - Language (VuXML) document has continued to be updated by the - Security Team and the Ports Committers documenting new - vulnerabilities in the FreeBSD Ports Collection. As of April 17, - 127 entries have been added in 2005 bringing the FreeBSD VuXML file - up to a total of 422 entries.

- -

In the past months both the - VuXML web site - - and the - FreshPorts - - VuXML integration have been improved. The VuXML web site has had a - face lift and, among other things, each package now has a separate - web page which lists all documented vulnerabilities for the - particular package. - CVE - - information is now also included directly on the VuXML web - site.

- -

Finally, the first few months of 2005 also saw FreeBSD 4.8 -- - the first release to be offered "extended support" -- reach its - designated End of Life. The currently supported releases are - FreeBSD 4.10, 4.11, and 5.3.

- -
- - - FreeBSD Release Engineering - - - - - RE - Team - - re@FreeBSD.org - - - - - - - - -

FreeBSD 4.11, the final formal release of the 4.x series, was - released on 25 Jan 2005. Many thanks to the all of the developers - and users over the past 5 years who made it successful. While no - more releases are planned, the security team will continue to - support it through security update patches until 2007. Developers - are also free to commit bug fixes and low-risk features to the - RELENG_4 branch for the foreseeable future.

-

FreeBSD 5.4 is going through its final release candidate stages - and is expected to be released in late April. Its focus is mostly - bug fixes and minor feature and performance improvements, so it is - an excellent target for those looking to upgrade from previous - versions or to give FreeBSD a try for the first time. FreeBSD 5.5 - will be release in about 4-6 months after 5.4.

-

FreeBSD 6.0 is rapidly approaching also. In contrast to FreeBSD - 5.0, the goal is to take a more incremental approach to major - changes, and not wait for years to get as many features in as - possible. FreeBSD 6.0 will largely be an evolutionary change from - the 5.x series, with the largest changes centered around - multi-threading and streamlining the filesystem and device layers. - Feature freeze and code freeze for 6.0 are coming up in May and - June, and we hope to have 6.0 stable and ready for release in July - or August.

-

The release engineering team has also started doing monthly - informal snapshots of the 6-CURRENT and 5-STABLE trees. These are - intended to increase the exposure of new features and get more - users involved in testing and providing feedback. Snapshots can - be found at - http://www.freebsd.org/snapshots.

- -
- - - New Wireless Drivers - - - - - Damien - - Bergamini - - - damien@FreeBSD.org - - - - - - - - - - -

Four new wireless drivers were imported:

- -

- ipw - - : driver for Intel PRO/Wireless 2100 adapters (MiniPCI). -
- - iwi - - : driver for Intel PRO/Wireless 2200BG/2225BG/2915ABG adapters (PCI - or MiniPCI). -
- - ral - - : driver for Ralink RT2500 wireless adapters (PCI or CardBus). -
- - ural - - : driver for Ralink RT2500USB wireless USB 2.0 adapters.

- -

The ipw and iwi drivers require firmwares to operate. -
- - These firmwares can't be redistributed with the base system due to - license restrictions. -
- - See firmware licensing terms here: - - http://ipw2100.sourceforge.net/firmware.php?fid=4 - - . -
-

- -

Ports which include the firmware images as well as the firmware - loader are being worked on. -
- - A list of adapters supported by ral and ural can be found here: - http://ralink.rapla.net/ - - .

- - - - Create ports for ipw and iwi firmwares. - - Add IBSS support to iwi. - - Add WPA (802.11i) support to ipw and iwi. - - Add hardware encryption (WEP, TKIP and CCMP) support in ral - and ural. - - Add automatic rate adaptation support to ural. - -
-
- diff --git a/en/news/status/report-2005-03-2005-06.xml b/en/news/status/report-2005-03-2005-06.xml deleted file mode 100644 index 2b066ab98a..0000000000 --- a/en/news/status/report-2005-03-2005-06.xml +++ /dev/null @@ -1,2173 +0,0 @@ - - - - - - March-June - - 2005 - - -
- Introduction - -

The second quarter of 2005 has again been very exciting. The - BSDCan and MeetBSD conferences were both very interesting and and the - sources of very good times. I highly recommend attending them again - next year.

- -

The Google Summer of Code project has also generated quite a bit - of excitement. FreeBSD has been granted 19 funded mentorship spots, - the fourth most of all of participating organizations. Projects being - worked on range from UFS Journaling to porting the new BSD Installer - to redesigning the venerable www.FreeBSD.org website. We are quite - pleased to be working with so many talented students, and eagerly - await the results of their work. More information and status can be - found at the Wiki site at - - http://wikitest.freebsd.org/moin.cgi/SummerOfCode2005 - - .

- -

The FreeBSD 6.0 release cycle is also starting up. The purpose of - quickly jumping from 5.x to 6.0 is to reduce the amount of transition - pain that most users and developers felt when switching from 4-STABLE - to 5.x. 6.0 will feature improved performance and stability over 5.x, - experimental PowerPC support, and many new WiFi/802.11 features. The - 5.x series will continue for at least one more release this fall, and - will then be supported by the security team for at least 2 years - after that. We encourage everyone to give the 6.0-BETA snapshots a - try and help us make it ready for production. We hope to release - FreeBSD 6.0 by the end of August.

- -

Thanks again to everyone who submitted reports, and thanks to Max - Laier for running the show and putting the reports together. Enjoy - reading!

-
- - - soc - - Google summer of code - - - - proj - - Projects - - - - doc - - Documentation - - - - kern - - Kernel - - - - net - - Network infrastructure - - - - bin - - Userland programs - - - - arch - - Architectures - - - - ports - - Ports - - - - vendor - - Vendor / 3rd Party Software - - - - misc - - Miscellaneous - - - - BSDCan - - - - - Dan - - Langille - - - dan@langille.org - - - - - - - - -

The second annual - BSDCan - - conference was well presented, well attended, and everyone went - away with good stories to tell. If you know anything that attended, - get them to tell you what they did, who they met with, and talks - they listened to.

- -

We had 197 people from 15 different countries. That's a strong - turnout by any definition.

- -

We'll be adding more people to the program committee for BSDCan - 2006. This job involves prodding and poking people from your - respective projects. You get them to submit papers. There are a lot - of very interesting projects out there and not all of them submit a - paper.

- -

If you know someone doing interesting work, please let me know - and urge them to start thinking about BSDCan 2006.

- -
- - - Integrate the BSD Installer into FreeBSD - - - - - Andrew - - Turner - - - soc-andrew@FreeBSD.org - - - - - The BSD Installer - - BSD - Installer Wiki page - - - BSD Installer Perforce tree - - - -

Progress towards integrating the BSD Installer for Google's - Summer of Code is coming along nicely. The installation CD will - boot to multi-user mode and run both the front and back ends. It - can then partition a hard drive, install the base distribution and - make the disk bootable.

- - - - Test in non-i386 - - Investigate installing from other media - - Many more tasks - -
- - - FreshPorts - - - - - Dan - - Langille - - - dan@langille.org - - - - - - - - -

The following new features have been added to FreshPorts:

- - - - - - I've noticed that FreshPorts is incorrectly reporting - vulnerabilities under a - - very specific situation - - . The fix is sitting in BETA, waiting to be moved to - production. - - I've been working on added Last-Modified to the headers. At - present, there are none. Most of the pages on the BETA website have - been completed. I need to move this to production soon. - - Customized news feeds are in the works. You'll be able to - create a news feed for each of your watch lists. This work is - contingent upon finishing the Last-Modified headers. - -
- - - Fundraising - TCP & IP Routing Optimization - - - - - Andre - - Oppermann - - - andre@freebsd.org - - - - - - - - -

The TCP code in FreeBSD has evolved significantly since the fork - from 4.4BSD-Lite2 in 1994 primarily due to new features and - refinements of the TCP specifications.

- -

The TCP code now needs a general overhaul, streamlining and - cleanup to make it easily comprehensible, maintainable and - extensible again. In addition there are many little optimizations - that can be done during such an operation, propelling FreeBSD back - at the top of the best performing TCP/IP stacks again, a position - it has held for the longest time in the 90's.

- -

This overhaul is a very involved and delicate matter and needs - extensive formal and actual testing to ensure no regressions - compared to the current code. The effort needed for this work is - about three man-month of fully focused and dedicated time. To get - it done I need funding to take time off my day job and to dedicate - me to FreeBSD work much the way PHK did with his buffer cache and - vnode rework projects.

- -

I've got the opportunity to work up to three man-month - exclusively full-time on FreeBSD during the second half of 2005. - That means up to 720 hours of full-steam coding (at 60 hours/week)! - I will work as much time as the fundraise provides.

- -

I need to raise enough money for each month from donations from - the FreeBSD community to cover my fixed cost of living, office and - associated overhead. These fixed cost amount to US$6,300/month - (EUR5,200 or CHF8,000). Yes, Switzerland is not the cheapest place - to live. :)

- -

A detailed description of the tasks involved and the code I will - write is on my FreeBSD website; Follow the link above.

- - - - Raise enough money to get all the almost finished TCP and IP - code into the tree. - -
- - - CPU Cache Prefetching - - - - - Andre - - Oppermann - - - andre@freebsd.org - - - - - - - - - - -

Modern CPU's can only perform to their maximum if their working - code is in fast L1-3 cache memory instead of the bulk main memory. - All of today's CPU's support certain L1-3 cache prefetching - instructions which cause data to be retrieved from main memory to - the cache ahead of the time that it is already in place when it is - eventually accessed by the CPU.

- -

CPU Cache Prefetching however is not a silver bullet and has to - be used with extreme care and only in very specific places to be - beneficial. Incorrect usage can lead to massive cache pollution and - a drop in effective performance. Correct and very carefully usage - on the other can lead to drastic performance increases in common - operations.

- -

In the linked patch CPU cache prefetching has been used to - prefetch the packet header (OSI layer 2 to 4) into the CPU caches - right after entering into the network stack. This avoids a complete - CPU stall on the first access to the packet header because packets - get DMA'd into main memory and thus never are already pre-cache in - the CPU caches. A second use in the patch is in the TCP input code - to prefetch the entire struct tcpcb which is very large and used - with a very high probability. Use in both of these places show a - very significant performance gain but not yet fully quantified.

- -

The final patch will include documentation and a guide to - evaluate and assess the use of CPU cache prefetch instructions in - the kernel.

- - - - Need funding, see "Fundraising - TCP & IP Routing - Optimization". - -
- - - TCP Reassembly Rewrite and Optimization - - - - - Andre - - Oppermann - - - andre@freebsd.org - - - - - - - - - - - - -

Currently TCP segment reassembly is implemented as a linked list - of segments. With today's high bandwidth links and large - bandwidth*delay products this doesn't scale and perform well.

- -

The rewrite optimizes a large number of operational aspects of - the segments reassembly process. For example it is very likely that - the just arrived segment attaches to the end of the reassembly - queue, so we check that first. Second we check if it is the missing - segment or alternatively attaches to the start of the reassembly - queue. Third consecutive segments are merged together (logically) - and are skipped over in one jump for linear searches instead of - each segment at a time.

- -

Further optimizations prototyped merge consecutive segments on - the mbuf level instead of only logically. This is expected to give - another significant performance gain. The new reassembly queue is - tracking all holes in the queue and it may be beneficial to - integrate this with the scratch pad of SACK in the future.

- -

Andrew Gallatin was able to get 3.7Gb/sec TCP performance on - dual-2Gbit Myrinet cards with severe packet reordering (due to a - firmware bug) with the new TCP reassembly code. See second - link.

- - - - Need funding, see "Fundraising - TCP & IP Routing - Optimization". - -
- - - TTCPv2: Transactional TCP version 2 - - - - - Andre - - Oppermann - - - andre@freebsd.org - - - - - - - - - - -

The old TTCP according to RFC1644 was insecure, intrusive, - complicated and has been removed from FreeBSD >= 5.3. Although - the idea and semantics behind it are still sound and valid.

- -

The rewrite uses a much easier and more secure system with 24bit - long client and server cookies which are transported in the TCP - options. Client cookies protect against various kinds of blind - injection attacks and can be used as well to generally secure TCP - sessions (for BGP for example). Server cookies are only exchanged - during the SYN-SYN/ACK phase and allow a server to ensure that it - has communicated with this particular client before. The first - connection is always performing a 3WHS and assigning a server - cookie to a client. Subsequent connections can send the cookie back - to the server and short-cut the 3WHS to SYN->OPEN on the - server.

- -

TTCPv2 is fully configurable per-socket via the setsockopt() - system call. Clients and server not capable of TTCPv2 remain fully - compatible and just continue using the normal 3WHS without any - delay or other complications.

- -

Work on implementing TTCPv2 is done to 90% and expected to be - available by early February 2005. Writing the implementation - specification (RFC Draft) has just started.

- - - - Need funding, see "Fundraising - TCP & IP Routing - Optimization". - -
- - - Network Interface API Cleanup - - - - - Anders - - Persson - - - soc-anders@freebsd.org - - - - - - - - -

The goal of this project is to review the network interface API - and try to remove references to kernel-only data structures by - removing the use of libkvm and instead rely on other interfaces to - provide information. If there are no adequate interfaces, they - would be created.

- -

Currently netstat is being reviewed and parts of it have been - modified to use sysctl rather than libkvm to provide the - information.

- -

A big thank you to Brooks Davis for mentoring :-)

- -
- - - FreeBSD Security Officer and Security Team - - - - - Security - - Officer - - - security-officer@FreeBSD.org - - - - - Security - - Team - - - security-team@FreeBSD.org - - - - - - - - - - - - -

In May 2005, Remko Lodder joined the FreeBSD Security Team, - followed by Christian S.J. Peron in July 2005. In the same time - period, Gregory Shapiro and Josef El-Rayes resigned from the team - in order to devote their time to other projects. The current - Security Team membership is published on the web site.

- -

In the time since the last FreeBSD status report, twelve - security advisories have been issued concerning problems in the - base system of FreeBSD; of these, six problems were in - "contributed" code, while five problems were in code maintained - within FreeBSD. The Vulnerabilities and Exposures Markup Language - (VuXML) document has continued to be updated by the Security Team - and the Ports Committers documenting new vulnerabilities in the - FreeBSD Ports Collection; since the last status report, 97 new - entries have been added, bringing the total up to 519.

- -

The following FreeBSD releases are supported by the FreeBSD - Security Team: FreeBSD 4.10, FreeBSD 4.11, FreeBSD 5.3, and FreeBSD - 5.4. Their respective End of Life dates are listed on the web - site.

- -
- - - Dingo - - - - - Several - - - - - - somewhat out of - date - - - -

Currently trying to restart bits of the project. Cleaning up the - p4 branch. Recently more people have volunteered to help as well. - Brooks Davis has completed removing the ifnet from the softc.

- - - - See the web page. - -
- - - The FreeBSD Dutch Documentation Project - - - - - Remko - - Lodder - - - remko@FreeBSD.org - - - - - Siebrand - - Mazeland - - - siebrand.mazeland@xs4all.nl - - - - - Rene - - Ladan - - - r.c.ladan@student.tue.nl - - - - - The Dutch - Handbook - - The - Dutch Project Site - - The Dutch - Preview Documentation - - The Dutch - FreeBSD Flyer - - - -

The FreeBSD Dutch Documentation Project is a ongoing project in - translating the english documentation to the Dutch language. - Currently we are almost done with the FreeBSD Handbook. Finishing - the Handbook is our first priority, and we could use your help. - Please contact Siebrand or myself if you want to helpout. After the - handbook we will focus on other documents as well, so feel free to - help us there as well

- - - - FreeBSD Handbook translation. Finish the translation from - English to Dutch - - FreeBSD Handbook review. Finish the review of the translated - documents - - FreeBSD Articles. Start translating the articles from English - to the Dutch Language - - FreeBSD www. Start translating the website from English to - the Dutch Language - - The rest of the FreeBSD Documents. Start translating them - from English to the Dutch Language. - -
- - - Transparent support for superpages in the FreeBSD - Kernel - - - - - Alan L. - - Cox - - - alc@cs.rice.edu - - - - - Olivier - - Crameri - - - olivier.crameri@epfl.ch - - - - - - - -

We are currently working on an updated implementation of - Juan - Navarro's transparent support for superpages in FreeBSD. -

- -

The idea is to take advantage of the architectural support for - big memory pages (superpages) by using a reservation mechanism - allowing us to transparently promote groups of base pages into - superpages and demote superpages into several smaller superpages or - base pages.

- -

The advantage of using superpages vs. base pages is to - significantly improve the TLB coverage of the physical memory, thus - improving the peformance by reducing the number of TLB misses.

- -

The modification of the FreeBSD kernel that we are working on - involves the replacement of the current list based page allocation - mechanism with a system using a buddy allocator to reserve groups - of pages for a memory object. The promotion and demotion of the - pages occur directly within the pmap module.

- -

The former implementation was supporting the alpha and IA64 - architectures. We are adding the support for amd64. We currently - have an almost complete implementation. Once completed we will make - a performance study with a particular emphasis on TLB and cache - misses.

- -
- - - Wireless Networking Support - - - - - Sam - - Leffler - - - sam@freebsd.org - - - - - - - -

A lot of bugs were fixed in preparation for the 6.0 release. 6.0 - will be the first release to include full WPA support (both - supplicant and authenticator).

- -

A presentation on the forthcoming multi-bss support was given at - BSDCan 2005. The slides from the talk are available at - - http://www.freebsd.org/~sam/BSDCan2005.pdf. - - The plan is to commit this work to HEAD after 6.0 is released - which means the first release that will have it is 7.0.

- - - - hostapd needs work to support the IAPP and 802.11i - preauthentication protocols (these are simple conversions of - existing Linux code). - -
- - - FreeSBIE toolkit integration - - - - - Dario - - Freni - - - saturnero@freesbie.org - - - - - FreeSBIE main site - - My page - on FreeBSD wiki - - - -

My Summer of Code project is reengineering and rewrite of - FreeSBIE toolkit, in order to include it in the source tree. Let's - call it FreeSBIE 2

- -

Before being accepted, I worked hard on the FreeSBIE 1 toolkit - to make it more flexible. It now supports amd64 and PowerPC - architecture. The built filesystem can now boot from almost every - media, from DVD to compact flash or hard disk. Also on i386 it is now - possible to include the BSD Installer on the livefs. We've received - reports that our toolkit is successfully used for the install CD of - pfSense - - and - PC-BSD - - projects.

- -

My future goals are to make the toolkit even more flexible, - capable to build embedded images (like nanoBSD) or big Live-DVD - systems, depending on user's choice, to support all the - architectures supported by FreeBSD and to write a set of tools for - making a netboot server with a FreeSBIE image.

- -
- - - PowerPC Port - - - - - Peter - - Grehan - - - grehan@FreeBSD.org - - - - - FreeBSD/PPC - Platform page. - - - -

Florent Thoumie has updated the massively out-of-date platform - page. Work continues to creating a 6.0 release of the PowerPC - port.

- -
- - - GEOM Gate rewrite - - - - - Pawel Jakub - - Dawidek - - - pjd@FreeBSD.org - - - - - - - - - - -

GGATE is a mechanism for exporting storage devices over the - network. It was reimplemented to be much faster and to handle - network failures better. The ggatec uses two threads now: sendtd, - which takes I/O request from the kernel and sends it to ggated; - recvtd, which receives finished requests and forwards them to the - kernel. The ggated uses three threads: recvtd, which receives I/O - requests from ggatec; disktd, which executes I/O requests (reads or - writes data); sendtd, which sends finished requests to ggatec. The - new ggate has been committed to 6.x.

- -

The work was sponsored by - Wheel Sp. z o.o. -

- -
- - - gjournal - - - - - Ivan - - Voras - - - ivoras@gmail.com - - - - - gjournal - wiki - - - -

The schedule (as stated on the wiki page) is honoured, which - means that the development has started, but there's not enough code - for testing. Many details have been thought-out and the development - is ongoing.

- -
- - - FreeBSD Summer of Code - - - - - Summer of Code - - Mentors - - - soc-mentors@FreeBSD.org - - - - - - - - -

Google has generously funded 19 students to spend the summer - working on FreeBSD related projects. Each student is working with - one or more mentors to learn about how open source software - development is done with FreeBSD. This development work is - happening in the Perforce repository as //depot/projects/soc2005. - This tree will soon be exported via CVSup -- check the Wiki for - more information.

- -
- - - gvinum 'move', 'rename' - - - - - Chris - - Jones - - - soc-cjones@freebsd.org - - - - - - gvinum 'move', 'rename' wiki entry - - - -

With the releases of FreeBSD 5.3 and 5.4, FreeBSD has been - moving away from "old-style" vinum towards GEOM-enabled gvinum for - logical volume management. While gvinum is a mostly - feature-complete replacement for vinum, it does not implement the - 'move' or 'rename' verbs which are rather useful when reorganizing - one's volume layout, the alternative being a tedious process of - deleting and recreating subdisks, plexes, or volumes. Additionally, - gvinum is nearly completely undocumented, which contributes to the - perception of gvinum as an unfinished project.

- -

I'm working on implementing 'move' (being able to move a subdisk - from one drive to another) and 'rename' (being able to rename an - subdisk, plex, volume, or drive), as well as on documentation for - gvinum.

- -

So far, I've come up with a plan of attack with le@ and phk@, - and implemented the bulk of the userland code for gvinum 'move' and - 'rename'. Still to come are the kernel-side code and - documentation.

- - - - 'move' and 'rename' userland implementation - - 'move' and 'rename' kernel-side implementation - - Outline new handbook section and man page - - Implement new handbook section and man page - -
- - - if_bridge - - - - - Andrew - - Thompson - - - thompsa@freebsd.org - - - - - - - -

This was committed to current on 5 Jun 2005 and will first - appear in the 6.0 release, thanks to everyone who tested. Recent - improvements include:

- -
    -
  • IPFW layer2 filtering
  • - -
  • DUMMYNET support
  • - -
  • IP header alignment checking
  • -
- -

There is ongoing work to bring in some of the advanced features - from OpenBSD such as IPSec bridging. People are encouraged to use - if_bridge and report any problems to the mailing lists.

- -
- - - IPv6 Support for IPFW - - - - - Max - - Laier - - - mlaier@freebsd.org - - - - - Brooks - - Davis - - - brooks@freebsd.org - - - - - - - -

At the developer summit before BSDCan it was decided to remove - IP6FW from the tree as it has a couple of problems. The most - pressing one is the lack of synchronization and thus the need for - debug.mpsafenet=0. As a replacement Brooks Davis has imported - patches to teach the existing and well-locked IPFW2 code about - IPv6.

- -

Since the initial import I have added some features required to - manage IPv4 and IPv6 in a single ruleset. I have also extended - existing opcodes to work with IPv6. There are, however, still some - opcodes that do not work with IPv6 and most of the more exotic ones - haven't been tested. As long as IPFW2+v6 does not provide enough - functionality and stability to work as a drop-in replacement for - IP6FW, we won't remove IP6FW.

- -

In order to get the new code to that point we - really - - need more testers with real world IPv6 deployment and interest in - IPFW+v6. The lack thereof (I haven't received a single answer on my - requests to various FreeBSD mailing lists) has made it hard to - progress.

- - - - Properly implement O_REJECT for IPv6 - - Maybe implement O_LOG - - Test new(er) IPFW2 opcodes with IPv6 - - Test - - Test - - Test - -
- - - launchd(8) for FreeBSD - - - - - R. Tyler - - Ballance - - - tyler@tamu.edu - - - - - Wiki - Project Page - - - Apple's launchd(8) man page - - - -

So far progress has been slow, the autoconf build system has - been removed from all of the launchd(8) code, and launchctl(1) is - building and semi-functional on FreeBSD-CURRENT (i.e. - CoreFoundation hooks have been removed).

- -

I'm currently working on porting "liblaunch" which is the core - backend to both launchd(8) (the actual daemon) and launchctl(1), - there are some mach/xnu specific hooks and calls that need to be - remove and either reimplemented or worked around.

- -

We're also waiting on a response from Apple on a possible - BSD-licensed version of the code (it's currently under the APSL) - Progress is slow, but steady.

- -
- - - Removable interface improvements - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - - - - - - -

This project is an attempt to clean up handling of network - interfaces in order to allow interfaces to be removed reliably. - Current problems include panics if Dummynet is delaying packets to - an interface when it is removed.

- -

I have removed struct ifnet's and layer two common structures - from device driver structures. This will eventually allow them to - be managed properly upon device removal. This code has been - committed and will appear in 6.0. Popular drivers have generally - been fixed, but more testing is needed.

- -
- - - OpenBSD dhclient import. - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - - - - -

The OpenBSD rewrite of dhclient has been imported, replacing the - ISC dhclient. The OpenBSD client provides better support for - roaming on wireless networks and a simpler model of operation. - Instead of a single dhclient process per system, there is one per - network interface. This instance automatically goes away in the - even of link loss and is restarted via devd when link is - reacquired. To support this change, many aspects of the network - interface configuration process were overhauled.

- -

The current code works well in most circumstances, but more - testing and polishing is needed.

- -
- - - Move ARP out of routing table - - - - - Qing - - Li - - - qingli@freebsd.org - - - - - - - - -

I've sent the patch to jinmei@isl.rdc.toshiba.co.jp @KAME for - review. I'm still waiting for feedback from Andre. There hasn't - been any major change since the last report. I've kept the code in - sync with CURRENT. Gleb has created a separate P4 branch and has - been helping out on the locking side. Gleb is also helping out on - the testing front.

- - - - I'm waiting for review feedback from my mentor Andre on the - overall design and code. I'm waiting for feedback from Andre on - Gleb's suggested modification. - -
- - - Nsswitch / Caching daemon - - - - - Michael - - Bushkov - - - soc-bushman@rsu.ru - - - - - - - - - - -

The - nsswitch / caching daemon - - project is being developed within the Google's Summer Of Code - program. The first goal of this project is to implement a set of - patches to extend the use of nsswitch subsystem. The second goal is - the development of the caching library and daemon to add the - caching ability to the nsswitch.

- -

Currently services, protocols, rpc and openssh patches are - finished. Support for services, services_compat, rpc, protocols, - and ssh_host_keys databases is added with 'files', 'nis' and - 'compat' (for services) sources possible. The nsswitch-friendly - openssh port is almost completed.

- - - - Implement set of patches to make nsswitch support - globus grid security files - - , - MAC and audit related configuration files - - databases. - - Implement the caching library and the caching daemon and - patch nsdispatch function to support caching. - -
- - - OpenBSD packet filter - pf - - - - - Max - - Laier - - - mlaier@freebsd.org - - - - - - - -

We will have pf as of OpenBSD 3.7 for RELENG_6. Import has been - completed in early May and FreeBSD release 6.0 will ship with - it.

- -

A few serious issues with pfsync on SMP have been discovered - since CARP is around and more and more people use it on big iron. - Everything that has been discovered is fixed in HEAD and (if - applicable) MFCed back to RELENG_5. Some functional changes are - undergoing testing right now and will be MFCed in the coming - days.

- -

With the import of if_bridge from Net/OpenBSD we finally have a - bridge implementation that allows for stateful filtering as well as - IPv6 filtering. Please see the respective report.

- - - - Shared lock implementation? - -
- - - Low-overhead performance monitoring for FreeBSD - - - - - Joseph - - Koshy - - - jkoshy@FreeBSD.org - - - - - - Project home page - - - -

Modern CPUs have on-chip performance monitoring counters (PMCs) - that may be used to count low-level hardware events like - instruction retirals, branch mispredictions, and cache misses. PMC - architectures and capabilities vary between CPU vendors and between - CPU generations from the same vendor, making the creation of - portable applications difficult. This project implements a - cross-platform PMC management API for applications, and implements - the infrastructure to "virtualize" and manage these PMCs. The - creation of performance analysis tools that use this infrastructure - is also part of the project's goals.

- -

Work since the last status report:

- -
    -
  • Sampling mode support for P4 and AMD64 PMCs has been - implemented.
  • - -
  • A pmclog(3) API for parsing hwpmc(4) log files has been - added.
  • - -
  • A number of bugs in libpmc(3), hwpmc(4) and pmcstat(8) have - been fixed.
  • -
- -

Future work:

- -
    -
  • Creating user documentation showing a few real-world uses of - the currently available tools.
  • - -
  • Testing, improving the stability of the code, and - characterizing its overheads.
  • - -
  • Implementing P5 PMC support.
  • -
- -
- - - Improve libalias - - - - - Paolo - - Pisati - - - soc-pisati@freebsd.org - - - - - Wiki - page about libalias work. - - - -

My SoC project is about improving libalias and integrating it - with ipfw2, adding nat support into the firewall. Till now I ported - libalias (as a kld) and ng_nat to 4.x and 5.x branches, and I've - already a first working patchset that adds 'nat' action into ipfw. - Next step will be to add a complete syntax to ipfw that will let us - manipulate libalias operations, much like we already do with queue - and pipes for dummynet. In the end the entire work will compile and - work out of the box for 4.x, 5.x and 6.x. More details about the - project and its status are available on wiki page.

- -
- - - TODO list for volunteers - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - - -

Since Google's "Summer of Code" resulted in a lot of interest in - open projects, I'm in the process of compiling a list of nice - projects for volunteers. Unlike Google's SoC those projects aren't - backed with money (but this doesn't means nobody is allowed to - sponsor one of those projects), so we can only guarantee the social - aspects (some "Thank you!" and "That's great!" messages). So far - the list has several entries where the difficulty ranges from - "someone just has to sit down and spend some time on it" up to "we - need a guru for this".

- - - - Merging untaken entries from the SoC list as soon as the - official participants/tasks in the SoC are announced. - - Sending the document to some doc people for review. - - Commit the list. - -
- - - Removing of old basesystem files and directories - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - Patch - - - -

FreeBSD lacks a way to remove old/outdated files and directories - in the basesystem. I have a patch which removes obsolete files in a - safe way (interactively, since only the administrator really knows - if there's a need to keep an old file or not; there's a switch for - batch-processing). This feature may or may not be available for - 6.0-RELEASE, depending on the decision from the Release - Engineering team.

- - - - Respect the NO_* switches and remove those files too. This is - easy to do with the current implementation, but isn't needed to - commit the removal of obsolete files feature. - -
- - - Porting v9 of Intels C/C++ Compiler - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - - -

Intel released version 9 of its C/C++ compiler. Work to port the - x86 version to FreeBSD is in progress as time permits. Porting the - EM64T (amd64) version is on the TODO list too, but is subject to - enough free time and access to appropriate hardware.

- -
- - - Update of the Linux userland infrastructure - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - Emulation - - Mailinglist - - - emulation@FreeBSD.org - - - - - - - -

The cleanup/streamlining and the possibility of overriding the - default Linux base as reported in the last report happened without - major problems. Work on the open tasks hasn't started yet, but is - scheduled to start "soon". If a volunteer wants to spend some hours - on one of the open tasks, he should tell it on the emulation - mailinglist.

- - - - Refactoring the common RPM code in - x11-toolkits/linux-gtk/Makefile into bsd.rpm.mk. - - Determining which up-to-date Linux distribution to use as the - next default Linux base. Important criteria: -
    -
  • RPM based (to be able to use the existing - infrastructure)
  • - -
  • good track record regarding availability of security - fixes
  • - -
  • packages available from several mirror sites
  • - -
  • available for several hardware architectures (e.g. i386, - amd64, sparc64; Note: not all architectures have a working - linuxolator for their native bit with, but as long as there are - no userland bits available, no motivation regarding writing the - kernel bits will arise)
  • -
-
- - Moving the linuxolator userland to an up-to-date version (see - above). -
-
- - - Autotuning of the page queue coloring algorithm - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - Patch - - - -

The VM subsystem has code to reduce the amount of cache - collisions of VM pages. Currently this code needs to be tuned with - a kernel option. I have a patch which changes this to auto-tuning - at boot time. The auto-tuning is MI, the cache size detection is - MD. Cache size detection is currently available for x86/amd64 (on - other systems it uses default values).

- - - - Add cache-detection code for other arches too (Marius told me - how to do this for sparc64). - - Analyze why the cache detection on Athlons doesn't work (no - problems on a P4, but it uses a different code-path). - -
- - - FreeBSD website improvements - - - - - Emily - - Boyd - - - soc-emily@freebsd.org - - - - - - - -

As part of the Google Summer of Code, I'm working on - improvements to the FreeBSD website (including a proposed website - redesign). My mentor for this project is Murray Stokely.

- -
- - - UFSJ -- Journaling for UFS - - - - - Brian - - Wilson - - - polytopes@gmail.com - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - - - -

filesystem. Journaling helps ensure the filesystem's integrity - should the system crash. Journaling eliminates the need for - fsck'ing a filesystem, as the filesystem is never in an - inconsistent state (barring hardware failure). This implementation - is inspired by Darwin's HFS+ filesystem and the SGI XFS filesystem. - This is a Summer of Code project, with Scott Long as the mentor and - Brian Wilson as the developer/mentee. Currently this project is - still in the early stages, but will be in a usable state by - September 1 (the Google Summer of Code completion date).

- - - - Finish making the file system log metadata updates. - - Add facilities to replay the log on dirty file - systems. - - Make snapshots work with journaling. - -
- - - SEBSD - - - - - Yanjun - - Wu - - - yanjun03@ios.cn - - - - - Show - status in wiki, update more frequently. - - - -
    -
  1. Setup a local P4 workspace of SEBSD source and Setup lxr for - TrustedBSD source for studying source code.
  2. - -
  3. Test a simple policy configuration for vsftpd.
  4. - -
  5. Writing a HOWTO document - Getting Started with SEBSD HOWTO - - by deriving the existing - Getting Started with SELinux HOWTO.
  6. -
- -

Thanks Robert Watson and Scott Long for their kind help.

- - - - When writing the document, try to figure out the sebsd - userland utils that need to be ported. - - Test and edit more policies for BSD environment. - -
- - - VFS SMP - - - - - Jeff - - Roberson - - - jeff@freebsd.org - - - - - - - -

FreeBSD's VFS layer has been fine grain locked along with the - FFS filesystem for the FreeBSD 6.0 release. The locking has been - underway for several years, with the project really picking up over - the last 6 months thanks largely to sponsorship provided by Isilon - Systems, Inc. a leading vendor of clustered storage systems. The - project has entered a stabilization phase, with a few bugs being - reported in extreme circumstances while the majority of users have - seen no problems. Tests on a 8 and 16 way machines yield reasonable - parallelization, however, it will be beneficial to do lock - contention analysis once things are fully stable.

- -

For those interested in technical details, there have been a few - relatively significant changes with vnode life-cycle management. - Vnode reference counting and recycling is now no longer an ad-hoc - process involving a variety of flags, a use count and the hold - count. A single hold count is used to track all vnode references - and a destroyed vnode is freed in the context of the caller when - the last ref is lost. The old system would never reclaim memory - used by vnodes and also had pathlogical behavior with unreferenced - vnode caching under pressure. The new system is much simpler than - the old one, however, callers are now required to vhold a vnode - that they lock directly without going through vget to prevent it - from being recycled while they are waiting on a lock. Relying on - 'location stable storage', which is a more strict version of 'type - stable storage' is no longer a valid approach.

- -

Some other side effects include a much simpler and faster nullfs - implementation, an improved buf daemon flushing algorithm which - eliminated high latency that caused audio skipping, and a lots of - minor cleanups and debugging aids.

- -
- - - EuroBSDCon 2005 - Basel - - - - - Information - - - info@eurobsdcon.org - - - - - Homepage - - Call for papers - - - -

The fourth European BSD conference in Basel, Switzerland is a - great opportunity to present new ideas to the community and to meet - some of the developers behind the different BSDs.

- -

The two day conference program (Nov 26 and 27) will be - complemented by a tutorial day preceeding the conference (Nov - 25).

- -

The program committee is looking for tutorial and paper - submissions. For details, please see: The - call for papers - - online.

- -
- - - SMP Network Stack - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - Netperf home - page - - - -

Significant work has occurred over the last few months relating - to the SMP network stack work. A few of the highlights are covered - here at a high level:

- -
    -
  • The UMA(9) per-CPU caches have been modified to use critical - sections instead of mutexes. Recent critical section - optimizations make this a performance win for both UP and SMP - systems. This results in a several percent improvement in a - number of user space benchmarks, and larger improvement for - kernel-only network forwarding and processing benchmarks.
  • - -
  • The malloc(9) allocator has been modified to store statistics - per-CPU instead of using a cross-CPU statistics pool, with each - per-CPU pool now using critical sections to synchronize access. - This results in a measurable performance win, especially on SMP - systems
  • - -
  • The netnatm ATM code is now MPSAFE.
  • - -
  • netipx MPSAFEty has been merged to RELENG_5.
  • - -
  • The netperf cluster has now been expanded to include two - additional quad-CPU systems (one dual dual-core AMD system, one - quad-CPU PIII system).
  • - -
  • libmemsetat(3) (see separate report) now corrects SMP-related - races in the measuring of mbuf allocator statistics, as well as - substantially improving kernel memory monitoring capabilities and - tools.
  • - -
  • A range of locking bug fixes, and general network stack bug - fixes.
  • - -
  • Significant updates to the SMPng web page (still more to - do!).
  • - -
  • Identification of all non-MPSAFE network device drivers, with - ultimatum issued, on freebsd-arch. Quite a bit of new driver - locking work as a result (if_ed, if_de, ...).
  • - -
  • Lots of other stuff.
  • -
- -

In most cases, these changes will appear in FreeBSD 6.0-RELEASE; - some have been, or will be, merged to FreeBSD 5.x.

- -

On-going tasks include:

- -
    -
  • Review and improvement of ifnet locking, such as address - lists and flags.
  • - -
  • Optimization of interface start hand-off.
  • - -
  • Prototyping of queue-oriented packet hand-off in the - stack.
  • - -
  • Performance measurement and analysis.
  • - -
  • Prototype rewrite and simplification of socket locking.
  • -
- -
- - - TrustedBSD SEBSD - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - TrustedBSD/SEBSD - web page - - - -

The TrustedBSD Project has released a new snapshot of "SEBSD", a - port of NSA's SELinux FLASK and Type Enforcement implementation to - FreeBSD based on a late 2005 FreeBSD 6.x snapshot. The SEBSD - distribution has now been updated in Perforce to a recent 6.x - snapshot, and a new distribution will be made available in the near - future.

- -

Work has been performed to merge additional dependencies for - SEBSD back into the base FreeBSD tree, including most recently, - changes to devfs, and System V and POSIX IPC.

- - - - Update to new NSA FLASK implementation, which has improved - MLS support. - - Merge remaining kernel changes to support SEBSD back to the - base FreeBSD CVS repository, including file descriptor labeling and - access control (in contrast to file labeling and access control), - and categorization of kernel privileges. - -
- - - TrustedBSD Audit - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - Wayne - - Salamon - - - wsalmon@FreeBSD.org - - - - trustedbsd-discuss@TrustedBSD.org - - - - - - - - -

In the past few months, significant work has been done relating - to the TrustedBSD audit implementation, including preparatory work - to merge audit into the FreeBSD CVS repository for FreeBSD 6.x. In - particular:

- -
    -
  • The user space components, such as libbsm, include files, and - command line utilities have been broken out into an OpenBSM - distribution in Perforce. Improvements in OpenBSM will be made - available separately for use by projects such as Darwin, and - imported into the contrib area of FreeBSD.
  • - -
  • The system call table format has been updated to include an - audit event identifier for each system call across all hardware - platforms and ABIs (merged), and all system calls have been - assigned event identifiers (not yet merged).
  • - -
  • The audit management daemon has been rewritten to run on - FreeBSD (originally derived from Darwin) using /dev/audit to - track kernel events.
  • - -
  • Many system calls now properly audit their arguments.
  • - -
  • The TrustedBSD audit3 branch has been updated to a recent - 6.x-CURRENT.
  • - -
  • Significant work has gone into synchronizing the audit event - tables between FreeBSD, Darwin, and OpenSolaris to make sure file - formats and events are portable.
  • - -
  • OpenBSM has been adapted to consume and generate - endian-independent event streams.
  • - -
  • OpenBSM documentation has been created.
  • -
- -

The hope is still to provide audit as "experimental" in 6.0; the - primary blocking factor is our awaiting relicensing of the last - remaining audit files from Apple's APSL license to BSDL so that - they can be included in the FreeBSD kernel. This is anticipated to - complete in the near future. Once this is done, the changes can be - merged to CVS, and then MFC'd to RELENG_6. If this is not complete - by 6.0-RELEASE, the work will be merged shortly after the release, - as all ABI-sensitive data structures have been updated as - needed.

- -
- - - libmemstat(3), UMA(9) and malloc(9) statistics - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - - libmemstat(3)-derived tools - - - -

libmemstat(3) provides a user space library API to monitor - kernel memory allocators, currently uma(9) and malloc(9), with the - following benefits:

- -
    -
  • ABI-robust interface making use of accessor functions, in - order to divorce monitoring applications from kernel/user ABI - changes.
  • - -
  • Allocator-independent interfaces, allowing monitoring of - multiple allocators using the same interface.
  • - -
  • CPU-cache awareness, allowing tracking of memory use across - multiple CPUs for allocators aware of caches. Unlike previous - interfaces, libmemstat(3) coalesces per-CPU stats in user space - rather than kernel, and exposes per-CPU stats to interested - applications.
  • - -
  • Ability to track memory types over multiple queries, and - update existing structures, allowing easy tracking of statistics - over time.
  • -
- -

libmemstat(3) and the the appropriate allocator changes for - uma(9) and malloc(9) are currently in HEAD (7-CURRENT), and MFC has - been approved to RELENG_6 for inclusion in 6.0-RELEASE. These - changes may also be backported to 5.x.

- -

Sample applications include memstat(8), an allocator-independent - statistics viewing tool, memtop(8), which provides a top(1)-like - interface for monitoring kernel memory use and active memory types. - None of these are "pretty".

- -

netstat -mb has also been updated to use libmemstat(3) to track - network memory use using uma(9), rather than the less reliable mbuf - allocator statistics interface. As a result, the statistics are now - more reliable on SMP systems (this corrects the bug in which mbuf - statistics sometimes "leaked", even though memory didn't), and more - informative (cache information is now displayed, as well as mbuf - tag information).

- - - - Teach libmemstat(3) to speak libkvm(3) in order to allow - tools linked -lmemstat to interogate kernel core dumps. - - Teach libmemstat(3) to interface with user space malloc and - track malloc allocations for user space applications. - - Update vmstat(8) -m and -z implementations to use - libmemstat(3) instead of the old monitoring interfaces. Code to do - this exists in the sample libmemstat(3) applications. - - Identify how to make streams or the library endian-aware so - that streams dumped from a kernel of alternative endian could be - processed using libmemstat(3) on another system. - - Identify any remaining caching allocators in the kernel, such - as the sfbuf allocator, and teach libmemstat(3) how to interface - with them. - -
-
- diff --git a/en/news/status/report-2005-07-2005-10.xml b/en/news/status/report-2005-07-2005-10.xml deleted file mode 100644 index 0dc29841d0..0000000000 --- a/en/news/status/report-2005-07-2005-10.xml +++ /dev/null @@ -1,2037 +0,0 @@ - - - - - - July-October - - 2005 - - -
- Introduction - -

After a long, exhausting, yet very productive third quarter of 2005 - FreeBSD 6.0 has been released. Many activities were put into the - background in order to make this release the success it has - become.

- -

Nontheless, we received a tremendous amount of reports covering - various projects that either found their way into FreeBSD 6.0 already - or have started to develop in, what is now known as 7-CURRENT. The - EuroBSDCon and the Developer Summit in Basel next week will be a good - opportunity to help some of the ideas herein to take off.

- -

Last round we had the pleasure to introduce our accepted Google - Summer of Code projects. Now, that the summer is over, we are even - more pleased to include reports about the outcome of these projects. - Some already found their way into the tree or the general public - otherwise - most ocularly the new webdesign.

- -

Unfortunately, this publication has been delayed for various - reasons - the before mentioned release of 6.0 being one of them. - Thus, some of the reports might no longer be as up to date as they - were when we received them and we encourage you - even more this time - - to also visit the weblinks to get more recent information.

- -

Thanks again to everyone who submitted reports, and our sincere - apologies for running late this time.

-
- - - soc - - Google summer of code - - - - proj - - Projects - - - - doc - - Documentation - - - - kern - - Kernel - - - - net - - Network infrastructure - - - - - arch - - Architectures - - - - ports - - Ports - - - - vendor - - Vendor / 3rd Party Software - - - - misc - - Miscellaneous - - - - Cronyx/Asterisk - - - - - Roman - - Kurakin - - - rik@FreeBSD.org - - - - - Cronyx WAN - Adapters - - rik's Home Page - - - -

A new netgraph-to-zaptel module that allows to use E1(ISDN PRI) - WAN adapters as an interface card for open source PBX - Asterisk. - All you need is an adapter that able to work in raw phone mode - (like Cronyx Tau-PCI/2E1), eq. without HDLC-like framing and that - has support of Netgraph.

- -
- - - BSDCan - - - - - Dan - - Langille - - - dan@langille.org - - - - - BSDCan - - - -

We are in the process of recruiting new members for the program - committee. If you would like to volunteer before you are recruited, - please contact me.

- -

The dates for 2006 have been announced: May 12-13, 2006. The - venue will be the same as previous events: University of Ottawa. - The prices will not increase from 2005.

- -

Please start thinking about your papers. The call for papers - will go out soon.

- -
- - - Ports Collection - - - - - Mark - - Linimon - - - linimon@FreeBSD.org - - - - - The FreeBSD ports - collection - - FreeBSD - ports unfetchable distfile survey (Bill Fenner's report) - - FreeBSD - ports updated distfile survey (Edwin Groothius' report) - - FreeBSD ports - monitoring system - - The FreeBSD - Ports Management Team - - - -

A great deal of work has gone into the Ports Collection since - the last report in April, much of it behind-the-scenes.

- -

As this report was being written, the 6.0 release was ongoing. - Due to the amount of time that it has taken to get 6.0 through the - beta process and into RC, we have been in ports freeze or slush for - more than two months. Unfortunately this has held back needed work - on the ports infrastructure.

- -

The last major update to bsd.port.mk, in early May, was - coordinated by Kirill Ponomarew added a number of new features and - closed 15 PRs. Another similar set of changes has been tested and - is ready for commit after release.

- -

portmgr welcomed two new members to its team: Erwin Lansing (who - had previously served as secretary, a role in which he is - continuing) and Clement Laforet. Clement is interested in speeding - up the adoption of new changes into the infrastructure, an item I'm - sure that that everyone can support. He promises to bring some - fresh ideas to bear on this, including the revitalization of - devel/portmk as a testing ground for new changes to bsd.port.mk in - which the larger community can help test changes.

- -

The unfetchable distfile survey, which had been non-functional - for quite some time, was revitalized by Bill Fenner, with many new - pages of analysis added to it. Work is still ongoing. As a result - of this analysis, Bill and Mark Linimon eliminated nearly 100 lines - of bogus or outdated sites from bsd.sites.mk alone. They are - continuing to work through many other sites and ports as successive - iterations of the survey reveal more dimensions to the problem. We - still need more help from the larger community (see below).

- -

Edwin Groothius has instituted a similar but slightly different - survey. His program attempts to visit each listed mastersite for - each distfile and determine whether or not a newer version might be - available. The results are stored in a database. This is helping to - automate a function that had been left up to individual maintainers - to look through numerous websites to try to find these updates. The - survey has been hugely (if not universally) popular. Already, - dozens of port updates have been committed as a direct result of - this service.

- -

In addition, portsmon, which had been down due to a machine - change, was moved to portsmon.FreeBSD.org and updated during this - time. Many thanks to Erwin Lansing for providing the loan of this - machine, and Will Andrews for having provided the loan of the - previous incarnation.

- -

Both of the above surveys are now generating periodic email to - ports maintainers advising them of problems. This is in addition to - recurring email from portsmon. The surveys allow individual - maintainers to ask to receive no further email. portsmon does not - currently have this but it needs to be added. Although we have no - doubt the mail can in some cases be annoying (especially given the - fact that there will inevitably be some false positives), the fact - is that these emails have had a direct impact on the quality on the - ports. We ask for patience from the community while each of us - continues to fine-tune the algorithms controlling what email is - generated. (Because of the number of emails these systems generate, - it is impossible to go over every one individually for a sanity - check).

- -

As a result of bounces from the above email, we have also been - resetting maintainers who have become unreachable.

- -

Pav Lucistnik has done a great deal of work on the Porter's - Handbook, including some much needed reshuffling and cleanup. - Expanded sections include Apache and PHP; Configure Scripts; - Dealing With Shared Libraries; Dealing With User Configuration - Files; Handling Empty Directories; Python; and Ruby. In addition, - Edwin Groothius has contributed a section on OPTIONS, and numerous - other sections have been improved by good suggestions from various - other contributors.

- -

A new article, "Maintaining and contributing to the FreeBSD - Ports Collection", has been prepared by Sam Lawrance and has been - reviewed and is ready for commit. This document attempts to codify - the rights and responsibilities of ports maintainers, which until - now had merely been "community lore" as discussed on various - mailing lists.

- -

We continue to add new committers regularly, 8 since the last - report.

- -

The ports collection now contains over 13,500 ports. This is an - increase of over 750 since the last report in April.

- - - - portmgr would like to ask maintainers and committers alike to - go through the status of their ports on the two distfile surveys, - both the one that shows unfetchable current distfiles and the one - that shows possibly updated distfiles. This is an effective way to - quickly help improve our user's perception of the state of the - ports. - - A great deal of progress has been made in cracking down on - ports that install files outside the approved directories and/or do - not deinstall cleanly (see "Extra files not listed in PLIST" on - pointyhat - - ). These ports are now a small minority thanks to the dedicated - efforts of a large number of individuals. - - We still have a large number of PRs that have been assigned - to committers for some time (in fact, they constitute the - majority). portmgr members are now going through this list and - asking each committer to either commit them or release them to the - general pool so that someone else may work on them. In addition, - the existing policies for inactive maintainers (two weeks for - maintainer- timeout on PRs; three months for maintainer reset if no - activity) are going to be much more actively pursued than in the - past, where the policies were more honored in the breach than in - the observance. The goal is to try to bring the Ports Collection as - up-to-date as possible. (While there has been progress on many - fronts, there are still areas where ports are suffering from - bit-rot.) - -
- - - Improve Libalias - - - - - Paolo - - Pisati - - - p.pisati@oltrelinux.com - - - - - - Wiki/Official project site - - - - - -

The project met all the scheduled goals, and following are the - new features implemented in libalias: -

    -
  • integration with IPFW in kernel land
  • - -
  • support for 4.x and 5.x as kld
  • - -
  • converted from a monolithic to a modular architecture, added - the ability to load/unload at runtime support for new protocols - (modules work both in kernel and user land)
  • - -
  • added logging support in kernel land
  • -
- -
- - Fell free to suggest other improvements.

- - - - Test and feedback are welcome - -
- - - FreshPorts - - - - - Dan - - Langille - - - dan@langille.org - - - - - FreshPorts - - - -

I'm in the process of adding personalized newsfeeds to the - website. For each of your Watch Lists, you will also have a news - feed just for that watch list. Any commit to any port in your watch - list will turn up on your newsfeed. This fantastic new feature is - available now for your RSS pleasure at - the BETA site - - . I've also been doing some work in the area of supporting multiple - platforms and architectures. This will allow FreshPorts to - correctly report that a port is broken, for example, on i386, but - not the other platforms. This feature will take note of BROKEN, - FORBIDDEN, and IGNORE for the following architectures: -

    -
  • alpha
  • - -
  • amd64
  • - -
  • i386
  • - -
  • ia64
  • - -
  • sparc64
  • -
- - And the following OSVERSIONS (subject to upgrade as new releases - come along): -
    -
  • 492100
  • - -
  • 504102
  • - -
  • 600033
  • - -
  • 700001
  • -
- - Upcoming changes, in addition to the above, include: -
    -
  1. NOT_FOR_ARCHS
  2. - -
  3. ONLY_FOR_ARCHS
  4. - -
  5. IS_INTERACTIVE
  6. -
- - I've been getting useful help from those on IRC. Thanks.

- - - - Complete the above. - -
- - - Fuse for FreeBSD - - - - - Csaba - - Henk - - - soc-chenk@freebsd.org - - - - - New home page - - - FreeBSD wiki page - - - Download location - - - -

Fuse for FreeBSD is the outcome of my "ssh based networking - filesystem for FreeBSD" SoC project.

- -

The kernel interface for the comprehensive userspace filesystem - API provided by the ( - Fuse project - - ) has been implemented for FreeBSD (6.x and 7.x), under the BSD - license. This has the benefit of opening up the possibility of - porting the rich collection of Fuse based filesystems to - FreeBSD.

- -

Now it's ready for consumption by a broader audience. The - sysutils/fusefs-kmod - - , - sysutils/fusefs-libs - - , - sysutils/fusefs-sshfs - - ports can be expected to be integrated into the FreeBSD ports tree - in the next few days (the ports were created and are maintained by - Anish Mistry, and Simon Barner's careful review also helps a - lot).

- - - - Implement missing features like extended attributes and - attribute/name caching (with timeout). - - Resolve problems with autotools and integrate userspace - modifications into the Fuse codebase. - - Port Fuse based filesystems and language bindings to - FreeBSD. - - Create sysfs (Fuse based filesystem interface to - sysctl). - - Test, test, test among a broad variety of - circumstances. - -
- - - gvinum 'move', 'rename' support - - - - - Chris - - Jones - - - soc-cjones@freebsd.org - - - - - - gvinum 'move', 'rename' wiki - - - -

Support for moving and renaming objects in gvinum was completed - at the end of August 2005. All gvinum objects (drives, subdisks, - plexes, and volumes) can be renamed, and subdisks can be moved from - drive to drive. Also, a man page for gvinum was created.

- - - - Update FreeBSD Handbook chapter on vinum to reflect gvinum. - Slowly in progress, but hopefully done by the end of the year, - workload permitting. - -
- - - Integrated SNMP monitoring - - - - - Philip - - Paeps - - - philip@FreeBSD.org - - - - - Shteryana - - Shopova - - - soc-shteryana@FreeBSD.org - - - - - - - - - - - - -

This summer, we've had the pleasure of having two Google Summer - of Code students hacking on our SNMP monitoring machinery. Victor - worked on implementing the Host Resources, TCP and UDP MIBs in - bsnmpd while Shteryana started on client-side SNMP tools.

- -

With these modules and tools, a FreeBSD installation can be - monitored without having to install any (heavy!) third-party - tools.

- - - - -

While the modules and the tools currently in Perforce are - generally functional, they still need some tidying up (style(9)) - and testing before they can be committed to CVS.

- -

At the time of this writing, the Hostres MIB is pretty much - commit-ready in Perforce (//depot/user/philip/bsnmp/...), the - other modules and tools live in - //depot/projects/soc2005/bsnmp/... They'll be branched for - tidying up and committing "Real Soon Now"[tm]

-
- - Testers are very welcome. :-) Please let us know about any - bugs! -
-
- - - Interface Cleanup - - - - - Anders - - Persson - - - soc-anders@freebsd.org - - - - - - SoC Proposal - - - -

The dependencies to kernel-only datastructures in netstat - (ifnet, etc.) have been removed almost completely (AppleTalk and - IPX still needs work). In order to remove the dependencies, the - debugging features of netstat had to be removed. However, a project - to create a generic, modular 'data structure' examination tool is - ongoing, and the debugging features factor out of netstat have been - migrated to this tool.

- - - - Refactoring of the netstat code, create a modular version in - the spirit of ifconfig. - - Data structure examination tool needs to be completed, - current state is more that of a prototype. - -
- - - UFS Journaling - - - - - Brian - - Wilson - - - polytopes@gmail.com - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - - - -

Scott has been working on inserting journalling hooks into the - ufs and ffs filesystem code. Brian has been balancing school and - redesigning various things that were deemed necessary to update - during the end of the actual SoC project.

- - - - Finish the redesign of the internal block management - code. - - Integration and test of the ffs/ufs hooks and the journaling - code. - - Updating userland tools to be aware of and use the - journal. - - Journal buffer management wiring to VM subsystem a la - XFS. - -
- - - pfSense - - - - - Scott - - Ullrich - - - sullrich@gmail.com - - - - - - - - -

pfSense is a m0n0wall derived operating system platform with - radically different goals such as using Packet Filter, FreeBSD 6, - ALTQ for excellent packet queueing and finally an integrated - package management system for extending the environment with new - features.

- -

Work continues to stabilize pfSense in preparation for the - FreeBSD 6 release. Once FreeBSD 6 is released pfSense will enter - the final beta and release candidate phases in preparation for the - 1.0 release.

- - - - Stabilize installer (cannot load kernel errors after - install) - - Finish outgoing load balancing monitoring - - Fix last minute bugs that turn up - -
- - - launchd(8) for FreeBSD - - - - - R. Tyler - - Ballance - - - tyler@tamu.edu - - - - - Project - Wiki - - - -

In short, launchd can run perfectly fine on FreeBSD, and - combined with launchctl, it can be used to manage daemons through - the launchctl(1) interface. Jobs can be added and managed two ways - as of yet from launchctl(1). Using zarzycki@'s experimental - "submit" command within launchctl(1) or by using my - lame/rudimentary/etc "launcher" format (launchd/launchers/*.launch) - which uses property(3) to parse out three simple, and important - details. The program label, path, and any program flags. Using the - "load" command, one can load the data into launchctl(1) and then - start the processes with the..."start" command. Jobs can be - removed/stopped with the "remove" command. The "limit" command - still throws launchctl(1) into an infinite loop, and yes, I plan on - fixing this.

- -

There are some things that need to be fixed, first off, some - sort of boot time integration, whether as an init-replacement (i.e. - PID 1, a la Mac OS X) or as the first thing started from init, that - kicks all rcng things off. Along with, more importantly, a plist - parser, so we can have full compatibility with Mac OS X's launchd - via Core Foundation.

- -

I'm also trying to get launchd(8) relicensed with the BSD - license, as opposed to the APSL, anybody with tips, or methods for - achieving this goal, contact me at tyler@tamu.edu

- - - - Writing a light-weight plist (non-XML) parser with lex and - yacc. - -
- - - Porting FreeBSD to the Xbox - - - - - Rink - - Springer - - - rink@rink.nu - - - - - Ed - - Schouten - - - ed@fxq.nl - - - - - - - - -

As of 26th July 2005, it is possible to run FreeBSD on your Xbox - with minor patching effort. The framebuffer has initial support; - The USB ports, IDE- and audio controllers are fully supported; the - only part severely lacking now is the lack of support for the - NForce Ethernet controller.

- -

Currently, efforts are focussing on eliminating the XBOX kernel - option and make the port self-detecting; this means the x86 and - xbox kernels will be identical. The goal is to provide native xbox - support in 7-CURRENT.

- -

Futhermore, a porting effort is planned from Linux' GPL-ed - forcedeth.c; not only the Xbox port will benefit from this but also - all NForce motherboard owners. The resulting driver could be - kldload-ed to keep the kernel GPL-free.

- - - - The xbox framebuffer driver should be merged in the VESA - framework, so it can use syscons(4). Assistance on this would be - very welcome! - -
- - - ggtrace - - - - - Ivan - - Voras - - - ivoras@yahoo.com - - - - - - - - -

Ggtrace is "GEOM gate tracer", utility to track I/O requests on - a storage device on FreeBSD. It uses the ggate facility of FreeBSD - to attach to a file or device and produces a device that can be - used for any I/O, including hosting filesystems.

- -

I/O requests are presented in the form of a moving histogram - that can be used to discern which parts of the storage device are - used most often. One use of ggtrace is to analyze how filesystems - arrange and access data on storage devices.

- -

The project is working and usable only on the RELENG_6 - branch.

- -
- - - gjournal - - - - - Ivan - - Voras - - - ivoras@yahoo.com - - - - - gjournal - wiki page - - - -

Gjournal provides GEOM-level journaling and COW capabilities to - storage devices. Unfortunately, it cannot be used as a substitute - for filesystem journaling (fsck is still needed when gjournal - device is used to host filesystems). Development has slowed down, - and the existing code needs much more testing. If there is - continued interest in it, I'll probably split the functionalities - into two projects, one handling COW and one handling the - journaling, in order to make the code cleaner.

- - - - More testing is needed. - -
- - - TCP & IP Routing Optimization Fundraise - - - - - Andre - - Oppermann - - - andre@freebsd.org - - - - - - - - - - -

The fundraise has been very successful and I want to thank - everyone who has pledged their support and tipped the jar. The full - amount plus a little bit more has been raised in a very short - timeframe. More information on the exact amounts and their sponsors - can be found at the first link.

- -

Due to the extended (and unexpected long) code freeze for the - release process of FreeBSD 6.0 (which is very high quality btw.) - I've decided to push back on working full time until the freeze is - lifted. So far I've done some work in the mbuf handling area and - some other netinet cleanups in my local repository.

- -

Once FreeBSD 6.0 is released I resume my work on this project - and many changes and optimizations, as described in the first and - second link, will go into into FreeBSD-current.

- -
- - - TODO list for volunteers - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - - -

The TODO list for volunteers (see the last report for more) is - now under review by some doc@ people.

- -
- - - bridge.c retired - - - - - Max - - Laier - - - mlaier@freebsd.org - - - - - Andrew - - Thompson - - - thompsa@freebsd.org - - - - - - - -

As of September 27, the old bridge(4) implementation has been - removed from HEAD and will not be part of FreeBSD 7 and later. - FreeBSD 6 will serve as transition period. The full functional - replacement if_bridge(4) is now available in FreeBSD 5 (not yet - part of 5.4 however), FreeBSD 6 and -CURRENT. Any problems should - be reported to Andrew Thompson, who is maintaining if_bridge in - FreeBSD.

- - - - Document the change in the handbook and other reference - material. - -
- - - Problem Report Database - - - - - Mark - - Linimon - - - bugmeister_at_freebsd_dot_org - - - - - GNATS - - - -

Due to some good recent commit and cleanup work by both - Alexander Leidinger and Craig Rodrigues, the number of base-system - PRs has stabilized somewhat. The number of incoming ports PRs - continues to accelerate but except during freezes the ports - committers have been battling to commit them as quickly as they - come in. (The graphs very clearly show where the freezes are.) The - net result is that we are holding our own but it takes a great deal - of (mostly unheralded) effort to do so. Thanks are due to a large - number of individuals who are doing this ongoing work.

- -

There is ongoing work to ask committers who have had PRs - assigned to them for a significant period of time, whether they are - still interested in pursuing them or whether they should instead be - reassigned to the pool. This is being done to try to get as many - PRs 'unstuck' as possible to try to help improve our users' - perceptions of the project.

- -

As an experiment, Mark Linimon has been adding 'tags' to many of - the kern and bin PRs, including such things as '[nfs]', '[if_em]', - and so forth. The idea is to try allow searching and browsing based - on these terms so that committers will find it easier to work with - our current PR database. At the moment this is in the experimental - stage, although it is possible for committers to work with them - from the command line on systems with a database installed via - query-pr(1).

- -
- - - Removable interface improvements - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - - - - - - -

This project is an attempt to clean up handling of network - interfaces in order to allow interfaces to be removed reliably. - Current problems include panics if Dummynet is delaying packets to - an interface when it is removed.

- -

I have removed struct ifnet's and layer two common structures - from device driver structures. This will eventually allow them to - be managed properly upon device removal. This code has been - committed and will appear in 6.0. Popular drivers continue to - be fixed. jhb's locking work has identified and corrected many - issues. rwatson has also committed cleanups to the multicast code - which fixed some issues in this area.

- -
- - - OpenBSD dhclient import - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - - - - -

The OpenBSD rewrite of dhclient has been imported, replacing the - ISC dhclient. The OpenBSD client provides better support for - roaming on wireless networks and a simpler model of operation. - Instead of a single dhclient process per system, there is one per - network interface. This instance automatically goes away in the - even of link loss and is restarted via devd when link is - reacquired. To support this change, many aspects of the network - interface configuration process were overhauled.

- -

The current code works well in most circumstances, but more - testing and polishing is needed. A few bugs are being tracked, but - most of them are edge cases.

- -

Work on further interface configuration enhancements is underway - for FreeBSD 7.0.

- -
- - - EuroBSDCon 2005 - Basel - - - - - Information - - - info@eurobsdcon.org - - - - - - - - -

The fourth European BSD conference in Basel, Switzerland is a - great opportunity to present new ideas to the community and to meet - some of the developers behind the different BSDs.

- -

The two day conference program (Nov 26 and 27) will be - complemented by a tutorial day preceeding the conference (Nov - 25).

- -

The FreeBSD developers will hold a DevSummit on Nov 24 and 25, - so several developers will be at the conference.

- -

The program is available for - - Saturday - - and - - Sunday - - providing very interesting FreeBSD talks and topics.

- -

Today more than 160 people from 25 countries have registered for - the conference.

- -
- - - FreeBSD GNOME Project - - - - - Joe Marcus - - Clarke - - - marcus@FreeBSD.org - - - - - FreeBSD GNOME - - Team - - - gnome@FreeBSD.org - - - - - FreeBSD GNOME Project - Homepage - - - -

Since our last status report, we have added a new member to the - team: Jean-Yves Lefort (jylefort). We have even spiced up our - contact - page - - with pictures of ourselves and in some cases, a cute hippo. And our - very own Adam Weinberger (adamw) has been made a GNOME Project - committer heading up the Canadian English translation project.

- -

We have finished the port GNOME 2.12 to FreeBSD. However, due to - the ports slush in preparation for 6.0-RELEASE, the update has not - been merged into the official ports tree. If people are eager to - try out GNOME 2.12 while waiting for the ports tree to fully thaw, - we have - - instructions - - on our website. GNOME 2.12 will be the first FreeBSD GNOME release - not - - to include support for FreeBSD 4.X. While 4.X is still a very - viable release for servers, it lacks many of the features needed - for a Desktop Environment such as GNOME. We do plan to continue - support of the GNOME development platform on 4.X, however. This - includes Glib, GTK+, libgnome, etc. A new porting component will be - introduced with GNOME 2.12 called, ``ltverhack''. This will help - with future upgrades by keeping shared library versions from - needlessly changing.

- -

The FreeBSD GNOME Project is also committed to providing our - users with a solid package experience. To that end, we have - extended our - - Tinderbox - - to build amd64 packages for all supported versions of FreeBSD for - both the production and development releases of the GNOME Desktop. - The development packages are even built with debugging symbols to - better help with reporting problems.

- - - - FreeBSD needs a - HAL - - port. HAL will be vital for both GNOME and KDE in providing FreeBSD - users with a smooth, elegant desktop experience. Once GNOME 2.12 - has been merged into the ports tree, work will begin on making HAL - on FreeBSD a reality. Contact - gnome@FreeBSD.org - - if you are interested in helping. - - We need help with project documentation. In particular, we - need help auditing the - FAQ - - to make sure the content is still relevant, and we are not missing - any key items. If you're interested, please contact - gnome@FreeBSD.org - - . - -
- - - PowerPC Port - - - - - Peter - - Grehan - - - grehan@freebsd.org - - - - - FreeBSD/PPC - Platform page. - - - -

The project has been following the 6.0 release schedule by - producing BETA-* builds and is now up to the RC1 build.

- -

Dario Freni successfully built a FreeSBIE/ppc iso for his - Summer-of-code project.

- -
- - - iSCSI Initiator - - - - - Daniel - - Braniss - - - danny@cs.huji.ac.il - - - - - - - - -

This iSCSI kernel module and its companion control program, are - still under development, but the main parts seem to be working. A - second round of public tests has started.

- - - - login chap authentication - - digest - - network disconnect recovery - -
- - - The Kernel Stress Test Suite - - - - - Peter - - Holm - - - pho@freebsd.org - - - - - - - - -

The current version of the test suite took form in the beginning - of the year after discussions with Jeff Roberson, during a long - period of testing Jeff's VFS SMP work.

- -

At that time, Daniel Seuffert donated a Thunder 7500 - motherboard complete with CPUs, RAM and coolers. This allowed me - to do some serious SMP testing.

- -

Mid July Murray Stokely suggested adding a link from the 6.0 - todo web page to the Stress Test Status Page. At that time there - were a few reoccurring panics that made it hard to test the kernel - for other problems. Numerous people put a lot of hard work in - fixing the panics and livelocks found during the next months. At - the same time others stepped in and ran the test suite on their own - hardware, thus increasing the focus on kernel stability.

- -

As of 6.0, the kernel stress test suite cannot panic the - kernel.

- -
- - - Nsswitch / Caching daemon - - - - - Michael - - Bushkov - - - - - - - - - - - -

The nsswitch / caching daemon project was developed within the - Google's Summer Of Code program. Almost all goals of the project - were achieved. Thanks to Brooks Davis and Jacques Vidrine, who were - my mentors and greatly helped me.

- -

Nsswitch subsystem was extended to support new sources - (services, protocols, rpc, openssh and GT4). The testing of the - Globus Grid Toolkit 4 patch (which adds support for nsswitch to - GT4) is still to be done. For nsswitch to support caching, the - caching daemon was implemented on top of the caching library, which - was also developed during the SoC. The current version of the - daemon uses simple nscd-like configuration file and seems to be - stable. To complete the SoC project, the experimental version of - libc with in-process caching enabled was made. It's benchmarking - will be done in the nearest future.

- -

There were some requests for caching daemon to be able to act - like NSCD (to perform the actual nsswitch lookups by itself), so it - was modified to support this feature. But current implementation - has some restrictions and requires a lot of testing. Right now the - final polishing is being made to the project's sources, so that - they could be added to the CURRENT

- - - - Extend caching daemon to support NSCD functionality - - Test Globus Grid Toolkit 4 patch - - Add support for MAC and audit related configuration files to - the nsswitch - -
- - - FreeBSD Web Site Redesign - - - - - Emily - - Boyd - - - soc-emily@FreeBSD.org - - - - - Murray - - Stokely - - - murray@FreeBSD.org - - - - - Web - - Team - - - freebsd-www@FreeBSD.org - - - - - - - Archived copy of old - site. - - - -

The new website has gone live! Thanks to Emily Boyd for all her - hard work. We still have a lot of work to do to integrate - suggestions that have been made by users since we went live. The - new CSS design makes it much easier to rapidly change the look and - feel of the site, so it is easy to experiment. We're still looking - for more HTML/CSS designers to help us improve the site.

- -
- - - NEWCARD - - - - - Warner - - Losh - - - imp@freebsd.org - - - - - - - -

Due to an email snafu, the June report was not submitted, so - this report covers since the last 6 months.

- -

Summary: The 16-bit part of NEWCARD has been greatly enhanced. - In addition, power control has become interrupt driven. Some - drivers make use of the new functionality.

- -

The pccard layer now exports the CIS for each device that is - present, even if there's no driver for the card or parts of the - card.

- -

The power up and reset sequence is now interrupt driven. This - has eliminated many of the long pauses that the system used to - experience after a card insertion. We can not play glitch-free - audio while inserting or removing a card.

- -

A number of additional cards are recognized by PC Card. In - addition, drivers now can read the CIS for more information about - the card. Drivers have been enhanced to read the CIS for MAC - addresses and the like where appropriate.

- -

The ed driver now attaches the mii bus of the AX88190 and - AX88790 fast ethernet PC Card chips. This allows better status - reporting and increased functionality for PHY chips that need some - help. The ed driver also supports the Tamarack TC5299J chipset - (including attaching its MII bus) now, the only open source OS that - does so (TC5299J cards will work with other open source OS, but - they won't report their status or attach a mii bus).

- -

A number of bugs have been fixed in the pccard or cardbus - drivers. Most of these changes have been merged into the - forthcoming 6.0. Others will be merged after the release.

- - - - ExpressCard laptops have arrived with ExpressCard/54 and - ExpressCard/34 slots. It is unknown the extent of the work - necessary to support them. - - The ISA attachment of cbb needs work to make it fully - functional. - - A CIS parser in userland needs to be written. The pccardc - based CIS parser is OK, but it doesn't handle MFC cards too well. - Ideally the parser would produce output that is compatible with the - linux tool. - - A mechanism for CIS override is needed. We need a tool that - will take an ascii representation of the CIS and produce a binary. - We need a tool that will install the binary into the kernel and - kernel modifications to switch from the CIS that's in the card to - the faked up CIS. - - We need a mechanism for creating pseudo multi-function cards. - Initially, it seems that all we really need is the ability for an - arbitrary driver to add a sio companion, since that covers all the - cases I'm aware of. Resources would need to be 'donated' from the - creating driver to the sio card. - - It would be nice if we could move to a more common CIS - parsing and dispatch. The CardBus side is wide open at the moment - since none of the pci drivers use the CIS information outside of a - few that get their MAC address via a standard interface. - - The ep driver needs work to make the newer ep cards that have - mii bus on them actually probe and attach it. It needs to gain - media support for the non-mii based cards. The 3C1 still needs - work. - - The sn driver needs work to support many of the SMC91Cxxx PC - Card devices. These are typically combination cards that need - special, non-standard initialization. - - Power savings for 16-bit cards can be realized if we power - them up at 3.3V rather than at 5.0V. Not all cards can support - this, but many can and indicate this support in the CIS. Windows - tries the 3.3V configuration entries before the 5.0V ones. We - should do the same. - - Most of the changes that have been made to the pccard and - cardbus layers can be merged back into RELENG_5. - -
- - - OpenBSD packet filter - pf - - - - - Max - - Laier - - - mlaier@freebsd.org - - - - - - - -

Futher improvements have been made to pfsync to make it behave - well in SMP scenarios. All bug fixes have been MFCed to RELENG_5 - where applicable. A couple of bugfixes and feature improvements - have been imported via OpenBSD (originally suggested by FreeBSD - users).

- -

As described in the last report, FreeBSD 6.0 and future RELENG_6 - releases will be based on OpenBSD 3.7. Newer code will be imported - as soon as 6.0 has settled down a bit.

- -
- - - BSD Installer - - - - - Andrew - - Turner - - - soc-andrew@FreeBSD.org - - - - - - - - - - -

By the end of August I managed to modify the release building - process to build a live CD that loads the front and backends. It - could install all the distfiles, install the ports tree and had - minimal support to install and uninstall packages.

- -

Since the end of the Summer of Code I have worked to integrate - the new Lua backend. This has been successful, with it now past the - point of the BSDINSTALLER-BETA-1 release. It can install the - distfiles but not the ports tree or packages yet.

- -
- - - Low-overhead performance monitoring for FreeBSD - - - - - Joseph - - Koshy - - - jkoshy@FreeBSD.org - - - - - - Project home page - - - -

This projects implements a kernel module (hwpmc(4)), an - application programming interface (pmc(3)) and a few simple - applications (pmcstat(8) and pmccontrol(8)) for measuring system - performance using event monitoring hardware in modern CPUs.

- -

The last three months have been spent in bug fixing and in - tweaking the code. A few more minor features and loose ends remain - to be taken care of. Once these are done, I hope to get started on - a graphical performance analyser.

- -
- - - Realtime POSIX signal - - - - - David - - Xu - - - davidxu@FreeBSD.org - - - - -

The FreeBSD kernel is powerful, but it still lacks some realtime - POSIX facilities, for example, sigqueue. Most of the code is ready, - and I am testing it.

- - - - POSIX timer, timer_xxx syscalls - -
- - - SNMP Monitoring - - - - - Harti - - Brandt - - - harti@freebsd.org - - - - - Philip - - Paeps - - - philip@freebsd.org - - - - - Victor - - Cruceru - - - soc-victor@freebsd.org - - - - - - FreeBSD wiki - - - -

New MIBs are implmented for the BSNMP agent:

- -
    -
  1. - HOST-RESOURCES-MIB - - ( - - http://www.ietf.org/rfc/rfc2790.txt - - ). Philip is going to submit the code into the CVS - repository.
  2. - -
  3. - TCP-MIB with combined IPv4 & IPv6 support - - ( - - http://www.ietf.org/rfc/rfc4022.txt - - ). This new TCP-MIB is 100% backward compatible with the old one - (v4 only). It adds a clear distinction between active and passive - tcp endpoints and for each endpoint info about the process it - belongs to.
  4. - -
  5. - UDP-MIB with combined IPv4 & IPv6 support - - ( - - http://www.ietf.org/rfc/rfc4113.txt - - ). This new UDP-MIB is 100% backward compatible with the old one - (v4 only) and it adds multiple instances support for the UDP - endpoints and for each endpoint info about the processes using - it.
  6. -
- - - - For HOST-RESOURCES-MIB we are going to add support for more - detailed memory stats based of libmemstat(3) - - The rest of the IPv6 MIBs. - - FreeBSD enterprise MIBs for supporting SNMP configuration - (via SNMP SETs) for FreeBSD. - -
- - - csup: cvs mode support - - - - - Christoph - - Mathys - - - cmathys@bluewin.ch - - - - - - The wikipage with details about my SoC-project - - csup project page - - - -

During the "Summer of Code" I worked on csup (a rewrite of CVSup - in C). It already supported checkout-mode, so my task was to - implement support for cvs-mode. The biggest part of the project was - to implement support for rcs-files. As "byproducts" I also wrote - the necessary code to create nodes/hardlinks and to update files - using the rsync-algorithm. For what I know, the code works fine, - but errorhandling is practically inexistent.

- - - - Errors should be properly handled - - Support to get fixups - - The hard part to support rcs file updates is done, but there - is no checksum, some options are not honored and the performance - could be improved - -
- - - Sound subsystem improvements - - - - - Multimedia - - Mailinglist - - - multimedia@FreeBSD.org - - - - - Ariff - - Abdullah - - - skywizard@MyBSD.org.my - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - - -

Recently a lot of fixes, specially in handling format / rate - conversion and general stability was committed to -current. This - include fixes for most LOR's and new features (software volume - handling for soundcards without volume handling in hardware and the - possibility to switch to spdif).

- -

A lot of effort was expended by Ariff (and other people) to come up - with those improvements. For this reason Ariff was "punished" with a - commit bit, so he is able to commit further improvements on his - own.

- -

This work is not integrated into 6.0-RELEASE because of some - lose ends (see 'sndctl' below).

- -

You can help by looking at - - sound related PR's in GNATS - - and making follow-up's which tell us if a problem still persists or - if a PR can be closed because the bug is fixed. Also feel free to - submit patches for anything on the TODO list below.

- - - - Update manual pages to reflect new features. - - Fix driver specific issues (via, t4dwave, maestro). - - Make all drivers MPSAFE. - - Rewrite some parts (e.g. a new mixer subsystem with OSS - compatibility). - - sndctl(1): tool to control non-mixer parts of the sound - system (e.g. spdif switching, virtual-3D effects) by an user - (instead of the sysctl approach in -current); pcmplay(1), - pcmrec(1), pcmutil(1). - - Plugable FEEDER infrastructure. For ease of debugging various - feeder stuff and/or as userland library and test suite. - - Support for new hardware (envy24, Intel HDA). - - Performance enhancement (via 'slave'-channels, changes are - under review)? - - Closer compatibility with OSS, especially for the upcoming - OSS v4. - - Close a lot of PR's. - - Document the sound system in the - - FreeBSD Architecture Handbook - - . - -
- - - Ports Tinderbox - - - - - Joe Marcus - - Clarke - - - marcus@FreeBSD.org - - - - - Tinderbox - - List - - - tinderbox-list@marcuscom.com - - - - - Tinderbox Homepage - - - -

The Ports Tinderbox is a packaged system for building FreeBSD - ports in a clean environment. It can be used to test new ports, - updates to existing ports, or simply as a package building engine. - Tinderbox uses the same underlying code that the official FreeBSD - package build cluster, pointyhat, uses. So if a port builds under - Tinderbox, it is guaranteed to build on pointyhat.

- -

More and more FreeBSD committers and ports maintainers are - starting to use Tinderbox. We just released version 2.1.0 which - added much-requested PostgreSQL support as well as fixed many bugs. - We expect a 2.1.1 release soon with some additional bug fixes.

- -

With the 2.1.0 release of Tinderbox, we have branched the code - base so that we can focus on larger features in our HEAD branch - while still producing stable releases on a more frequent basis. The - biggest new feature planned for Tinderbox 3.0 is clustering support - which is being spearheaded by Ade Lovett (ade).

- - - - At this point, we really need help with documentation. Work - has begun on creating man pages for the various Tinderbox commands, - but we need help to churn them out at as faster rate. If you have - strong mdoc fu, and interested in helping us out, please contact - marcus@marcuscom.com - - . - -
-
- diff --git a/en/news/status/report-2005-10-2005-12.xml b/en/news/status/report-2005-10-2005-12.xml deleted file mode 100644 index 500e0d3494..0000000000 --- a/en/news/status/report-2005-10-2005-12.xml +++ /dev/null @@ -1,1370 +0,0 @@ - - - - - - October-December - - 2005 - - -
- Introduction - -

This report is about the rather quiet last quarter of 2005, with - the release of FreeBSD 6.0 and the holiday season things evolved in - the background. Nontheless, most exciting projects hit the tree (or - are going to very soon).

- -

Upcoming events, such as the release of FreeBSD 6.1/5.5 and the - third BSDCan conference with a big developer summit promise to - provide a busier start in 2006. The foundation for upcoming - development, however, are the projects that are described herein.

- -

We hope that you find interesting projects to look at or work on. - The next status report collection will be April 7 2006. We are - looking forward to your report then.

- -

Thanks again to everyone who submitted reports, and thanks to Brad - Davis who stepped up for an extensive spelling and grammar review. - Enjoy reading!

-
- - - proj - - Projects - - - - doc - - Documentation - - - - team - - FreeBSD team reports - - - - kern - - Kernel - - - - net - - Network infrastructure - - - - bin - - Userland programs - - - - arch - - Architectures - - - - ports - - Ports - - - - vendor - - Vendor / 3rd Party Software - - - - misc - - Miscellaneous - - - - jemalloc - - - - - Jason - - Evans - - - jasone@FreeBSD.org - - - - - - - -

libc's malloc implementation has been replaced with an - implementation that is designed to scale well for multi-threaded - applications running on multi-processor systems. This is - accomplished by creating multiple allocation arenas that are - independent of each other, and permanently assigning threads to - these arenas. In the common case, threads do not access the same - allocator arena at the same time, which reduces contention and - cache sloshing.

- -

Single-threaded application performance is approximately - equivalent to what it was with phkmalloc, but for multi-threaded - applications that make heavy use of malloc, the performance - difference can be huge (orders of magnitude).

- -

As with phkmalloc, the new malloc implementation supports - runtime configuration via the MALLOC_OPTIONS environment variable. - See the malloc(3) manpage for details on supported options, as well - as more information about the allocator's architecture.

- -
- - - OpenBSD dhclient - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - - - - -

The OpenBSD rewrite of dhclient has been imported, replacing the - ISC dhclient. The OpenBSD client provides better support for - roaming on wireless networks and a simpler model of operation. - Instead of a single dhclient process per system, there is one per - network interface. This instance automatically goes away in the - even of link loss and is restarted via devd when link is - reacquired. To support this change, many aspects of the network - interface configuration process were overhauled.

- -

Support for adding aliases to DHCP configured interfaces has - been committed to CURRENT and will be merged before 6.1-RELEASE. - Soon work will begin to merge changes from OpenBSD that have taken - place since the initial import.

- -

Work on further interface configuration enhancements is underway - for FreeBSD 7.0.

- -
- - - FAST_IPSEC Upgrade - - - - - George - - Neville-Neil - - - gnn@freebsd.org - - - - - Bjoern A. - - Zeeb - - - bz@freebsd.org - - - - - - - -

Currently splitting out the rest of the PF_KEY data-structures - from the key database. This will mean the user level applications - and the kernel will not share datastructures and that they can, - hopefully, advance on their own without being in lockstep.

- - - - Calculate diffs between Kame IPv4 version of IPSec and - FAST_IPSEC and upgrade FAST to the latest standards. - - Add IPv6 support to FAST_IPSEC. - -
- - - FreeBSD list of projects and ideas for volunteers (TODO list - for volunteers) - - - - - Joel - - Dahl - - - joel@FreeBSD.org - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - - - -

The "TODO list for volunteers" is now committed as the "FreeBSD - list of projects and ideas for volunteers". So far the interest in - the list is high and some volunteers already took the opportunity - to start tackling some of the entries.

- -

Unfortunately the FreeBSD project does not have enough human - resources to provide a technical contact for every entry. - Interested volunteers should not be afraid to try to come up with a - solution for an entry without a technical contact. The people on - the hackers and current mailing list are typically very helpful - regarding answering specific questions (as long as they know the - answer...).

- -

We are looking forward to hear about new ideas, people willing - to be technical contacts for generic topics (e.g. USB) or specific - entries (already existing or newly created), suggestions for - existing entries or completion reports for (parts of) an entry.

- - - - Add more ideas. - - Find more technical contacts. - -
- - - KAME Project Status Report - - - - - SUZUKI - - Shinsuke - - - suz@FreeBSD.org - - - - - KAME Project Homepage - - - - - - - - - -

Most of the latest KAME code has been merged to 7-current and - 6-stable, to prepare for the project conclusion in March 2006. For - the same reason, we moved some ports applications (security/racoon, - net/pim6sd, net/pim6dd, net/dhcp6) from KAME to - sourceforge.net.

- -

Some of the items (e.g. IGMPv3/MLDv2, Mobile-IPv6/NEMO, SCTP, - DCCP, ISATAP) are not merged yet from the latest KAME code for - several reasons. Other projects will continue to merge their - work.

- - - - remove __P() macros - - set net.inet6.ip6.kame_version to a more appropriate date - :-) - - update src/sys/netinet6/README - -
- - - Sound subsystem improvements - - - - - Ariff - - Abdullah - - - ariff@FreeBSD.org - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - Multimedia - - Mailinglist - - - multimedia@FreeBSD.org - - - - - Patches for - RELENG_5. - - The FreeBSD - Project Ideas List. - - - -

A lot of changes have taken place in the sound system since the - last status report. They range from less hickups and distortion by - disk accesses and/or driver bugs to new and improved features - (software volume control implemented for soundcards which do not - have hardware volume control). Additionally a new driver - (snd_atiixp) has seen the light and a lot of problem reports were - fixed.

- -

Most of those changes and the changes mentioned in the previous - status report are already merged to RELENG_6 and will be part of - 6.1-RELEASE.

- - - - Have a look at the sound related entries on the ideas - list. - - Rewrite some parts (e.g. a new mixer subsystem with OSS - compatibility). - - sndctl(1): tool to control non-mixer parts of the sound - system (e.g. spdif switching, virtual-3D effects) by an user - (instead of the sysctl approach in -current); pcmplay(1), - pcmrec(1), pcmutil(1). - - Plugable FEEDER infrastructure. For ease of debugging various - feeder stuff and/or as userland library and test suite. - - Support for new hardware (envy24, Intel HDA). - - Performance enhancement (via 'slave'-channels). - - Closer compatibility with OSS, especially for the upcoming - OSS v4. - -
- - - Problem Report Database - - - - - Mark - - Linimon - - - bugmeister_at_freebsd_dot_org - - - - - GNATS - - - -

The experiment to add 'tags' to many of the kern and related - PRs, including such things as '[nfs]', '[fxp]', and so forth, - continues. In addition, PRs with patches have been more - consistently tagged with '[patch]'. Two new periodic reports based - on both functional tags and PRs with patches have been added, with - the goal of making these PRs more visible.

- -
- - - Ports Collection - - - - - Mark - - Linimon - - - linimon@FreeBSD.org - - - - - The FreeBSD ports - collection - - FreeBSD - ports unfetchable distfile survey (Bill Fenner's report) - - FreeBSD - ports updated distfile survey (Edwin Groothius' report) - - FreeBSD ports - monitoring system - - The FreeBSD - Ports Management Team - - marcuscom - tinderbox - - - -

During this time, the number of ports PRs briefly dipped below - 500 -- a number not seen since late 2000, when there were 4000 - ports instead of our new total of over 14,000 ports. This is due to - the hard work of a large number of individuals, including pav, - edwin, mnag, garga, and many others. Congratulations folks! Some of - this was due to more aggressively committing PRs where the - maintainer had not responded within the timeout period. Although - controversial, this new policy seems to be succeeding in its goal - of improving the Ports Collection.

- -

A new file, ports/KNOBS, was added by ahze to help bring some - order in the chaos that had been the OPTIONS namespace.

- -

dougb has changed the way that rc.d works in -HEAD to work more - like the base rc.d scripts. We are hoping that this change will - make ports maintenance easier in the future. However, in the - meantime a few bugs have been introduced (which we intend to have - fixed by the time 6.1 is released). While this regression is - unfortunate, it was decided that now was the best time to try to - make this change rather than waiting for 7.0. We hope our users can - be patient with us in the interim.

- -

Work continues to improve the marcuscom ports tinderbox, with - new features added by marcus, aDe, and edwin in particular. Several - ports committers are now running their own copies to test ports - changes.

- -

The www.FreeBSD.org/ports page, and the portmgr web pages, were - reworked as well.

- -

We have added 4 new committers since the last report.

- - - - Progress has been made in cracking down on ports that do not - correctly install when LOCALBASE is not /usr/local, but some ports - remain. - - portmgr would like to remind committers that PRs for their - ports should be handled (either committed or marked 'suspended' or - 'analyzed') within the two week timeout period. In this way other - committers do not have to invoke the maintainer timeout and things - will work more smoothly. - -
- - - Early Binding Updates and Credit-Based Authorization for the - Kame-Shisa Mobile IPv6 Software - - - - - Christian - - Vogt - - - chvogt@tm.uka.de - - - - - Download patch - here. - - - [1] - - - [2] - - - -

Based on the Kame-Shisa Mobile IPv6 Software for FreeBSD 5.4, we - implemented the performance optimization "Early Binding Updates" - and "Credit-Based Authorization". The combined optimizations - facilitate significant reductions in handoff delay without - compromising protocol security [1][2].

- -
- - - A Comprehensive Delay Analysis for Reactive and Proactive - Handoffs with Mobile IPv6 Route Optimization - - - - - Christian - - Vogt - - - chvogt@tm.uka.de - - - - - - Download document here. - - - -

Optimizations to reduce handoff delays inherent in Mobile IPv6 - Route Optimization as well as IPv6 router discovery, address - configuration, and movement detection have so far been mostly - considered on an individual basis. This document evaluates three - integrated solutions for improved handoff experience in - surroundings with different preconditions: reactive handoffs with - unmodified routers, reactive handoffs with router support, and - movement anticipation and proactive handoff management.

- -
- - - FreeBSD Security Officer and Security Team - - - - - Security - - Officer - - - security-officer@FreeBSD.org - - - - - Security - - Team - - - security-team@FreeBSD.org - - - - - - - - - - - - -

This report covers the period July 2005 - January 2006, since - the FreeBSD Security Team did not submit a status report for July - - October 2005.

- -

In August 2005, the long-time Security Officer, Jacques Vidrine, - stepped down and was replaced by Colin Percival. Jacques remains - with the team as Security Officer Emeritus, and the team thanks him - for all his work over the past four years.

- -

Also in August 2005, Dag-Erling C. Smørgrav was replaced by - Simon L. Nielsen as Deputy Security Officer. In addition, Tom - Rhodes and Guido van Rooij retired from the team in September 2005 - and January 2006 respectively in order to devote their time to - other parts of the FreeBSD project. The current Security Team - membership is published on the web site.

- -

In the time since the last status report, ten security - advisories have been issued (five in 2005, five in 2006) concerning - problems in the base system of FreeBSD; of these, four problems - were in "contributed" code, while six were in code maintained - within FreeBSD. The Vulnerabilities and Exposures Markup Language - (VuXML) document has continued to be updated by the Security Team - and the Ports Committers documenting new vulnerabilities in the - FreeBSD Ports Collection; since the last status report, 117 new - entries have been added, bringing the total up to 636.

- -

The following FreeBSD releases are supported by the FreeBSD - Security Team: FreeBSD 4.10, FreeBSD 4.11, FreeBSD 5.3, FreeBSD - 5.4, and FreeBSD 6.0. Their respective End of Life dates are listed - on the web site.

- -
- - - FreeSBIE - - - - - FreeSBIE - - staff - - - staff@freesbie.org - - - - - - - - - - - - -

Development is going on after the complete rewrite of the - toolkit. There are many plugins available and we're testing a new - implementation of unionfs for 6.x. Since it's a bit unstable, it - won't be included in the release anyway. Developers hope to enter - the BETA state on February 1st, to release an -RC image around - February 15th and the RELEASE around March 1st. We need more people - to test the images we provide. Torrents for them are available at - torrent.freesbie.org - - .

- - - - A new BETA Release, based on 6-STABLE, is available for - testing. - -
- - - variant symlinks - - - - - Andrey - - Elsukov - - - bu7cher@yandex.ru - - - - - - - - -

The port of DragonFly's variant symlinks ( - - project ideas - - ) to FreeBSD. Variant symlinks is a dynamic symbolic link - implementation. Source file of a variant symlink may contain one or - more variable names. Each of these variable names is enclosed in - braces and preceded by a dollar sign in the style of variable - references in sh(1). Whenever a variant symlink is followed, each - variable found in source file is replaced by its associated value. - In this manner, a variant symlink may resolve to different paths - based on context.

- - - - Document a new system calls. - - More testing. - - Write the rc.d script for the variant symlinks - initialization. - -
- - - BSDCan 2006 - - - - - Dan - - Langille - - - dan@langille.org - - - - - - - - -

We are well into the process of selecting the talks for BSDCan - 2006. Our new - program - committee - - has a hard selection task over the new few weeks. The deadline for - the - Call For Papers - - has passed, but it's not too late to submit a talk. Please see the - above URL for details. After the success of the - Work in - Progress last year - - , we are going to do it again this year. If you are working on - something you'd like to tell the world about, considering giving a - 5 minute talk at BSDCan. The - registration - prices for BSDCan 2006 - - will be the same as they were for - 2005 - - . We will be again in the SITE building at University of Ottawa and - you'll have lots of opportunity to meet with people from all over - the world. Be sure to make your travel plans now and don't miss out - on the biggest BSD event this year: BSDCan 2006.

- - - - We're looking for volunteers to help out just before and - during the conference. Contact Dan at the above address. - - If you have a talk you'd like to present, contact Dan at the - above address. - -
- - - FreshPorts - - - - - Dan - - Langille - - - dan@langille.org - - - - - - - - -

- FreshPorts - - recently moved to a new webserver. This should speed things up - considerably.

- -

You can read all about the new hardware on the recently - introduced - FreshPorts Blog - - . This blog will include technical discussions about ports and the - problems they present with respect to FreshPorts. Site - announcements will be posted there. As bugs are found, they will be - listed, as well as their fixes.

- -

Supporting multiple platforms and architectures is still in the - development stage. Lack of time is affecting progress.

- -

A fix for virtual ports is in the works. I'm also going to - implement more caching to speed things up. If interested in - discussing the options there, please get involved in the blog.

- -
- - - The FreeBSD Dutch Documentation Project - - - - - Remko - - Lodder - - - remko@FreeBSD.org - - - - - Siebrand - - Mazeland - - - s.mazeland@xs4all.nl - - - - - FreeBSD - released handbook - - Preview - documentation - - Preview website - - - -

The FreeBSD Dutch Documentation Project is an ongoing project, - focussed on translating the English documentation and website to - the Dutch language. Currently we are almost done with the FreeBSD - Handbook and started the initial translation of the FreeBSD - Website. We are always looking for people to help out, if you can - help, please contact Siebrand or me so that we can divide the work - amongst us.

- -

Recent publications: -
- - Recently the Printing and the Serial Communications chapters were - added to the FreeBSD Dutch Handbook.

- -

Recently started items: -
- - We started with the translation of the PPP and SLIP chapter and the - translation of the website.

- - - - Translate the final parts of the FreeBSD handbook. - - Translate the FreeBSD Website - -
- - - FreeBSD/xbox - - - - - Rink - - Springer - - - rink@FreeBSD.org - - - - - FreeBSD/xbox project page. - - - -

FreeBSD/xbox support is nearing completion. Patches are - available for nve(4) ethernet support, as well as a - syscons(4)-capable console. I am working to integrate these in - CURRENT, a backport to 6.x is planned too.

- -

Work is under way to support X.Org as well; people with more - detailed knowledge of X.Org are welcome to assist.

- - - - Enable framebuffer support in X.Org - - Figure out a way to use mfsroots without using - loader(8) - -
- - - LSI MegaRAID improvements - - - - - Scott - - Long - - - scottl@freebsd.org - - - - - Doug - - Ambrisko - - - ambrisko@freebsd.org - - - - - - - -

Major work has gone into improving both the performance of the - LSI MegaRAID (amr) driver, and in adding Linux compatiblity - support. SMPng locking was added in Oct 2005 as well as a number of - performance improvements. The result is 138% performance - improvement in some local transaction tests.

- -

Throughout 2005 a lot of work has gone into adding Linux - compatibility to the driver. It is now possible to run many of the - LSI-provided management apps for Linux under FreeBSD. Both this - feature and the performance improvements are in the 7-CURRENT - development branch of FreeBSD and are scheduled to be backported in - time for the FreeBSD 6.1 release.

- -
- - - E1000 driver improvements - - - - - Scott - - Long - - - scottl@freebsd.org - - - - - Andre - - Opperman - - - andre@freebsd.org - - - - - - - -

In an effort to solve the 'interrupt aliasing' problem that - plagues many motherboards under FreeBSD, I modified the Intel e1000 - network driver (if_em) to use a combination of fast interrupts and - taskqueues. This technique avoids interrupt threads entirely, which - in turn avoids triggering the aliasing problem in the Intel APIC. - The result is that the driver now handles and masks interrupts - immediately, and a private taskqueue is then scheduled to run to - process the link events and rx/tx events. A side effect of this - asynchronous processing is that it acts much as traditional polling - does, in that the amount of work done in the taskqueue can be - controlled, and the taskqueue rescheduled to process work at a - later time. This leads to the driver having the low-latency - benefits of interrupts and the workload segmentation of polling, - all without complicated heuristics. Several users have reported - that the driver can handle higher loads than traditional polling - without deadlocks.

- -

Along with this work, I modified the SMPng locking in the driver - so that no lock is required for the RX path. Since this path is - already implicitly serialized by the interrupt and/or taskqueue - and/or polling handler (all of which are exclusive to each other), - there was no need for extra synchronization. This has two benefits. - The first is reduction in processing overhead to unlock and lock - the driver for every RX packet, and significant reduction in - contention of the driver lock when transmitting and receiving - packets at the same time. I believe that it is further possible to - run the TX-complete path without a lock, further reducing overhead - and contention for high transmit loads. The reduced contention also - greatly benefitted the fast-forward bridging code in FreeBSD, with - up to 25% performance improvement seen, as well as lower CPU - utilization.

- -

The work can be found in FreeBSD 7-CURRENT for now. There are - still some rough edges relating to falling back to traditional - ithread and polling behavior, and I do not intend to merge the - changes back to FreeBSD 6.x until these are resolved. I also hope - to extend the INTR_FAST+taskqueue model into a general framework - for doing Mac OSX style filter interrupts. The work in the if_em - driver can also be extended to other high-performance network - drivers such as if_bge and if_ti. Any help with investigating these - topics is welcomed.

- -
- - - Release Engineering Status Report - - - - - RE - - Team - - - re@freebsd.org - - - - - - - - - - -

Another very busy year for the FreeBSD Release Engineering Team. - Recognizing the problems, both technical and emotional, surrounding - the FreeBSD 5.x releases, our primary focus was in getting the bugs - out of FreeBSD 6.0 and getting it released. We succeeded at that - quite well, and the 6.0 release on Nov 18 was a huge success for - the project. Many thanks to all of the developers who put in - countless hours fixing bugs and improving performance, and to the - users who helped find, fix, and verify bugs.

- -

Moving forward to 2006, we plan on doing a joint release of - FreeBSD 5.5 and 6.1 in late March. The 5.5 release will mark the - end of active FreeBSD 5.x development and releases, and is intended - to help users who have not yet switched to FreeBSD 6. It consists - primarily of bug fixes and minor improvements. FreeBSD 6.1 will be - an upgrade to 6.0 and will include new drivers, better performance - in certain areas, as well as bug fixes. We expect to release - FreeBSD 6.2 and 6.3 later in 2006.

- -
- - - New Networking Features in FreeBSD 6.0 - - - - - Andre - - Oppermann - - - andre@freebsd.org - - - - - - Presentation - - - Paper - - EuroBSDCon 05 - - - -

FreeBSD 6 has evolved drastically in the development branch - since FreeBSD 5.3 and especially so in the network area. The - presentation and paper give an in-depth overview of all network - stack related enhancements, changes and new code with a narrative - on their rationale.

- -
- - - Optimizing the FreeBSD IP and TCP Stack - - - - - Andre - - Oppermann - - - andre@freebsd.org - - - - - - Presentation - - - Paper - - EuroBSDCon 05 - - - TCP/IP Optimization Fundraiser 2005 - - - -

FreeBSD has gained fine grained locking in the network stack - throughout the 5.x-RELEASE series cumulating in 6.0-RELEASE. - Hardware architecture and performance characteristics have evolved - significantly since various BSD networking subsystems have been - designed and implemented. This paper gives a detailed look into the - implementation and design changes in FreeBSD 7-CURRENT to extract - the maximum network performance from the underlying hardware.

- -

Sponsored by: TCP/IP Optimization Fundraiser 2005

- -
- - - TCP/IP Optimization Fundraiser Status - - - - - Andre - - Oppermann - - - andre@freebsd.org - - - - - - TCP/IP Optimization Fundraiser 2005 - - - em(4) driver commit - - - Previous Status Report - - - -

The fundraiser has been very successful and I want to thank - everyone who has pledged their support and tipped the jar. The full - amount plus a little bit more has been raised in a very short - timeframe. More information on the exact amounts and their sponsors - can be found at the first link.

- -

After the delays on this project caused by the FreeBSD 6.0 - Release cycle code freeze work has picked up and a paper was - written and a presentation held on "Optimizing the FreeBSD IP and - TCP Stack" for EuroBSDCon 05 on November 27th. See related status - report under that title.

- -

From December 21st to January 11th I received access to a - calibrated Agilent N2X gigabit tester and traffic generator. Stock - FreeBSD 7-current was tested and profiled extensively in this - timeframe. A first proof of concept optimization was developed in - cooperation with Scott Long. It involved converting the Intel - Gigabit ethernet em(4) driver to make use of fast interrupt - handlers, taskqueues and lockless RX ring handling. This improved - the performance from 570kpps to 750kpps, a 25% improvement, with IP - fastforwarding enabled.

- - - - A large number of profiles and measurements was taken and a - detailed report on the performance characteristics and remaining - bottlenecks is under preparation. - - Further optimizations and new features described on the - Optimization Fundraiser page. - -
- - - Bt878 Audio Driver (aka FusionHDTV 5 Lite) - - - - - John-Mark - - Gurney - - - jmg@FreeBSD.org - - - - - - Perforce source repository - - - -

Basic audio capture is working. All of the parameters are set by - userland, while the RISC program generation is by kernel. No real - audio has been captured as there are no drivers for the tuner yet. - Someone with a real Bt878 NTSC card that is supported by bktr(4) - could use this to capture audio w/o using the sound card.

- -

The real goal of this driver is to make HD capture possible with - the DViCO FusionHDTV5 Lite card that I have. I have some of the - documentation that I need, but I'm still missing two key docs. The - docs for the LGDT3303 ATSC/8VSB/QAM demodulator chip and a block - diagram of the board showing which GPIO lines go where and how the - chips are interconnected. DViCO has been responsive in - acknowledging my emails, but they have yet to produced any data - besides pointing me to the Linux driver (which is difficult to - figure out stuff by).

- - - - Complete basic capture driver. - - Make the bktr(4) drive cleanly attach to the card, and - possibly add support for analog capture. - -
- - - SysKonnect/Marvell Yukon device driver - - - - - Karim - - Jamal - - - support@syskonnect.de - - - - - - - - - - -

This project provides support for SysKonnect's SK-98xx, - SK-95xx,SK-9Exx and SK-9Sxx PCI/PCI-Express Gigabit Ethernet - adapters via the yk(4) driver, as well as Marvell's Yukon LOM - Gigabit Ethernet controllers via the myk(4) driver. Driver source - has been made available to selected members of the FreeBSD - project.

- -
- - - FreeBSD on Xen 3.0 - - - - - Kip - - Macy - - - kip.macy@gmail.com - - - - - current - status - - - -

Full domU support in p4 branch of -CURRENT, except suspend / - restore. Dom0 work is in progress. Scott Long is working on xenbus - integration with newbus. After newbus integration it will go into - CVS. I hope to see it MFCed to RELENG_6 so it will be available for - 6.1.

- - - - Port the backend drivers from Linux. - - Port the domain management tools from Linux. - - Add multiboot support to loader(8) to support it booting - xen. - - SMP, x86_64, and PAE support. - -
-
diff --git a/en/news/status/report-2006-01-2006-03.xml b/en/news/status/report-2006-01-2006-03.xml deleted file mode 100644 index eaeaec8e12..0000000000 --- a/en/news/status/report-2006-01-2006-03.xml +++ /dev/null @@ -1,1467 +0,0 @@ - - - - - - January-March - - 2006 - - -
- Introduction - -

The highlights of this quarters report certainly include the - availability of native Java binaries thanks to the - FreeBSD Foundation - - , as well as progress has been made with Xen support and Sun's - Ultrasparc T1. Futhermore we are looking forward to FreeBSD 6.1 and - TrustedBSD audit support has been imported into FreeBSD 7-CURRENT. - All in all, a very exiting start to 2006.

- -

In just under a month the developers will be gathering at - BSDCan 2006 - - for, FreeBSD Dev Summit, a two day meeting of FreeBSD developers. - Once again the - BSDCan schedule - - is filled with many interesting talks.

- -

We hope you enjoy reading and look forward to hear from you for - the next round. Consult the list of - projects and - ideas - - for ways to get involved. The submission date for the second quarter - reports will be July, 7th 2006.

- -

Thanks to everybody who submitted a report and to Brad Davis, who - joined the Status Report team, for proof reading.

-
- - - proj - - Projects - - - - net - - Network infrastructure - - - - kern - - Kernel - - - - doc - - Documentation - - - - bin - - Userland programs - - - - arch - - Architectures - - - - ports - - Ports - - - - vendor - - Vendor / 3rd Party Software - - - - misc - - Miscellaneous - - - - FreeBSD Security Officer and Security Team - - - - - Security - - Officer - - - security-officer@FreeBSD.org - - - - - Security - - Team - - - security-team@FreeBSD.org - - - - - - - - - - - - -

In March 2006, Marcus Alves Grando, George Neville-Neil, and - Philip Paeps joined the FreeBSD Security Team. The current Security - Team membership is published on the web site.

- -

In the time since the last status report, eight security - advisories have been issued concerning problems in the base system - of FreeBSD; of these, three problems were in "contributed" code, - while five were in code maintained within FreeBSD. The - Vulnerabilities and Exposures Markup Language (VuXML) document has - continued to be updated by the Security Team and the Ports - Committers documenting new vulnerabilities in the FreeBSD Ports - Collection; since the last status report, 50 new entries have been - added, bringing the total up to 686.

- -

The following FreeBSD releases are supported by the FreeBSD - Security Team: FreeBSD 4.10, FreeBSD 4.11, FreeBSD 5.3, FreeBSD - 5.4, and FreeBSD 6.0. Upon their release, FreeBSD 5.5 and FreeBSD - 6.1 will also be supported. The respective End of Life dates of - supported releases are listed on the web site; of particular note, - FreeBSD 4.10 and FreeBSD 5.4 will cease to be supported at the end - of May 2006.

- -
- - - FreeBSD NFS Status Report - - - - - Chuck - - Lever - - - cel@FreeBSD.org - - - - -

Support for NFS in FreeBSD received a boost this quarter as a - kernel developer from Network Appliance has volunteered to help - with the clients. Chuck Lever is now a src committer, mentored by - Mike Silbersack. Mohan Srinivasan and Jim Rees have ended their - apprenticeships and are now full committers. Mohan continues his - effort to make the NFSv2/3 client SMP safe. He expects to make the - changes available for review soon.

- -

FreeBSD gained presence at the annual NFS interoperability event - known as Connectathon. Rick Macklem's FreeBSD NFSv4 server is - pretty stable now and available via anonymous ftp. NFSv4.1 features - are not a part of it yet and are not likely to happen until at - least the end of 2006. Contact rick@snowhite.cis.uoguelph.ca for - details.

- -
- - - BSDCan - - - - - Dan - - Langille - - - dan@langille.org - - - - - - - - -

The - schedule - - for BSDCan 2006 demonstrates just how strong and popular BSDCan has - become in a very short time. Three concurrent streams of talks make - sure that there is something for everyone. We provide high quality - talks at very affordable - prices - - .

- -

BSDCan is the biggest BSD event of 2006. Ask others who attended - in past years how much they enjoyed their time in Ottawa. Ask them - who they met, who they talked to, the contacts they made, the - information they learned.

- -

Remember to bring your wife/husband/spouse/etc because we will - have things for them to do while you are attending the conference. - Ottawa is a fantastic tourist destination.

- -

See you at BSDCan 2006!

- - - - - Works in - Progress - - - if you want to talk about your project for 5 minutes, this is - your chance. Get in touch with us ASAP to reserve your spot. - - We're looking for volunteers to help out just before and - during the conference. Contact Dan at the above address. - -
- - - Ports Collection - - - - - Mark - - Linimon - - - linimon@FreeBSD.org - - - - - The FreeBSD Ports - Collection - - - Contributing to the FreeBSD Ports Collection - - FreeBSD - ports unfetchable distfile survey (Bill Fenner's report) - - FreeBSD - ports updated distfile survey (Edwin Groothius' report) - - FreeBSD ports - monitoring system - - The FreeBSD - Ports Management Team - - marcuscom - tinderbox - - - -

During this time, the number of ports PRs rose dramatically from - its impressive low number seen late last quarter. This was due to - the holidays, the freeze for the 5.5/6.1 release cycle, and the - aggressive work several submitters have been doing to correct - long-standing problems with stale distfiles, stale WWW sites, port - that only work on i386, and so forth. Over 200 new ports have also - been added. The statistics do not truly reflect the state of the - Ports Collection, which continues to improve despite the increased - number of ports.

- -

We now have 3 people who are qualified to run the 5-exp - regression tests. Due to this, we were able to run several cycles, - resulting in a series of commits that retired more than 3 dozen - portmgr PRs. There were a few snags during one commit due to some - unintended consequences, but the breakage was fixed in less than - one day. Notable changes include the addition of physical category - net-p2p and virtual categories hamradio and rubygems. Once 5.5 and - 6.1 are released, portmgr hopes to be able to run regression tests - more often.

- -

We have added 5 new committers since the last report.

- - - - We need help getting back to our modern low of 500 - PRs. - - We have over 4,000 unmaintained ports (see, for instance, - - the list on portsmon - - ). We are always looking for dedicated volunteers to adopt at least - a few ports. - -
- - - OpenBSD dhclient - - - - - Brooks - - Davis - - - brooks@FreeBSD.org - - - - - Sam - - Leffler - - - sam@FreeBSD.org - - - - - - - -

All dhclient changes in HEAD have been merged to 6-STABLE for - 6.1-RELEASE. New patches currently in testing include startup - script support for fully asynchronous starting of dhclient which - eliminates the wait for link during startup and support for sending - the system hostname to the server when non is specified.

- -
- - - FAST_IPSEC Upgrade - - - - - George - - Neville-Neil - - - gnn@FreeBSD.org - - - - - Bjoern A. - - Zeeb - - - bz@FreeBSD.org - - - - - - - - -

Split out of PF_KEY code between the kernel and user space has - been completed and committed to CVS.

- -

The diff between Kame IPv4 based IPSec and FAST_IPSEC IPv4 did - not show any glaring issues.

- -

Moving on to making IPv6 work in FAST_IPSEC including being able - to run the kernel with the following variations: -

    -
  • FAST_IPSEC in v4 only
  • - -
  • KAME IPv6 and IPSec
  • - -
  • KAME IPv6 and FAST_IPSEC
  • -
-

- - - - Any patches for FAST_IPSEC, KAME IPsec of either variant (v4 - or v6) should be forwarded to bz@ and gnn@. - - Build a better TAHI. TAHI, the test framework, will not be - maintained and is not the easiest system to use and understand. A - better test harness is possible and is necessary for other - networking projects as well. Contact gnn@ if you have time to work - on this as he has some code and ideas to start from. - -
- - - FreeSBIE - - - - - FreeSBIE - - Staff - - - staff@FreeSBIE.org - - - - - FreeSBIE - - Mailing List - - - freesbie@gufi.org - - - - - Website - - ML - Subscribe Page - - - -

The project is alive and plans to release an ISO image of - FreeSBIE 2.0 based on FreeBSD 6.1-RELEASE few day after the same - has been release. FreeSBIE 2.0 will be available for i386 and amd64 - archs. Tests images can be download via BitTorrent from - torrent.freesbie.org - - .

- - - - Test "test ISO images" for both amd64 and i386 - - Suggest packages to be added to the ISO image. - - Suggestions needed for Xfce and fluxbox look. - - Suggestions needed for applications' configuration - files. - -
- - - HPLIP (Full HP Printer and MFD support) - - - - - Anish - - Mistry - - - amistry@am-productions.biz - - - - - HPLIP FreeBSD - Information - - Official Site - - - -

A preliminary version of HP's hplip software for their printers - and multi-function devices has been ported. This allows viewing of - the status informantion from the printer. Such as ink levels, error - messages, and queue information. If you have an Officejet you can - also fax and scan. Photocard and Copies functionality is - untested.

- - - - General Testing - - Photocard Testing - - Various ugen fixes - - Fix Officejet Panel Display - - Run hpiod and hpssd as unprivileged users - - Banish the Linuxisms in the Makefile - - Fix "Make Copies" - - Automatically Setup Scanner - -
- - - Low-overhead performance monitoring for FreeBSD - - - - - Joseph - - Koshy - - - jkoshy@FreeBSD.org - - - - - - Project home page - - - -

This projects implements a kernel module (hwpmc(4)), an - application programming interface (pmc(3)) and a few simple - applications (pmcstat(8) and pmccontrol(8)) for measuring system - performance using event monitoring hardware in modern CPUs.

- -

New features since the last status report:

- -
    -
  • Support for profiling dynamically loaded kernel and user - objects has been added.
  • - -
  • pmcstat(8) now supports command-line syntax for logging to a - network socket.
  • -
- -
- - - FreeBSD list of projects and ideas for volunteers - - - - - Joel - - Dahl - - - joel@FreeBSD.org - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - - - -

The FreeBSD list of projects and ideas for volunteers is doing - well. Several items were picked up by volunteers and have found - their way into the tree. Others are under review or in - progress.

- -

We are looking forward to hear about new ideas, people willing - to be technical contacts for generic topics (e.g. USB) or specific - entries (already existing or newly created), suggestions for - existing entries or completion reports for (parts of) an entry.

- - - - Add more ideas. - - Find more technical contacts. - - Find people willing to review/test implementations of - (somewhat) finished items. - -
- - - Java Binaries - - - - - Deb - - Goodkin - - - deb@freebsd.org - - - - - - FreeBSD Foundation Java Homepage - - - -

The FreeBSD Foundation released official certified JDK and JRE - 1.5 binaries for the official FreeBSD 5.4 and FreeBSD 6.0 releases - on the i386 platform. -
- - We were able to accomplish this by hiring a contractor to run the - Sun certification tests and fixing the problems found. This could - not have been completed without the support from the BSD Java - Team.

- -

We provided financial support for Java development and funded - the certification process. We spent a significant amount of time - and money on legal issues from contract and NDA creation for our - contractor to license agreements from Sun and creating our own for - the binaries. We worked with OEMs who would like to use the - binaries, but needed to understand what they need to do legally to - be able to redistribute the binaries. This is an area we are still - working on at our end. We are waiting for a letter from Sun to put - on our website to OEMs. We are also in the process of updating our - OEM license agreement. This should be available by mid-April.

- -

We have received a positive response from the FreeBSD community - regarding the release of the binaries. We received a few requests - to support the FreeBSD 6.1/amd64 platform. We have decided to move - forward and support this too. We currently are working with a - contractor to provide Java support on 5.5/i386, 6.1/i386, and - 6.1/amd64. Once 5.5 and 6.1 are released, we'll update the FreeBSD - Foundation website with the Java status. Regular updates to the - website will continue.

- -
- - - Update of the linux infrastructure in the Ports - Collection - - - - - Emulation - - Mailinglist - - - freebsd-emulation@FreeBSD.org - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - Boris - - Samorodov - - - bsam@ipt.ru - - - - - - - -

Work is underway to use the new linux_base-fc3 as the new - default linux base. Since there's some infrastructure work to do - before it can be made the new default, this will not happen before - the release of FreeBSD 5.5 and 6.1. At the same time a new X.org - based linux port will replace the outdated XFree86 based linux X11 - port.

- -

The use of fc3 instead of fc4 or fc5 is to make sure we have a - smooth transition with as less as possible breakage. We already use - several fc3 RPM's with the current default of linux_base-8, so - there should be not much problems to solve.

- - - - Mark all old linux_base ports as DEPRECATED (after making fc3 - the default linux_base port). - - Have a look at a linux-dri version which works with the - update to X.org. - - When everything is switched to fc3 and everything works at - least as good as before, have a look at porting fc4 or fc5. - -
- - - Mouse Driver Framework - - - - - Jordan - - Sissel - - - jls@csh.rit.edu - - - - - mouse - framework project - - - -

The current mouse system is a mess with moused, psm, ums, and - mse supporting, individually, multiple kinds of mice. This project - aims to move all driver support into moused modules in userland. In - addition, many features lacking in the existing mouse - infrastructure are being added. It is my hope that this new system - will make both using mice and writing drivers easier down the - road.

- - - - Testing. Contact if interested. - -
- - - SMPng Network Stack - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - FreeBSD - Netperf Project - - - -

The FreeBSD netperf project has recently focused on revising the - socket and protocol control block reference counts to define and - enforce reference and memory management invariants, allowing the - removal of unnecessary checks, error handling, and locking. Use of - global pcbinfo locks has now been eliminated from the socket send - and receive paths into all network protocols, including netipx, - netnatm, netatalk, netinet, netinet6, netgraph, and others. Checks - have generally been replaced with assertions; so_pcb is now - guaranteed to be non-NULL. This should improve performance by - reducing lock contention and unnecessary checks, as well as - facilitate future work to eliminate long holding of pcbinfo locks - in the TCP input path through proper reference counting for pcbs. - These changes have been committed to FreeBSD 7-CURRENT, and will be - merged in a few months once they have stabilized.

- -
- - - pfSense - - - - - Scott - - Ullrich - - - sullrich@gmail.com - - - - - pfSense website - - - -

pfSense continues to grow and fix bugs. Since the last report we - have grown to 14 developers working part and full time on bringing - pfSense to 1.0. Beta 3 is scheduled for release on 4/15/2006.

- - - - Fix remaining bugs listed in CVSTrac - - Fine tune existing code - -
- - - Symbol Versioning - - - - - Daniel - - Eischen - - - deischen@FreeBSD.org - - - - - - Symbol Versioning in FreeBSD. - - Symbol - Versioning in Solaris. - - - Symbol Versioning in Linux - - - -

Symbol versioning libraries allows us to maintain binary - compatibility without bumping library version numbers. Recently, - symbol versioning for libc, libpthread, libthread_db, and libm was - committed to -current. It is disabled by default, and can be - enabled by adding "SYMVER_ENABLED=true" to/etc/make.conf. A final - version bump for libc and other affected libraries (perhaps all) - should be done before enabling this by default.

- - - - Determining the impact on ports - portmgr (Kris) is running a - portbuild to identify any problems. I am working to resolve the few - problems that were found. - - Making our linker link to libc and libpthread (when using - (-pthread)) when building shared libraries. This is needed so that - symbol version dependencies are recorded in the shared library. I - think kan@ is working on this.??? - - Identify and symbol version any other libraries that should - be symbol versioned. If anyone has any suggestions, I'm all - ears. - -
- - - Status Report ATA project - - - - - Søren - - Schmidt - - - sos@FreeBSD.org - - - - -

The last months has mostly been about stabilizing ATA for - 6.1-RELEASE, and adding support for new chipsets. On that front - JMicron has raised the bar for vendors as they have provided not - only hardware but documentation on both their hardware and their - software RAID implementation, making it a breeze to add support for - their, by the way excellent, products. Other vendors can join in - here. :) Otherwise I'm always in the need for any amount of time or - means to get it if nothing else.

- -

ATA has grown a USB backend so that fx. flash keys and external - HD/CD/DVD drives can be used directly without atapicam/CAM etc. - This is very handy on small (embedded) systems where resources are - limited and kernel space at a premium. burncd(8) is in the process - of being updated so it will support this along with SATA ATAPI - devices, and if time permits adding DVD support.

- -

The next months will be used to (hopefully) work on getting ATA - to work properly on systems with > 4G of memory and utilize the - 64bit addressing of controllers that support it. RAID5 support for - ataraid is on the list together with hardening of the RAID - subsystem to help keep data alive and well.

- -
- - - BSDInstaller - - - - - Andrew - - Turner - - - soc-andrew@FreeBSD.org - - - - - - - - -

The BSDInstaller integration work has progressed since the - previous report. The backend has been changed to the new Lua - version. This is to ensure the version we use will be maintained. - The release Makefile now uses the Lua package rather the local copy - in Perforce. Ports are also being created for the required modules - to remove the need to bring Lua into the base.

- - - - Create a port for all the Lua modules required - -
- - - libpkg - Package management library - - - - - Andrew - - Turner - - - andrew@fubar.geek.nz - - - - - - - - - - -

Libpkg is a package management library using libarchive to - extract the package files. It is able to download, install and get - a list of installed packages. Work has also been started on - implementing the package tools from the base system. Most of - pkg_info has been implemented and pkg_add has been started.

- - - - Support for more command line options in pkg_info and - pkg_add - - Creating a package - - Test pkg_add works as expected for all implemented command - line options - -
- - - Bridge STP Improvements - - - - - Andrew - - Thompson - - - thompsa@FreeBSD.org - - - - -

Work has been started to implement the Rapid Spanning Tree - Protocol which supersedes STP. RSTP has a much faster link failover - time of around one second compared to 30-60 seconds for STP, this - is very important on modern networks. Some progress has been made - but a RSTP capable switch will be needed soon to proceed, see - - http://www.freebsd.org/donations/wantlist.html - - .

- - - - Donation of a RSTP switch - -
- - - TMPFS (Filesystem) for FreeBSD - - - - - Rohit - - Jalan - - - rohitj@purpe.com - - - - - Project Home - - I/O - Benchmarks - - - -

Three betas have been released so far. The code is operational - and seems to be stable but it is not MPSAFE yet.

- -

The second and third betas used different mechanisms for data - I/O. (sfbuf vs. kernel_map+vacache) and at present I am in the - process on selecting one mechanism over the other. Your opinion is - solicited.

- -
- - - Sound subsystem improvements - - - - - Multimedia - - Mailinglist - - - freebsd-multimedia@FreeBSD.org - - - - - Ariff - - Abdullah - - - ariff@FreeBSD.org - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - Start of Intel HDA support. - - - -

A lot of fixes (bugs, LORs, panics) and improvements - (performance, compatibility, a new driver, 24/32bit samples - support, ...) have been merged to RELENG_6. FreeBSD 6.1 is the - first release which ships with the much improved sound system. - Additionally there's work underway: -

    -
  • To make the sound system API endianess clean. This should - make it easier (for a developer) to make the sound drivers usable - on all architectures.
  • - -
  • To rework character device allocation. This way someone can - choose a specific channel, e.g. /dev/dsp0.r0 or /dev/dsp0.p0 to - access the first recording or play channel respectively). With - the "current" sound system (as in FreeBSD 6.1) this is not - possible (accessing /dev/dsp0.0 and /dev/dsp0.1 may give you the - first or the second channel, the number is just an enumeration, - not a channel-chooser).
  • - -
  • To add multi-channel support/processing.
  • - -
  • To add Intel HDA support. There's already some code to look - at (see URL referenced above), but is far from usable for an - enduser (we need some programmers, but no testers ATM, since - there are no user testable parts yet). Interested volunteers - should contact the multimedia mailinglist.
  • -
- - Parts of this work may be already in 6.1, but there's still a good - portion which isn't even in -current as of this writing.

- - - - Style(9) cleanup, survive against WARNS=2 (at least). - - Have a look at the sound related entries on the ideas - list. - - Rewrite some parts (e.g. a new mixer subsystem with OSS - compatibility). - - sndctl(1): tool to control non-mixer parts of the sound - system (e.g. spdif switching, virtual-3D effects) by an user - (instead of the sysctl approach in -current); pcmplay(1), - pcmrec(1), pcmutil(1). - - Plugable FEEDER infrastructure. For ease of debugging various - feeder stuff and/or as userland library and test suite. - - Closer compatibility with OSS, especially for the upcoming - OSS v4. - -
- - - Fundraising for FreeBSD security development - - - - - Colin - - Percival - - - cperciva@FreeBSD.org - - - - - - - - -

Since 2003, I have introduced the (now quite widely used) - FreeBSD Update and Portsnap tools, but rarely had time to make - improvements or add requested features. Consequently, on March - 30th, I sent email to the the freebsd-hackers, freebsd-security, - and freebsd-announce lists announcing that I was seeking funding to - allow me to spend the summer working full-time on these and my role - as FreeBSD Security Officer. Assuming that some cheques arrive as - expected, I have reached my donation target and will start work at - the beginning of May.

- - - - The work which I'm aiming to do is listed at the URL - above. - -
- - - FreeBSD on Xen 3.0 - - - - - Scott - - Long - - - scottl@FreeBSD.org - - - - - Kip - - Macy - - - kmacy@FreeBSD.org - - - - - - - -

We had hoped to finish a prototype of Xen DomU and possible Dom0 - in time for FreeBSD 6.1. The primary work was focused on bringing - Xen into the FreeBSD 'newbus' framework. Unfortunately, an - architectural problem in FreeBSD has stopped us. Xen relies on - message passing between to child and parent domains to communicate - device configuration, and this message passing requires that tsleep - and wakeup work early in boot. That doesn't seem to be the case, - and it's unclear what it would take to make it work. Without the - newbus work, it's hard to complete the Dom0 code, and impossible to - support Xen 3.0 features like domain suspension.

- - - - Make tsleep and wakeup work during early boot - - Continue DomU newbus work - - Continue Dom0 work - -
- - - TrustedBSD Audit - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - trustedbsd-audit@TrustedBSD.org - - - - - TrustedBSD Audit - Web Page - - - -

In the past three months, the TrustedBSD CAPP audit - implementation has been merged to the FreeBSD 7-CURRENT development - tree in CVS, and the groundwork has been laid for a merge to 6.X. - OpenBSM, a BSD-licensed implementation of Sun's Basic Security - Module (BSM) API and file format, as well as extensions to support - intrusion detect applications. New features included support for - audit pipes, a pseudo-device that provides a live audit record - trail interface for intrusion detection applications, and an audit - filter daemon that allows plug-in modules to monitor live - events.

- - - - Complete audit coverage of non-native system call ABIs, some - more recent base system calls. - - Integrate OpenBSM 1.0 alpha 6, which includes auditfilterd - and the audit filter API. - -
- - - TrustedBSD OpenBSM - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - trustedbsd-audit@TrustedBSD.org - - - - - TrustedBSD OpenBSM Web - Page - - - -

OpenBSM is a BSD-licensed implementation of Sun's Basic Security - Module (BSM) API and file format, based on Apple's Darwin - implementation. OpenBSM 1.0 alpha 5 is now available, and includes - significant bugfixes, documentation, and feature enhancements over - previous releases, including 64-bit token support, - endian-independent operation, improved memory management, and bug - fixes resulting from the static analysis tools provided by Coverity - and FlexeLint. Recent versions are now built and configured using - autoconf and automake, and have been built and tested with FreeBSD, - Mac OS X, and Linux.

- - - - Complete OpenBSM file format validation test suite. - - Finalize audit filter API. - - Complete file format documentation; record documentation for - new record types associated with Mac OS X, FreeBSD, and Linux - specific events not present in documented Solaris record - format. - -
- - - ARM Support for TS-7200 - - - - - John-Mark - - Gurney - - - jmg@FreeBSD.org - - - - - - TS-7200 Board - - - Perforce Code Location - - FreeBSD/arm - TS-7200 dmesg output - - - -

This is just an update to note that TS-7200 is building and - running with a recent -current.

- -

I have been working on getting FreeBSD/arm running on the - TS-7200. So far the board boots, and has somewhat working ethernet - (some unexplained packet loss). I can netboot from a FreeBSD/i386 - machine, and I can also mount msdosfs's on CF.

- - - - Figuring out why some small packets transmit with error (if - someone can get Technologic Systems to pay attention to me and this - issue, that'd be great!) - - EP93xx identification information to properly attach various - onboard devices - -
- - - Ultrasparc T1 support - - - - - Kip - - Macy - - - kmacy@FreeBSD.org - - - - - John - - Gurney - - - jmg@FreeBSD.org - - - - - T1 - processor and hypervisor documentation. - - TODO list - - - -

FreeBSD has been ported the T1, Sun's newest processor. FreeBSD - currently runs multi-user SMP. JMG is actively working on improving - device support.

- -

The port has taken several weeks longer than initially - anticipated as the majority of the current sparc64 port could not - be re-used.

- -
- - - OpenBSD packet filter - pf - - - - - Max - - Laier - - - mlaier@FreeBSD.org - - - - - - - -

Work towards importing the upcoming OpenBSD 3.9 version of pf is - starting slowly. There are a couple of infrastructural changes - (e.g. interface groups) that need to be imported beforehand. This - work is in the final stage of progress.

- -

A couple of bugfixes have happend since the last report and will - be available in FreeBSD 6.1/5.5. pf users are strongly encouraged - to upgrade to RELENG_6 as the version present in RELENG_5 is - collecting dust.

- -
-
- diff --git a/en/news/status/report-2006-04-2006-06.xml b/en/news/status/report-2006-04-2006-06.xml deleted file mode 100644 index a91ab24623..0000000000 --- a/en/news/status/report-2006-04-2006-06.xml +++ /dev/null @@ -1,2141 +0,0 @@ - - - - - - - April-June - - 2006 - - -
- Introduction - -

With the release of FreeBSD 5.5 and FreeBSD 6.1, the second - quarter of 2006 has been productive. Google is sponsoring 14 students - to work on FreeBSD as part of their Summer of Code Program (most of - which already submitted a report for elaboration on their - projects).

- -

Sun's open-source software is starting to make its way into - FreeBSD as a port of DTrace is nearing completion and a port to the - UltraSparc T1 processor (which gives a great push to the ongoing SMP - efforts). Having a powerful debugging tool combined with a CPU that - can run up to 32 concurrent threads helps to identify scalability - issues.

- -

BSDCan 2006 was yet again a smashing success and much was covered - in the 2-day developer summit. As a product of the conference, a new - focus on FreeBSD for the embedded sector has started. Various ARM - boards are targeted, a MIPS32 port is gearing up and people are - looking for other interesting platforms to port FreeBSD to. - Preparation for the EuroBSDCon (in Milan, Italy) on November has - already issued a call for papers.

- -

In addition, a lot of spring cleaning is taking place in the - network stack. After conclusion of the KAME project, IPv6 code - integration has been refocused and a fully locked port of SCTP is in - the final stage of integration. Of course, all this goes without - noting all the progress made with the other network projects.

- -

Please read below for more detailed news on the projects that - happened in FreeBSD during the last three months. If you are - interested in helping, consider the "Open Tasks lists" provided with - some reports. In addition we would like to point you at the - list of projects and - ideas for volunteers - - and hope to receive a status report from you next time.

- -

Thanks to all reporters for your excellent work and timing! Enjoy - reading.

-
- - - soc - - Google summer of code - - - - proj - - Projects - - - - net - - Network infrastructure - - - - kern - - Kernel - - - - docs - - Documentation - - - - bin - - Userland programs - - - - arch - - Architectures - - - - ports - - Ports - - - - vendor - - Vendor / 3rd Party Software - - - - misc - - Miscellaneous - - - - BSDCan - - - - - Dan - - Langille - - - dan@langille.org - - - - - BSDCan - - - -

- BSDCan 2006 - - continues to impress. Again this year, we had a good collection of - talks from a wide range of speakers. In all, we had over 200 people - from 14 different countries.

- -

Our sponsorship pool continues to grow. This year we had - sponsorship from: -

- -
- - The - - t-shirts - - were very popular, with all of them going in very short time. Of - course, it helped that this year they were free, courtesy of - PARSE.

- -

The 2007 planning has already begun and we look forward to - another popular and successful event.

- -

My thanks to the 2006 program committee, the speakers, the - volunteers, the sponsors, and, of course, the attendees.

- -

See you at BSDCan 2007.

- -
- - - Release Engineering - - - - - Release Engineering Team - - - re@FreeBSD.org - - - - - - - - - - - - -

The release engineering (RE) team announced the availability of - FreeBSD 5.5 and 6.1, both in May 2006. FreeBSD 5.5 is the last - planned release from the RELENG_5 branch in CVS. For the most part, - its main features consist of bugfixes, security patches, and minor - updates. We encourage users to move towards the 6.x series of - releases whenever practical. FreeBSD 6.1 is the latest of the - releases to come from the RELENG_6 branch in CVS. It includes - (among many other things) improved support for WiFi devices, - additional network and disk controller drivers, and a number of - fixes for filesystem stability. The next release to be issued from - this branch will be FreeBSD 6.2, which is currently scheduled for - September 2006.

- -

The RE team is currently in a ``between releases'' mode. Current - activities include working with security-team@ on some errata fixes - for the RELENG_6_1 branch and producing snapshots of HEAD and - RELENG_6 at the start of each month.

- -

Several personnel changes have taken place recently. Scott Long - has stepped down from his position on the RE team; we thank him for - his considerable efforts over the past four years. In his place, - Ken Smith has taken over the role of lead release engineer. Bruce - A. Mah has rejoined the RE team after a two-year sabbatical.

- -
- - - Giant-Less USB framework - - - - - Hans Petter - - Sirevaag Selasky - - - hselasky@c2i.net - - - - - - Current files - - Easy to - install tarballs - - - -

For some time now I have been working on converting the existing - USB device drivers to my new and mutex enabled USB API. I have - converted "ulpt", "ums", "uhid", "ukbd", "ugen", "uaudio", and a - few others. Around 10 USB device drivers are left to convert. Most - of these are network device drivers.

- -

At the present moment I am working on getting scatter and - gathering support working for all USB host controllers. Scatter and - gathering means that one allocates PAGE_SIZE bytes of memory at a - time, and then fills these memory blocks up as much as possible - with USB host controller structures and buffers. This should solve - problems allocating DMA-able memory when the system memory becomes - fragmented.

- - - - If anyone wants to help convert the remaining USB device - drivers, please drop me an e-mail. - -
- - - SSE2 Kernel support - - - - - Attilio - - Rao - - - attilio@freebsd.org - - - - - Project - details - - - Ongoing development - - - -

Some - FPU system - - and - kernel memcpy/copyin/copyout - - changes have been performed. In particular, a per-CPU save area has - been introduced (protected with an interlock) in order to assure a - stable saving mechanism. - copyout/copyin - - have changed in order to use vectorised version of - memcpy - - and an xmm version of memcpy has been provided.

- - - - Benchmarks on different versions of xmm copy, in particular - showing differences between UP and SMP architectures (evaluating - possibility to add block prefetch, non-temporal hints usage, - etc.) - - Modifying npxdna trap handler in order to recognise xmm - environment usage and replace fxsave with 8-movdqa - -
- - - BSNMP Bridge module - - - - - Shteryana - - Shopova - - - shteryana@FreeBSD.org - - - - - - P4 workspace - - Wiki - page - - - -

As part of my SoC 2006 project I am working on implementing a - BRIDGE monitoring module for FreeBSD's BSNMP daemon. Initial - prototyping is done and some kernel changes are coming to be able - to access all needed data. In addition to IETF RFC 4188, which was - designed for monitoring a single bridge, this snmp module will - support monitoring of multiple bridge devices as supported by - FreeBSD.

- - - - Finish kernel changes and the code for the snmp - module. - - Testing. - -
- - - DTrace - - - - - John - - Birrell - - - jb@freebsd.org - - - - - - - - -

Anonymous enablings now work. There is a new option in the boot - loader menu to load the DTrace modules and trace the kernel boot - process.

- -

Sun Microsystems has been very supportive of the FreeBSD port - and has generously provided a Sun Fire T2000 server to allow Kip - Macy's sun4v port to be merged into the DTrace project tree.

- -

The DTrace project tree sources are now exported to - cvsup10.freebsd.org

- -

Refer to the project page for more details.

- - - - Current effort centres around making DTrace useful for the - sun4v porting effort which has shown up scalability issues with the - current FreeBSD SMP implementation. DTrace should be ideal for - analysing those issues. - -
- - - Embedded FreeBSD - - - - - George - - Neville-Neil - - - gnn@freebsd.org - - - - - Main Site - - - -

There are several projects moving forward in the embedded area. - For now the main location for new information is - www.embeddedfreebsd.org. We have also created a new mailing list, - - freebsd-embedded@freebsd.org - - , which is meant to eventually replace the freebsd-small. A call - was put out on small for people to move to embedded.

- - - - Update Developers Handbook with information on building - embedded versions of FreeBSD - - Help with the MIPS port - - Help with the ARM port - - Investigate an SH port (requested by folks in Japan where the - Hitachi SH processor is quite popular in embedded) - -
- - - EuroBSDCon 2006 - November 10th - 12th, Milan, Italy - - - - - Massimiliano - - Stucchi - - - stucchi@eurobsdcon.org - - - - - Official Website - - - -

This year's EuroBSDCon will be held in Milan, Italy, on November - 10th through 12th.

- -

Hosted in the foggy northern Italy, the fifth EuroBSDCon aims at - being a new successful chapter in the itinerant series of European - BSD conferences.

- -

EuroBSDCon represents the biggest gathering for BSD developers - from the old continent, as well as users and passionates from - around the World. It is also a chance to share experiences, - know-how, and cultures.

- -

For the first time, parallel to the main event, an event for - wives/girlfriends/friends will be organised. It will consist of - guided tours of the city of Milan, a probable trip to Como and - visits to various museums. We're also working towards offering a - show at the Teatro alla Scala.

- -

The FreeBSD developer summit will be also held on November - 10th.

- - - - The Call For Papers is out, so everybody is invited to send - in papers or tutorials that might be of interest to the - community - - The Conference Organisers are also looking for sponsors. Feel - free to contact oc@eurobsdcon.org in order to discover the - different sponsoring opportunities. - -
- - - FAST_IPSEC Upgrade - - - - - George - - Neville-Neil - - - gnn@freebsd.org - - - - - Bjoern A. - - Zeeb - - - bz@freebsd.org - - - - - - - - -

Continuing to add IPv6 support to FAST_IPSEC. Test environment - is now stable. Can build and run kernels with FAST_IPSEC and INET6 - enabled but IPSec in IPv6 is now broken and being worked on.

- - - - Complete move to FAST_IPSEC type processing for IPv6. This is - complicated by the structure of the IPv6 code itself which, unlike - IPv4 splits transport and tunnel mode processing across the output - routine. - -
- - - FreshPorts - - - - - Dan - - Langille - - - dan@langille.org - - - - - FreshPorts - - - -

FreshPorts has seen several new features recently: -

    -
  • caching implemented at web application level to reduce load - on the database server and to serve pages faster
  • - -
  • searching expanded to find all the ports that this maintainer - maintains, and all the commits by a particular committer
  • -
- -
- - Most of the work lately has been optimisation, either at the - database level or at the web application level.

- -

A 2U server was recently donated to the - FreshPorts - - / - FreshSource - - / - FreeBSD Diary - - / - BSDCan - - group. We have also received a RAID card. Now we're looking for - some hard drives.

- -

Over the past few weeks, work has concentrated on benchmarking - the new server and getting it ready for production. Eventually it - will need a new home as I don't really want it running in my - basement all the time (it's really loud!).

- -

Thanks to - iXsystems - - and - 3Ware - - for their contributions to this project.

- - - - We would like some more hardware (CPUs and HDD). Details - here - - -
- - - GJournal - - - - - Pawel Jakub - - Dawidek - - - pjd@FreeBSD.org - - - - - - Announce. - - - Patches for HEAD. - - - Patches for RELENG_6. - - - -

GJournal is a GEOM class which provides journaling for GEOM - providers. It can also be used to journal various file systems with - just a minimal filesystem-specific portion of code. Currently only - UFS journaling is implemented on top of gjournal. Being - filesystem-independent and operating below the file system level, - gjournal has no way to distinguish data from metadata, thus it - journals both. One of the nice things about gjournal is that it - works reliable even on disks with enabled write cache, which is - often not the case for journalled file systems. And remember... fsck - no more.

- - - - I'm looking for feedback from users who can test gjournal in - various workloads. - -
- - - gvirstor - - - - - Ivan - - Voras - - - ivoras@freebsd.org - - - - - - - - -

The purpose of - gvirstor - - module is to provide the ability to create a virtual storage device - of arbitrarily large size (typically several terabytes) which - consists of an arbitrary number of physical storage devices - (actually any lower-level GEOM providers, including RAID devices) - of arbitrary size (typically 50 GB - 400 GB hard drives). Storage - space from these components is carved into small chunks (for - example 4 MB) and allocated (committed) to the virtual device on - as-needed basis.

- -

Development has started and is progressing as planned (though a - little bit slow). Metadata format and virtual storage allocation - formats have been defined and more serious coding is in - progress.

- - - - Much user testing will be needed (though not - currently) - -
- - - FreeBSD list of projects and ideas for volunteers - - - - - Joel - - Dahl - - - joel@FreeBSD.org - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - - - - -

The FreeBSD list of projects and ideas for volunteers is doing - well. Several items were picked up by volunteers and have found - their way into the tree. Others are under review or in progress. We - are looking forward to hear about new ideas, people willing to act - as technical contacts for generic topics such as USB or specific - entries (already existing or newly created) and suggestions for - existing entries or completion reports for (parts of) an entry.

- - - - Add more ideas. - - Find more technical contacts. - - Find people willing to review/test implementations of - (somewhat) finished items. - -
- - - IPv6 cleanup - - - - - Bjoern A. - - Zeeb - - - bz@freebsd.org - - - - - Project - summary - - - P4 workspace for future changes - - - -

Initial changes include: -

    -
  • Changed ip6_sprintf to no longer return a static buffer.
  • - -
  • Started to adopt in6_pcb* code to what we have for legacy - IP.
  • -
- -
- - Next steps will be to reduce the number of global variables and - caches.

- - - - Cleanup code. - - Make everything MPSafe. - - Enhance things and add new features. - -
- - - IPv6 Vulnerabilities - - - - - George - - Neville-Neil - - - gnn@freebsd.org - - - - - Clément - - Lecigne - - - clemun@GMAIL.COM - - - - - - - - -

Clement has been working both with libnet and gnn's Python based - packet library (PCS) to produce code to test for vulnerabilities in - IPv6. To Clement has found some issues, all of which have been - reported to his mentor and to Security Officer at FreeBSD.org - Vulnerabilities will not be reported here.

- - - - Get 0.1 of PCS on to SourceForge for wider use. - -
- - - Jail Resource Limits - - - - - Chris - - Jones - - - cdjones@freebsd.org - - - - - - - -

Project is in development with initial working software expected - mid-July 2006. CPU limits will be implemented with a hierarchical - scheduler: (initially) using a round-robin scheduler to select - which jail to run a task in and then delegating which task in the - jail to be run to a per-jail scheduler.

- - - - Complete round-robin inter-jail scheduler (with existing 4BSD - schedulers implemented per jail). - - Add hooks for memory tracking. - -
- - - K Kernel Meta-Language - - - - - Spencer - - Whitman - - - joecat@cmu.edu - - - - - Poul-Henning - - Kamp - - - phk@FreeBSD.ORG - - - - - - - - -

A simple lexer and parser have almost been completed. Also - significant planing for future additions to K have been thought - up.

- - - - Finish the lexer and parser - - Implement the #! preprocessor function - - Add lint like functionality to the preprocessor - - Add style(9) checking to the preprocessor - - Allow for detection of unused #includes - -
- - - Linuxolator kernel update to match functionality of - 2.6.x - - - - - Roman - - Divacky - - - rdivacky@freebsd.org - - - - - Alexander - - Leidinger - - - netchild@freebsd.org - - - - - Summer of Code - proposal - - - -

FreeBSD linux emulation layer (linuxolator) currently implements - most of the functionality necessary to emulate 2.4.2 linux kernel, - but linux world has moved forward and current linux world requires - 2.6.x features. The aim of this SoC task is to make Fedora Core 4 - linux-base to be able to run with 2.6.x kernel. Currently this - means extending clone() syscall and implement pthread related - things. This involves TLS implementation (sys_set_thread_area - syscall) and possibly tid manipulation (used for pthread_join etc.) - and finally futexes (linux fast user-space mutexes implementation). - This should enable pthread-linked programs to work. After this is - done there may be other things necessary to implement however, only - time will tell. I am funded by google.com in their SoC to do this - work and I'll continue to work on this after the summer hopefully - as a part of my MSc. thesis.

- - - - Finish the TLS thing + other thread related things (tid comes - to mind and looks necessary for pthread to work) - - Futexes also look necessary for pthread to work - - maybe other things to be able to run basic programs under - 2.6.16 linuxolator - -
- - - Improving Ports Collection - - - - - Gábor - - Kövesdán - - - gabor@FreeBSD.org - - - - - - Wiki page about the project - - Explaining - DESTDIR - - - ports/98105 - - - -

The improved support for the i386 binaries are ready for -exp - run. It only allows installing such ports on amd64 and ia64 when - there's a compatibility layer compiled into the kernel and the - 32-bit libraries are installed under /usr/lib32.

- -

The DESTDIR support are in progress. It works for the simplest - ports without USE_* that don't have a [pre|do|post]-install target. - There are more complicated issues with e.g. conflict checking in - DESTDIR, deinstalling from DESTDIR, those have to be fixed as - well.

- - - - DESTDIR issues should be fixed. - - All ports should be examined whether they respect CC/CFLAGS, - and the erroneous ones should be fixed. - - Fetch scripts should be taken out of bsd.port.mk to be - separate scripts. - - A tool should be written that makes possible to cross-compile - ports. - - A good plist generator tool should be written for porters or - the old one in ports/Tools/scripts should be updated. - -
- - - Hungarian translation of the webpages - - - - - Gábor - - Kövesdán - - - gabor@FreeBSD.org - - - - - Current status - - - -

The translated webpage is almost ready now. This Hungarian - translation is a "lite" version of the original English webpages, - since there are parts that are irrelevant for the Hungarian - community, or has pieces of data that change quickly, so it's no - use to translate these pages now, maybe later, if we have more - Hungarian contributors, but this webpage would be a good starting - point in translating the documentations, and we need a good place - to put translated documentations anyway.

- -

I'm going to be very busy with SoC this summer, but I'll try to - find people that can help me out in this project. Any help - appreciated.

- - - - The remaining important pages should be translated. - - The press/media/news sections should be restructured somehow - to being fed from the English webapges, since we don't have too - much Hungarian resource to make these up to date. - - There's a rendering issue when browsing the pages with - JavaScript enabled, but this can be server-side for me, this should - be investigated as well. - -
- - - Multi-IP v4/v6 jails - - - - - Bjoern A. - - Zeeb - - - bz@freebsd.org - - - - - - P4 workspace - - - -

As an intermediate step until FreeBSD will have full network - stack virtualisation this work shall provide support for multi-IP - IPv4/v6 jails.

- -

These changes are based on Pawel Jakub Dawidek's work for - multi-IPv4 jails and some initial work from Olivier Houchard for - single-IPv6 jails.

- -

The changes need some more testing but basically things - work.

- -

This is not considered to be the right thing todo so do - not - - ask for official support or if this will be committed to the - FreeBSD source repository. -
- - After some more cleanup of non-jail related IPv6 changes I will - publish a patch for HEAD and perhaps RELENG_6 for everyone who - wants to give it a try anyway.

- - - - (IPv6) related security checks. - - Write some tests. Especially IPv6 changes need more - testing. - - Check what general changes might need merging to HEAD. - -
- - - FreeBSD NFS Status Report - - - - - Chuck - - Lever - - - cel@FreeBSD.org - - - - -

Mohan Srinivasan committed his changes to make the NFSv2/3 client - MP safe to HEAD this quarter. Changes may be back-ported to 6.x - soon.

- -

Robert Watson and Chuck Lever held a discussion about the future - of the in-kernel NFSv4 client during BSDCan 2006. The current NFSv4 - client is unmaintained. Chuck also pointed out the long series of - unfixed PRs against the legacy client (NFSv2/3). These are at the - top of his priority list. Robert is also interested in making - NFSv4-style ACLs the lingua franca for FreeBSD file systems. There - was some discussion about integrating Rick MacKlem's NFSv4 server - into 7.x.

- -

Chuck Lever became a full source committer during this - quarter.

- -
- - - Nss-LDAP importing and nsswitch subsystem improvement - - - - - Michael - - Bushkov - - - bushman@FreeBSD.org - - - - - - Wiki-pages containing an up-to-date information about project - implementation details. - - - - - -

The basic goals of this SoC 2006 project are moving - nsswitch-modules out of the libc, extending the caching daemon and - importing nss_ldap into the base source tree. 2 milestones of the - project are currently completed.

- -

1. Nss-modules were successfully moved out of the libc into the - separate dynamic libraries. In order for static binaries to work - properly (they can't use dynamic nss-modules), nss-modules are - linked statically into the libc.a. As the side-effect of - nss-modules separation, getipnodeby***() functions were rewritten - to use gethostby***() functions and not the nsdispatch(3) call. - Caching daemon's "perform-actual-lookups" option was extended to - support all implemented nsswitch databases.

- -

2. A set of regressions tests was made to test nsswitch-related - functions. These tests are also capable of testing the stability of - these functions' behaviour after the system upgrade.

- - - - Import nss_ldap into the sources tree. - - Improve the caching daemon's performance. - -
- - - pfSense - - - - - Scott - - Ullrich - - - sullrich@gmail.com - - - - - - - - -

pfSense is rapidly approaching release. We are down to a - handfull of bugs that should be fixed in the coming weeks. We - should have a release around the time of our 2nd annual hackathon - which is taking place on July 21st - July 28th. Many exciting - sub-projects are taking place within pfSense and the project is - gaining new developers monthly.

- - - - - - http://cvstrac.pfsense.com/rptview?rn=6 - - lists the remaining open bugs. - -
- - - Low-overhead performance monitoring tools - - - - - Joseph - - Koshy - - - jkoshy@FreeBSD.org - - - - - Wiki page tracking - LibELF - - Wiki page for - PmcTools - - - PMC Tools Project - - - -

As an intermediate step towards implementing support for - callgraphs and cross-architecture performance measurements, I am - creating a BSD-licensed library for ELF parsing & manipulation. - This library will implement the SysV/SVR4 (g)ELF[3] API.

- -

Current status: Implementation of the library is in progress. A - TET-based test suite for the API and manual pages documenting the - library's interfaces are being concurrently created.

- -

Work is being done in FreeBSD's Perforce repository. I hope to - be ready for general review by the end of July '06.

- - - - Reviewers are needed for the code and the test suite. If you - have extensions to the stock SysV/SVR4 ELF(3) API that you would - like to see in -lelf, please send mail. - -
- - - Ports Collection - - - - - Erwin - - Lansing - - - erwin@FreeBSD.org - - - - - - - Mark - - Linimon - - - linimon@FreeBSD.org - - - - - The FreeBSD Ports - Collection - - - Contributing to the FreeBSD Ports Collection - - FreeBSD ports - monitoring system - - FreeBSD - ports unfetchable distfile survey (Bill Fenner's report) - - portscout - - The FreeBSD - Ports Management Team - - marcuscom - tinderbox - - - -

During this time, a huge number of ports PRs were committed, - bringing us back down below 800 for the first time since the - 5.5/6.1 release cycle. This is due to a great deal of work, - especially from some of our newest committers.

- -

This is all the more notable given the fact that we have been - adding new ports at a rapidly accelerating rate. We have now - exceeded the 15,000 port mark!

- -

Three sets of changes have been added to the infrastructure, - including updates of default versions of MySQL, PHP, LDAP, and - linux_base, and numerous bugfixes and improvements. About 2 dozen - portmgr PRs were closed due to this.

- -

In addition, a large-impact commit was made that attempts to - move us to a single libtool that is as unmodified from 'stock' - libtool as we can. Plans are also in place to do this for the - autotools.

- -

Several people are at work on implementing the modularised xorg - ports. Most of the work is done but several key pieces remain. Once - this is finished, an -exp regression test will be needed (most - likely, more than one :-) ) It is possible that before this we will - need to do a regression test that moves X11BASE back into - LOCALBASE. This is still under study.

- -

Gabor Kovesdan started a Google Summer of Code project on some - highly needed improvements on the ports infrastructure (see - elsewhere in this report). As this is a long term project, gtetlow - kindly imported the most important ports infrastructure files into - perforce to ease development. Other developers are encouraged to - use perforce for ports development, especially as it can help - keeping patches up-to-date while going stale in GNATS. Even though - linimon has been pushing hard on running experimental builds on the - test cluster, it will take some time to work through the - backlog.

- -

erwin added a ports section to the list of projects and ideas - for volunteers at the FreeBSD website. Have a look if you want to - work on the ports system. Don't hesitate to send additional ideas, - and committers are encouraged to add themselves as technical - contacts.

- -

sem adopted portupgrade after it had been neglected for some - time and has been very active on upgrades and bugfixing.

- -

dougb has continued to enhance his portmaster script and people - are finding success with it; although not designed to be as - full-featured as portupgrade, it does seem to be easier to - understand and use.

- -

shaun has contributed portscout, a scanner for updated - distfiles, to the ports collection.

- -

marcus upgraded GNOME to 2.14.1.

- -

As well, there have been new releases of the ports tinderbox - code.

- -

edwin has been hard at work on a PR-autoassigner for ports PRs, - which has saved a lot of time and been well-received. It has now - been installed on a freebsd.org machine (hub).

- -

linimon has been more active in pursuing maintainer-timeouts, - and has reset a number of inactive maintainers, with more in the - pipeline. The intent is to try to reduce the number of PRs that sit - around unanswered for two weeks. In almost all cases the resets are - due to no response at all; maintainers who are merely "busy" are - not the source of most of these problems, and deserve the benefit - of the doubt. Some of the maintainers that have been reset haven't - contributed in months or even years.

- -

We have added 10 (!) new committers since the last report.

- - - - We need help getting back to our modern low of 500 - PRs. - - We have over 4,000 unmaintained ports (see, for instance, - - the list on portsmon - - ). We are always looking for dedicated volunteers to adopt at least - a few ports. - - We can always use help with infrastructural enhancements. See - the ports section of - the list of - projects and ideas - - . - -
- - - BSDInstaller - - - - - Andrew - - Turner - - - soc-andrew@FreeBSD.org - - - - - - - - -

Since the last status report ports have been created for all - parts of the BSDInstaller except the backend.

- -

A snapshot of the BSDInstaller was released during this quarter. - This has shown a number of bugs with the installation process. Most - have now been fixed.

- -
- - - Giant-Less UFS with Quotas - - - - - Konstantin - - Belousov - - - kib@FreeBSD.org - - - - - - - - -

The patches to allow UFS operate with quotas in Giant-less mode - are brewed for long now. Since recent huge pile of fixes into - snapshots code, I think the problems you could encounter are caused - solely by the patch.

- -

Aside performance benefits, patch has another one, much more - valuable. It makes UFS operating in one locking regime whatever - options are compiled into kernel. I think, in long term, that would - lead to better stability of the system.

- - - - I need testers feedback. Both stability reports and - performance measurements are welcomed ! - -
- - - Update of the Linux userland infrastructure in the Ports - Collection - - - - - Boris - - Samorodov - - - bsam@FreeBSD.org - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - Emulation - - Mailinglist - - - emulation@FreeBSD.org - - - - - - - -

We updated the default linux base port to Fedora Core 4 and the - default linux X11 libs port to the X.org RPM in FC4.

- -

An update to FC5 or FC6 has to wait until the kernel got support - for syscalls of a newer linux kernel. See the corresponding SoC - project report for more.

- -
- - - Sound subsystem improvements - - - - - Ariff - - Abdullah - - - ariff@FreeBSD.org - - - - - Alexander - - Leidinger - - - netchild@FreeBSD.org - - - - - Multimedia - - Mailinglist - - - multimedia@FreeBSD.org - - - - - Some patches. - - The FreeBSD - Project Ideas List. - - - Rudimentary HDA support. - - - -

Since the last status report we fixed some more bugs, added - basic support for envy24 chips and cleaned up the source for the - emu10kx driver in the ports to make it ready for import into the - base system.

- -

We also got some patches with a little bit of infrastructure for - Intel HDA support. It's not finished and also not usable by end - users yet.

- - - - Have a look at the sound related entries on the ideas - list. - - sndctl(1): tool to control non-mixer parts of the sound - system (e.g. spdif switching, virtual-3D effects) by an user - (instead of the sysctl approach in -current); pcmplay(1), - pcmrec(1), pcmutil(1). - - Plugable FEEDER infrastructure. For ease of debugging various - feeder stuff and/or as userland library and test suite. - - Support for new hardware (envy24, Intel HDA). - -
- - - XFS for FreeBSD - - - - - Russell - - Cattelan - - - cattelan@xfs.org - - - - - Alexander - - Kabaev - - - kan@freebsd.org - - - - - Craig - - Rodrigues - - - rodrigc@freebsd.org - - - - - XFS for - FreeBSD - - - -

The XFS for FreeBSD project is an effort to port the publically - available GPL'd sources to SGI's XFS filesystem to FreeBSD.

- -

In December, we imported a version of XFS into FreeBSD-CURRENT - which allows FreeBSD to mount an XFS filesystem as read-only.

- -

As a side effort, we have been continuing on the work that PHK - started to clean up the mount code in FreeBSD. We can use the - existing FreeBSD mount(8) utility to mount an XFS partition, - without introducing a new mount_xfs utility.

- - - - We need to implement support for writing to XFS - partitions - -
- - - SCTP Integration - - - - - George - - Neville-Neil - - - gnn@freebsd.org - - - - - Randall - - Stewart - - - rrs@cisco.com - - - - - Stream Transmission Control - Protocol - - - -

For the last several months Randall Stewart has been working in - HEAD and STABLE to get us ready to integrate the SCTP protocol - (Stream Transmission Control Protocol) into FreeBSD. He is - currently working on a patch to share with a wider audience but - needs to do some integration work first. Randall has a provisional - commit bit and will be working with gnn on getting code committed - to the HEAD of the tree.

- - - - When this gets integrated it needs lots of testers. - -
- - - FreeBSD Security Officer and Security Team - - - - - Security - - Officer - - - security-officer@FreeBSD.org - - - - - Security - - Team - - - security-team@FreeBSD.org - - - - - - - - - - - - -

In the time since the last status report, four security - advisories have been issued concerning problems in the base system - of FreeBSD; of these, one problem was "contributed" code, while - three were in code maintained within FreeBSD. The Vulnerabilities - and Exposures Markup Language (VuXML) document has continued to be - updated by the Security Team and Ports Committers documenting new - vulnerabilities in the FreeBSD Ports Collection; since the last - status report, 71 new entries have been added, bringing the total - up to 757.

- -

The following FreeBSD releases are supported by the FreeBSD - Security Team: FreeBSD 4.11, FreeBSD 5.3, FreeBSD 5.4, FreeBSD 5.5, - FreeBSD 6.0, and FreeBSD 6.1. The respective End of Life dates of - supported releases are listed on the web site; of particular note, - FreeBSD 5.3 and FreeBSD 5.4 will cease to be supported at the end - of October 2006, while FreeBSD 6.0 will cease to be supported at - the end of November 2006.

- -
- - - Gvinum improvements - - - - - Ulf - - Lilleengen - - - lulf@stud.ntnu.no - - - - - - - -

I have been working on porting missing features in gvinum from - vinum, as well as adding new features.

- -

So far the resetconfig, detach, dumpconfig, setstate (on plexes - and volumes) and stop commands have been implemented, as well as - some other minor fixes. The attach command is currently being - implemented, and started on disk-grouping. Currently most of this - is in p4, but patches will be submitted as soon as possible.

- -
- - - Wireless Networking - - - - - Sam - - Leffler - - - sam@errno.com - - - - - - - -

The wireless support has been stable for a while so most work has - focused on bug fixing and improving legacy drivers.

- -

Max Laier and I worked on improving support for Intel wireless - cards. The results of this work included significant improvements - to the iwi(4) driver (for 2195/2200 parts) and the firmware(9) - facility for managing loadable device firmware. There is also an - updated ipw(4) that has improvements similar to those done for iwi - that is in early test. Support for the latest Intel devices, the - 3945 pci-express cards, is planned for later this summer.

- -

Atheros support was updated with a new hal that fixes a few - minor issues and provides known working builds for SPARC, PPC, and - ARM platforms. There is also working MIPS support that will be used - when the MIPS port is ready to test. Otherwise one useful bug was - fixed that affected AP operation with associated stations operating - in power save mode.

- -

wpa_supplicant and hostapd were updated to the latest stable - build releases from Jouni Malinen.

- -

Experimental changes to support injection of raw 802.11 frames - using bpf were posted for comment. This work was done in - collaboration with Andrea Bittau.

- - - - Legacy drivers such as wi are languishing and need - maintainers. This is prerequisite to bringing in new 802.11 - features such as improved scanning and virtual ap. - -
- - - xscale board buy - - - - - Sam - - Leffler - - - sam@errno.com - - - - - - - - - - -

With the help of Jim Thompson of Netgate ( - http://www.netgate.com/ - - ) the FreeBSD Foundation arranged a purchase of xscale-based boards - for folks interested in ARM support. Developers were able to - purchase boards at a reduced cost. The goals were to accelerate - and/or improve support for the ARM platform and to set forth at - least one board as a reference platform for the ARM support. - Netgate will be stocking lower-cost models of the board later in - the year (a special order was made for boards with only 2 mini-pci - slots).

- -
- - - Interrupt handling - - - - - Paolo - - Pisati - - - piso@FreeBSD.org - - - - -

With the introduction of fine grained locking in the SMPng - project, the FreeBSD kernel went under a major redesign, and many - subsystem changed significantly with it. In particular, device - driver's interrupt context ("the bottom half") had the necessity to - synchronise with process context ("the top half") and share data in - a consistent manner without using spl*(). To overcome this problem, - a new interrupt model based around interrupt threads was employed, - together with a fast interrupt model dedicated to particular driver - handlers that don't block on locks (i.e. serial port, clock, - etcetc). Unfortunately, even if the interrupt thread model proved - to be a reliable solution, its performance was not on par with - the pre SMPng era (4.x), and thus others solutions were - investigated, with interrupt filtering being one of that.

- -

As part of my Summer of Code 2006 work, I'm implementing - interrupt filtering for FreeBSD, and when the framework will be in - place I'll compare the performance of filters, against all the - previous models: pre-SMPng(4.x), ithread and polling.

- -

The most important modifications to the src tree so far were: -

    -
  • made PPC accept more than one FAST handler per irq line - (previously INTR_FAST implied INTR_EXCL)
  • - -
  • converted all the INTR_FAST handlers to be filters: return an - error code to note what they did (FILTER_HANDLED/FILTER_STRAY) - and if they need more work to do (FILTER_SCHEDULE_THREAD)
  • - -
  • moved part of the interrupt execution code from MD code to - kern_intr.c::intr_filter_loop()
  • - -
  • broke newbus API: bus_setup_intr() grew a new filter - parameter of type "int driver_filter_t(void*)".
  • - -
  • converted all the buses that override bus_setup_intr() to - handle filters
  • - -
  • converted all the normal ithread drivers to provide a NULL - filter funcion
  • -
- -
- - The next milestone is to have all the different models (filters - only, ithread only and filter + ithread) work together - reliably.

- - - - Arm is largely untested - - Sparc64 needs more work on low level (.s) interrupt - routine - -
- - - PowerPC Port - - - - - Peter - - Grehan - - - grehan@freebsd.org - - - - - - - - -

The project is slowly starting to ramp up after a long - move-induced hiatus.

- -

Alan Cox has almost completed making the pmap module - Giant-free.

- -
- - - TrustedBSD Audit - - - - - Robert - - Watson - - - rwatson@FreeBSD.org - - - - - Wayne - - Salamon - - - wsalamon@FreeBSD.org - - - - - Christian - - Peron - - - csjp@FreeBSD.org - - - - - TrustedBSD Audit - Web Page - - - -

TrustedBSD Audit provides fine-grained security event auditing - in FreeBSD 7.x, with a planned merge to 6.x for FreeBSD 6.2. Work - performed in the last three months: -

    -
  • Per audit pipe preselection allows IDS applications to - configure audit record selection per-pipe, new auditpipe.4 - document.
  • - -
  • audit_submit library call to reduce complexity of adding - audit support to applications.
  • - -
  • Significant cleanup, bug fixing, locking improvements, token - parsing and generation improvements.
  • - -
  • Solaris subject token compatibility, extended address - support.
  • - -
  • Auditing of extended attributes calls, ACL support a work in - progress.
  • - -
  • OpenBSM 1.0 alpha 7 integrated into CVS.
  • - -
  • OpenBSM test tools in progress.
  • - -
  • Experimental auditeventd which allows shared object plug-ins - to subscribe to live audit events via a shared pipe in order to - support the easy authoring of simple intrusion detection and - monitoring components.
  • -
-

- - - - Bring audit event daemon API and implementation to maturity. - Currently these are not installed by default in the CVS-merged - version. - - Complete system call coverage. - - Allow finer-grained configuration of what is audited: - implement control flags regarding paths, execve arguments, - environmental variables. - - Support for auditing MAC policy data. - - Additional user space application coverage, such as - application layer audit events from adduser, rmuser, pw, - etc. - -
-
- -- cgit v1.2.3