5.3-RELEASE TODO

From: Scott Long <scottl_at_FreeBSD.org>
Date: Fri, 10 Sep 2004 01:41:16 -0600 (MDT)
This is an automated weekly mailing of the FreeBSD 5.3 open issues list.
The live version of this list is available at:

    http://www.FreeBSD.org/releases/5.3R/todo.html

Automated mailing of this list will continue through the release of
FreeBSD 5.3


                          FreeBSD 5.3 Open Issues

                                Open Issues

 This is a list of open issues that need to be resolved for FreeBSD 5.3. If
 you have any updates for this list, please e-mail re_at_FreeBSD.org.

Show stopper defects for 5.3-RELEASE

 +------------------------------------------------------------------------+
 |       Issue        |   Status    | Responsible |      Description      |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | PREEMPTION appears to |
 |                    |             |             | increase the chances  |
 |                    |             |             | of triggering a race  |
 |                    |             |             | condition in the      |
 |                    |             |             | thread context        |
 | PREEMPTION-related |             | Scott Long, | management and        |
 | hangs involving    | In progress | Julian      | scheduling code.      |
 | threads            |             | Elischer    | Patches to mitigate   |
 |                    |             |             | the problem have been |
 |                    |             |             | developed, with       |
 |                    |             |             | on-going work to come |
 |                    |             |             | up with the correct   |
 |                    |             |             | solution prior to     |
 |                    |             |             | 5.3.                  |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | Jun Kuriyama has      |
 |                    |             |             | reported problems     |
 |                    |             |             | with NFS over IPv6    |
 |                    |             |             | not functioning       |
 |                    |             |             | correctly as of the   |
 |                    |             |             | improved NFS support  |
 |                    |             |             | for disconnection     |
 | NFS over IPv6      |             |             | changes. Doug White   |
 | problems           | In progress | Doug White  | has tracked down the  |
 |                    |             |             | source of the problem |
 |                    |             |             | (EMSGSIZE being       |
 |                    |             |             | returned by IPv6 UDP  |
 |                    |             |             | send routine due to   |
 |                    |             |             | fragmentation), and   |
 |                    |             |             | is currently          |
 |                    |             |             | exploring possible    |
 |                    |             |             | fixes.                |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | There are reports of  |
 |                    |             |             | applications wedging  |
 |                    |             |             | in poll() and         |
 |                    |             |             | select() while        |
 |                    |             |             | running the network   |
 |                    |             |             | stack without the     |
 |                    |             |             | Giant lock. A recent  |
 |                    |             |             | sleepq change appears |
 |                    |             |             | to have caused some   |
 | poll()/select()    |             |             | of the observed       |
 | application wedge  |             | Robert      | problems to go away   |
 | reports with       | In progress | Watson      | (others are difficult |
 | debug.mpsafenet=1  |             |             | to test for due to    |
 |                    |             |             | recent SMP            |
 |                    |             |             | instability).         |
 |                    |             |             | uipc_socket.c:1.211   |
 |                    |             |             | appears to correct    |
 |                    |             |             | this race in the CVS  |
 |                    |             |             | HEAD (6.x), but the   |
 |                    |             |             | fix is currently in a |
 |                    |             |             | waiting period to be  |
 |                    |             |             | merged back to        |
 |                    |             |             | RELENG_5.             |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | ether_input() calls   |
 |                    |             |             | random_harvest() on   |
 |                    |             |             | the mbuf after it has |
 |                    |             |             | been handed off to    |
 |                    |             |             | ether_demux(), at     |
 | ether_input() may  |             |             | which point it may    |
 | harvest entropy    | In progress | Mark Murray | have been free()'d    |
 | from free()'d mbuf |             |             | back to the mbuf      |
 |                    |             |             | allocator. It also    |
 |                    |             |             | passes in a pointer   |
 |                    |             |             | to the mbuf itself,   |
 |                    |             |             | rather than ethernet  |
 |                    |             |             | frame header.         |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | Kris Kennaway has     |
 |                    |             |             | reported problems     |
 |                    |             |             | with boot time        |
 |                    |             |             | panic's, mutex Giant  |
 | boot time panic    | Not done    | -           | not owned at          |
 |                    |             |             | kern/vfs_subr.c:1365. |
 |                    |             |             | See "Re: 5.3-RELEASE  |
 |                    |             |             | TODO" thread in       |
 |                    |             |             | -current_at_.            |
 +------------------------------------------------------------------------+

Required features for 5.3-RELEASE

 +------------------------------------------------------------------------+
 |      Issue      |   Status    | Responsible  |       Description       |
 |-----------------+-------------+--------------+-------------------------|
 | BIND9 import    | In progress | Doug Barton  | BIND9 must be imported  |
 | into 5-CURRENT  |             |              | for 5.3-RELEASE.        |
 |-----------------+-------------+--------------+-------------------------|
 |                 |             |              | Kernel bits             |
 | KSE support for |             |              | implemented, userland   |
 | sparc64         | --          | --           | not implemented.        |
 |                 |             |              | Required for            |
 |                 |             |              | 5.3-RELEASE.            |
 |-----------------+-------------+--------------+-------------------------|
 |                 |             |              | With improved support   |
 |                 |             |              | for threading           |
 |                 |             |              | primitives, support is  |
 |                 |             | David Xu,    | now required to ease    |
 | GDB thread      | In progress | Marcel       | debugging of threaded   |
 | support         |             | Moolenaar    | applications. Ideally,  |
 |                 |             |              | this support will work  |
 |                 |             |              | for both libthr and     |
 |                 |             |              | libkse threading        |
 |                 |             |              | models.                 |
 |-----------------+-------------+--------------+-------------------------|
 |                 |             |              | Currently, two          |
 |                 |             |              | schedulers are present: |
 |                 |             |              | SCHED_ULE (default), an |
 |                 |             |              | SMP-optimized scheduler |
 |                 |             |              | created as part of      |
 |                 |             |              | SMPng, and SCHED_4BSD,  |
 |                 |             |              | an SMP-adapted version  |
 |                 |             |              | of the original 4BSD    |
 |                 |             |              | scheduler. They have    |
 |                 |             |              | quite different         |
 |                 |             |              | performance properties, |
 |                 |             |              | with ULE providing      |
 |                 |             |              | strong interactivity    |
 |                 |             |              | characteristics, and    |
 | Scheduler       |             |              | performing quite well   |
 | cleanup and     | In progress | --           | in a number of          |
 | resolution      |             |              | benchmarks, and 4BSD    |
 |                 |             |              | showing greater         |
 |                 |             |              | strength in IPC         |
 |                 |             |              | intensive user space    |
 |                 |             |              | benchmarks, such as     |
 |                 |             |              | databases. One of these |
 |                 |             |              | schedulers must be the  |
 |                 |             |              | default for 5.3, and    |
 |                 |             |              | whichever one it is, it |
 |                 |             |              | requires careful        |
 |                 |             |              | measurement, analysis,  |
 |                 |             |              | and optimization before |
 |                 |             |              | the release in order to |
 |                 |             |              | address its             |
 |                 |             |              | deficiencies.           |
 |-----------------+-------------+--------------+-------------------------|
 |                 |             |              | There have been several |
 |                 |             |              | reports that growfs(8)  |
 |                 |             |              | works improperly with   |
 | Reports of UFS2 |             |              | large disk sizes, and   |
 | "large disk"    | In progress | Scott Long   | other size-related nits |
 | problems        |             |              | in the current disk and |
 |                 |             |              | label management tool   |
 |                 |             |              | set. These must be      |
 |                 |             |              | resolved for            |
 |                 |             |              | 5.3-RELEASE.            |
 |-----------------+-------------+--------------+-------------------------|
 |                 |             |              | Synaptics updates to    |
 | Synaptics       |             |              | the psm(4) driver have  |
 | touchpad        | In progress | Philip Paeps | resulted in poor        |
 | problems        |             |              | interactivity for taps  |
 |                 |             |              | and button press events |
 |                 |             |              | for some users.         |
 |-----------------+-------------+--------------+-------------------------|
 |                 |             |              | Entropy harvesting in   |
 |                 |             |              | the interrupt and       |
 |                 |             |              | incoming packet paths   |
 |                 |             |              | currently involves a    |
 |                 |             |              | large number of mutex   |
 |                 |             |              | operations. In order to |
 |                 |             |              | improve performance, it |
 | Entropy         |             | Robert       | is desirable to reduce  |
 | harvesting      | In progress | Watson,      | the number of mutex     |
 | optimizations   |             | Mark Murray  | operations              |
 |                 |             |              | substantially. Work is  |
 |                 |             |              | in progress to improve  |
 |                 |             |              | the harvesting code     |
 |                 |             |              | along these lines, but  |
 |                 |             |              | has not yet been        |
 |                 |             |              | properly measured, and  |
 |                 |             |              | therefore not yet       |
 |                 |             |              | merged to CVS.          |
 +------------------------------------------------------------------------+

Desired features for 5.3-RELEASE

 +------------------------------------------------------------------------+
 |      Issue       |   Status    |  Responsible   |     Description      |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | Almost all process   |
 |                  |             |                | debugging tools have |
 |                  |             |                | been updated to use  |
 |                  |             |                | non-procfs kernel    |
 |                  |             |                | primitives, with the |
 |                  |             |                | exception of         |
 |                  |             |                | truss(1). As procfs  |
 |                  |             |                | is considered        |
 |                  |             |                | deprecated due to    |
 |                  |             |                | its inherent         |
 |                  |             |                | security risks, it   |
 | truss support    |             |                | is highly desirable  |
 | for ptrace       | --          | --             | to update truss to   |
 |                  |             |                | operate in a         |
 |                  |             |                | post-procfs world.   |
 |                  |             |                | Dag-Erling Smorgrav  |
 |                  |             |                | had prototype        |
 |                  |             |                | patches;             |
 |                  |             |                | Robert Drehmel is    |
 |                  |             |                | developing and       |
 |                  |             |                | testing patches now. |
 |                  |             |                | Support for system   |
 |                  |             |                | call tracing has     |
 |                  |             |                | been added to        |
 |                  |             |                | ptrace().            |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | FAST_IPSEC currently |
 |                  |             |                | cannot be used       |
 |                  |             |                | directly with the    |
 |                  |             |                | KAME IPv6            |
 |                  |             |                | implementation,      |
 |                  |             |                | requiring an         |
 |                  |             |                | additional level of  |
 |                  |             |                | IP tunnel            |
 |                  |             |                | indirection to       |
 |                  |             |                | protect IPv6 packets |
 | FAST_IPSEC and   |             |                | when using hardware  |
 | KAME             | Not done    | --             | crypto acceleration. |
 | compatibility    |             |                | This issue must be   |
 |                  |             |                | resolved so that the |
 |                  |             |                | two services may     |
 |                  |             |                | more easily be used  |
 |                  |             |                | together. Among      |
 |                  |             |                | other things, this   |
 |                  |             |                | will require a       |
 |                  |             |                | careful review of    |
 |                  |             |                | the handling of mbuf |
 |                  |             |                | header copying and   |
 |                  |             |                | m_tag support in the |
 |                  |             |                | KAME IPv6 code.      |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | A process cannot be  |
 |                  |             |                | interrupted while    |
 |                  |             |                | waiting on a lock.   |
 | rpc.lockd(8)     |             |                | Fixing this requires |
 | stability        | --          | --             | that the RPC code be |
 |                  |             |                | taught how to deal   |
 |                  |             |                | with lock            |
 |                  |             |                | cancellation and     |
 |                  |             |                | interruption events. |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | Kernel modules are   |
 |                  |             |                | currently built      |
 |                  |             |                | independently from a |
 |                  |             |                | kernel               |
 |                  |             |                | configuration, and   |
 |                  |             |                | independently from   |
 |                  |             |                | one another,         |
 |                  |             |                | resulting in         |
 |                  |             |                | substantially        |
 |                  |             |                | redundant            |
 |                  |             |                | compilation of       |
 |                  |             |                | objects, as well as  |
 |                  |             |                | the inability to     |
 |                  |             |                | easily manage        |
 |                  |             |                | compile-time options |
 | Revised kld      |             |                | for kernel objects   |
 | build            | Not done    | Peter Wemm     | (such as MAC, PAE,   |
 | infrastructure   |             |                | etc) that may        |
 |                  |             |                | require conditional  |
 |                  |             |                | compilation in the   |
 |                  |             |                | kernel modules. In   |
 |                  |             |                | order to improve     |
 |                  |             |                | build performance    |
 |                  |             |                | and better support   |
 |                  |             |                | options of this      |
 |                  |             |                | sort, the KLD build  |
 |                  |             |                | infrastructure needs |
 |                  |             |                | to be revamped.      |
 |                  |             |                | Peter Wemm has done  |
 |                  |             |                | some initial         |
 |                  |             |                | prototyping, and     |
 |                  |             |                | should be contacted  |
 |                  |             |                | before starting on   |
 |                  |             |                | this work.           |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | Apple's Darwin       |
 |                  |             |                | operating system has |
 |                  |             |                | fairly extensive     |
 | Merge of Darwin  |             |                | improvements to      |
 | msdosfs, other   | Not done    | --             | msdosfs and other    |
 | fixes            |             |                | kernel services;     |
 |                  |             |                | these fixes must be  |
 |                  |             |                | reviewed and merged  |
 |                  |             |                | to the FreeBSD tree. |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | Truss appears to     |
 |                  |             |                | contain a race       |
 |                  |             |                | condition during the |
 |                  |             |                | start-up of          |
 |                  |             |                | debugging, which can |
 |                  |             |                | result in truss      |
 |                  |             |                | failing to attach to |
 |                  |             |                | the process before   |
 |                  |             |                | it exits. The        |
 |                  |             |                | symptom is that      |
 |                  |             |                | truss reports that   |
 |                  |             |                | it cannot open the   |
 |                  |             |                | procfs node          |
 |                  |             |                | supporting the       |
 |                  |             |                | process being        |
 |                  |             |                | debugged. A bug also |
 | Race conditions  | Errata      | Robert Drehmel | appears to exist     |
 | in truss         | candidate   |                | where in truss will  |
 |                  |             |                | hang if execve()     |
 |                  |             |                | returns ENOENT. A    |
 |                  |             |                | further race appears |
 |                  |             |                | to exist in which    |
 |                  |             |                | truss will return    |
 |                  |             |                | "PIOCWAIT:           |
 |                  |             |                | Input/output error"  |
 |                  |             |                | occasionally on      |
 |                  |             |                | startup. The fix for |
 |                  |             |                | this sufficiently    |
 |                  |             |                | changes process      |
 |                  |             |                | execution handling   |
 |                  |             |                | that we will defer   |
 |                  |             |                | the fix to post-5.0  |
 |                  |             |                | and consider this    |
 |                  |             |                | errata.              |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | Truss appears to     |
 |                  |             |                | have another         |
 |                  |             |                | problem. It is       |
 |                  |             |                | repeatable by        |
 |                  |             |                | running "truss -f    |
 | More truss       | Not done    | --             | fsck -p /",          |
 | problems         |             |                | suspending it with   |
 |                  |             |                | ^Z, and then killing |
 |                  |             |                | truss. It will leave |
 |                  |             |                | behind the fsck      |
 |                  |             |                | processes which will |
 |                  |             |                | be unkillable.       |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | Many systems         |
 |                  |             |                | supporting POSIX.1e  |
 |                  |             |                | ACLs permit a minor  |
 |                  |             |                | violation to that    |
 |                  |             |                | specification, in    |
 |                  |             |                | which the ACL_MASK   |
 | ACL_MASK         |             |                | entry overrides the  |
 | override of      | Not done    | Robert Watson  | umask, rather than   |
 | umask support in |             |                | being intersected    |
 | UFS              |             |                | with it. The         |
 |                  |             |                | resulting semantics  |
 |                  |             |                | can be useful in     |
 |                  |             |                | group-oriented       |
 |                  |             |                | environments, and as |
 |                  |             |                | such would be very   |
 |                  |             |                | helpful on FreeBSD.  |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | The LOR reported in  |
 |                  |             |                | PR kern/55175 needs  |
 | filedesc LOR     | Not done    | --             | to be fixed.         |
 |                  |             |                | Filedesc locking     |
 |                  |             |                | needs to be heavily  |
 |                  |             |                | reviewed in general. |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | Currently, MAC       |
 |                  |             |                | protections are      |
 |                  |             |                | enforced only on     |
 |                  |             |                | locally originated   |
 |                  |             |                | file system          |
 |                  |             |                | operations (VOPs),   |
 |                  |             |                | and not on RPCs      |
 |                  |             |                | generated via the    |
 |                  |             |                | NFS server.          |
 | MAC support for  |             |                | Improvements in NFS  |
 | NFS Server       | Not done    | Robert Watson  | server credential    |
 |                  |             |                | handling are         |
 |                  |             |                | required to correct  |
 |                  |             |                | this problem, as     |
 |                  |             |                | well as the          |
 |                  |             |                | introduction of new  |
 |                  |             |                | entry points to      |
 |                  |             |                | properly label NFS   |
 |                  |             |                | credentials and      |
 |                  |             |                | perform enforcement  |
 |                  |             |                | properly.            |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | All PCI drivers must |
 |                  |             |                | use busdma for DMA;  |
 |                  |             |                | no use of vtophys()  |
 | busdma in all    | In progress | --             | will be permitted    |
 | PCI drivers      |             |                | for any recent       |
 |                  |             |                | device driver. ISA   |
 |                  |             |                | drivers may be       |
 |                  |             |                | exempt.              |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | Userland bits        |
 | KSE support for  | In progress | Marcel         | implemented, kernel  |
 | alpha            |             | Moolenaar      | bits not             |
 |                  |             |                | implemented.         |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | For kernel API/ABI   |
 |                  |             |                | compatibility        |
 |                  |             |                | reasons, it would be |
 | CAM locking      | In progress | Scott Long,    | desirable to have    |
 |                  |             | Justin Gibbs   | the CAM locking      |
 |                  |             |                | strategy determined  |
 |                  |             |                | and loosely          |
 |                  |             |                | implemented for 5.3. |
 |------------------+-------------+----------------+----------------------|
 |                  |             |                | When running syscons |
 |                  |             |                | on an Ultra-30 with  |
 |                  |             |                | Creator-3D typing    |
 |                  |             |                | characters on the    |
 |                  |             |                | keyboard produces    |
 |                  |             |                | garbage. Problem     |
 |                  |             |                | reported by Kris     |
 | syscons not      |             |                | Kennaway. Debugging  |
 | working on       | Not done    | --             | difficult due to     |
 | Sparc64 Ultra-30 |             |                | lack of this         |
 |                  |             |                | particular           |
 |                  |             |                | configuration among  |
 |                  |             |                | developers and       |
 |                  |             |                | problem isn't        |
 |                  |             |                | present on similar   |
 |                  |             |                | hardware (e.g. no    |
 |                  |             |                | problem on Ultra-60  |
 |                  |             |                | w/Creator-3D).       |
 +------------------------------------------------------------------------+

Documentation items that must be resolved for 5.3

 +-------------------------------------------------------------------------+
 |    Issue     |  Status   |Responsible|           Description            |
 |--------------+-----------+-----------+----------------------------------|
 |              |           |           |The installation documentation    |
 |i386 Floppy   |           |Gavin      |doesn't take into account the new |
 |Installation  |Done       |Atkinson,  |floppy images (with a full kernel |
 |Docs          |           |Bruce A.   |split across multiple disks). This|
 |              |           |Mah        |should be updated.                |
 |              |           |           |References: docs/70485 (closed)   |
 |--------------+-----------+-----------+----------------------------------|
 |              |           |Simon L.   |Finish removing mention of        |
 |Finish        |           |Nielsen,   |individual devices in the hardware|
 |hardware notes|In progress|Christian  |notes and use auto-generated      |
 |trimming      |           |Brueffer   |lists, based on driver manual     |
 |              |           |           |pages, instead.                   |
 |--------------+-----------+-----------+----------------------------------|
 |              |           |           |The snd(4) and pcm(4) drivers have|
 |              |           |           |been renamed but their manual     |
 |              |           |           |pages are still outdated. sound(4)|
 |              |           |           |has to be added and pcm(4),       |
 |              |           |Ruslan     |csa(4), gusc(4), sbc(4), and      |
 |sound(4)      |           |Ermilov,   |uaudio(4) should be revised. Other|
 |related manual|In progress|Simon L.   |manual pages which refer to pcm(4)|
 |pages         |           |Nielsen    |(if any) should possibly be       |
 |              |           |           |revised, too. In addition,        |
 |              |           |           |supported cards list needs to be  |
 |              |           |           |updated.                          |
 |              |           |           |References: Manpage for snd_solo  |
 |              |           |           |on -doc_at_                          |
 |--------------+-----------+-----------+----------------------------------|
 |Sound section |           |Marc       |This section is outdated, some    |
 |in the        |In progress|Fonvieille |rewrites are needed for           |
 |Handbook      |           |           |5.3-RELEASE.                      |
 |--------------+-----------+-----------+----------------------------------|
 |FDP           |           |           |With the snd(4) and pcm(4) drivers|
 |documentations|Not done   |--         |changes, documentations (FAQ)     |
 |related pcm(4)|           |           |regarding the use of these drivers|
 |              |           |           |need an update.                   |
 |--------------+-----------+-----------+----------------------------------|
 |              |           |           |Xin LI pointed out that FreeBSD   |
 |              |           |           |5.3-RELEASE is the first stable   |
 |              |           |           |release on 5.X and it is          |
 |              |           |           |(hopefully) not for early         |
 |Early         |           |Bruce A.   |adopters. Early Adopter's Guide is|
 |Adopter's     |In progress|Mah, Tom   |still useful, but contains a bit  |
 |Guide         |           |Rhodes     |old information. Some parts of    |
 |              |           |           |this guide need a rewrite, and    |
 |              |           |           |this document should be published |
 |              |           |           |as "4.X to 5.X Migration Guide",  |
 |              |           |           |which focuses difference between  |
 |              |           |           |4.X and 5.X.                      |
 |--------------+-----------+-----------+----------------------------------|
 |              |           |           |Some parts are outdated. doc/70485|
 |              |           |           |has been committed, but more work |
 |              |           |           |is needed to reflect the          |
 |              |           |           |realities. bmah_at_ pointed out that |
 |Installation  |Not done   |Tom Rhodes |we should have "quick-start"      |
 |Notes         |           |           |installation guide for each       |
 |              |           |           |platform instead of the current   |
 |              |           |           |ones because they become too long |
 |              |           |           |and difficult to be maintained.   |
 |              |           |           |References: doc/70485 (closed)    |
 |--------------+-----------+-----------+----------------------------------|
 |              |           |           |Update the X11 chapter of the     |
 |              |           |Ken Tom,   |Handbook for X.Org's X11 server.  |
 |Xorg          |Done       |Marc       |References:                       |
 |              |           |Fonvieille |books/handbook/config/chapter.sgml|
 |              |           |           |rev.1.147                         |
 |--------------+-----------+-----------+----------------------------------|
 |              |           |           |Ch.11.4 and 11.5 of the Handbook  |
 |              |           |           |must be updated to mention the new|
 |              |           |           |rc.d scripts and some ports use   |
 |rc.d scripts  |In progress|Tom Rhodes |/etc/rc.conf for their            |
 |              |           |           |configuration.                    |
 |              |           |           |References:                       |
 |              |           |           |books/handbook/config/chapter.sgml|
 |              |           |           |rev.1.170                         |
 |--------------+-----------+-----------+----------------------------------|
 |Handbook's    |           |           |Chapter 8 must be updated to match|
 |kernel        |In progress|Ceri Davies|5.3-RELEASE.                      |
 |configuration |           |           |References: docs/70674 (open)     |
 |chapter       |           |           |                                  |
 |--------------+-----------+-----------+----------------------------------|
 |              |           |           |Some parts of Section 14.10 are   |
 |Handbook's    |Not done   |--         |outdated and are not correct for  |
 |IPsec section |           |           |5.X systems.                      |
 |              |           |           |References: ipsec on -doc_at_        |
 |--------------+-----------+-----------+----------------------------------|
 |Handbook's    |Not done   |--         |Vinum chapter needs to be revised |
 |Vinum chapter |           |           |for 5.X systems.                  |
 +-------------------------------------------------------------------------+

Testing focuses for 5.3-RELEASE

 +------------------------------------------------------------------------+
 |       Issue       |    Status     | Responsible  |     Description     |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | SCHED_ULE provides  |
 |                   |               |              | better              |
 |                   |               |              | interactivity,      |
 |                   |               |              | higher performance, |
 | SCHED_ULE as the  | Needs testing | Jeff         | and the ability to  |
 | default scheduler |               | Roberson     | support pinning and |
 |                   |               |              | affinity. Basic HTT |
 |                   |               |              | scheduling policies |
 |                   |               |              | should be in place  |
 |                   |               |              | for 5.3 also.       |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | KSE has matured to  |
 |                   |               |              | the point of being  |
 |                   |               |              | more stable and     |
 |                   |               |              | POSIX-compliant     |
 |                   |               |              | than the            |
 |                   |               |              | traditional libc_r. |
 |                   |               |              | All Tier-1          |
 |                   |               |              | platforms MUST have |
 | KSE as the        |               | David Xu,    | stable KSE support  |
 | default threads   | Needs testing | Daniel       | for 5.3 in order to |
 | library           |               | Eischen      | support a           |
 |                   |               |              | consistent          |
 |                   |               |              | transition.         |
 |                   |               |              | Additionally, all   |
 |                   |               |              | ports that depend   |
 |                   |               |              | on the pthreads API |
 |                   |               |              | must be modified to |
 |                   |               |              | properly detect and |
 |                   |               |              | support the default |
 |                   |               |              | threading library.  |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | Binutils needs      |
 |                   |               |              | updating in order   |
 | Updated binutils  |               | David        | to support new      |
 | for all platforms | Needs testing | O'Brien      | platforms, newer    |
 |                   |               |              | GDB versions, and   |
 |                   |               |              | Thread Local        |
 |                   |               |              | Storage.            |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | The previous GCC    |
 |                   |               |              | 3.3 snapshot        |
 |                   |               |              | included            |
 |                   |               |              | regressions in      |
 |                   |               |              | alignment of        |
 |                   |               |              | floating point      |
 | gcc 3.3 floating  |               |              | arguments,          |
 | point alignment   | Needs testing |              | resulting in a      |
 | regression        |               |              | substantial         |
 |                   |               |              | performance         |
 |                   |               |              | degradation. The    |
 |                   |               |              | recent GCC 3.4.2    |
 |                   |               |              | import should fix   |
 |                   |               |              | this, but more      |
 |                   |               |              | testing is needed.  |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | Jun Kuriyama has    |
 |                   |               |              | reportged a failed  |
 |                   |               |              | locking assertion   |
 |                   |               |              | with IPv6 TCP       |
 | in6_pcbnotify()   | Needs testing | Robert       | notifications. A    |
 | panic with TCP    |               | Watson       | patch has been      |
 |                   |               |              | committed to the    |
 |                   |               |              | CVS HEAD and        |
 |                   |               |              | RELENG_5 and needs  |
 |                   |               |              | further testing.    |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | To complete support |
 |                   |               |              | for thread-local    |
 |                   |               |              | storage on FreeBSD, |
 |                   |               |              | per-architecture    |
 | Per-platform      |               | Doug Rabson, | changes must be     |
 | Thread-Local      | Needs testing | Marcel       | made. Currently     |
 | Storage           |               | Moolenaar    | pending platforms   |
 |                   |               |              | are amd64, alpha,   |
 |                   |               |              | ia64, i386,         |
 |                   |               |              | sparc64, and        |
 |                   |               |              | powerpc.            |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | High load on SMP    |
 |                   |               |              | systems appears to  |
 |                   |               |              | result in a hard    |
 |                   |               |              | hang related to VM  |
 |                   |               |              | IPI. Doug White has |
 | SMP instability   |               | Doug White,  | prepared a          |
 | under load        | Needs testing | Alan L. Cox  | candidate patch     |
 |                   |               |              | that appears to     |
 |                   |               |              | resolve this        |
 |                   |               |              | instability, which  |
 |                   |               |              | is currently in     |
 |                   |               |              | testing for merge   |
 |                   |               |              | to the CVS HEAD.    |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | Significant parts   |
 |                   |               |              | of the network      |
 |                   |               |              | stack (especially   |
 |                   |               |              | IPv4, UNIX domain   |
 |                   |               |              | IPC, and sockets)   |
 |                   |               |              | now have            |
 |                   |               |              | fine-grained        |
 |                   |               |              | locking of their    |
 |                   |               |              | data structures.    |
 |                   |               |              | It's possible to    |
 |                   |               |              | run many common     |
 |                   |               |              | network subsystems  |
 |                   |               |              | and services        |
 |                   |               |              | without the Giant   |
 | Fine-grained      |               |              | lock. However, a    |
 | network stack     | Needs testing | Robert       | number of device    |
 | locking without   |               | Watson       | drivers and less    |
 | Giant             |               |              | mainstream network  |
 |                   |               |              | subsystems are      |
 |                   |               |              | currently not       |
 |                   |               |              | MPSAFE. By          |
 |                   |               |              | 5.3-RELEASE, it is  |
 |                   |               |              | necessary to have   |
 |                   |               |              | the vast majority   |
 |                   |               |              | of network code     |
 |                   |               |              | running without     |
 |                   |               |              | Giant, including    |
 |                   |               |              | sockets, permitting |
 |                   |               |              | complete            |
 |                   |               |              | local<->remote      |
 |                   |               |              | delivery without    |
 |                   |               |              | grabbing Giant.     |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | As part of the      |
 |                   |               |              | MPSAFE network      |
 |                   |               |              | stack work,         |
 |                   |               |              | delivery of routing |
 |                   |               |              | socket messages was |
 |                   |               |              | moved to queued     |
 |                   |               |              | dispatch via netisr |
 |                   |               |              | rather than direct  |
 |                   |               |              | dispatch from the   |
 |                   |               |              | routing code.       |
 | Increased and     |               |              | However, the risks  |
 | configurable      |               | Robert       | of lost routing     |
 | netisr queue max  | Needs testing | Watson       | messages for        |
 | depth for routing |               |              | routing daemons are |
 | sockets           |               |              | high; respond by    |
 |                   |               |              | increasing the max  |
 |                   |               |              | depth beyond a      |
 |                   |               |              | default interface   |
 |                   |               |              | max depth of 50 to  |
 |                   |               |              | 128, and allow it   |
 |                   |               |              | to be               |
 |                   |               |              | user-configured.    |
 |                   |               |              | This change is now  |
 |                   |               |              | present in CVS HEAD |
 |                   |               |              | and RELENG_5.       |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | KLDs work when      |
 |                   |               |              | loaded from         |
 |                   |               |              | userland, but not   |
 |                   |               | David        | from the loader.    |
 | kld support for   | Needs testing | O'Brien, Ian | kldxref and loader  |
 | amd64             |               | Dowse        | support has been    |
 |                   |               |              | committed to HEAD   |
 |                   |               |              | and RELENG_5 and    |
 |                   |               |              | needs final         |
 |                   |               |              | testing.            |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | Recent changes to   |
 |                   |               |              | the ATA driver      |
 |                   |               |              | trigger a bug on    |
 | ATA panics under  |               | So/ren       | sparc64 that causes |
 | sparc64           | Needs testing | Schmidt,     | a panic on boot.    |
 |                   |               | Scott Long   | This was caused by  |
 |                   |               |              | bugs in busdma that |
 |                   |               |              | have been hopefully |
 |                   |               |              | fixed.              |
 +------------------------------------------------------------------------+

   ----------------------------------------------------------------------

  home   |   contact   |   legal   |   (c) 1995-2004 The FreeBSD Project.
  All rights reserved.
  Last modified: 2004/09/09 23:13:10
Received on Fri Sep 10 2004 - 05:40:45 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:11 UTC