5.3-RELEASE TODO

From: Scott Long <scottl_at_FreeBSD.org>
Date: Fri, 3 Sep 2004 01:41:12 -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    |
 | NFS over IPv6      | Not done    | -           | not functioning       |
 | problems           |             |             | correctly as of the   |
 |                    |             |             | improved NFS support  |
 |                    |             |             | for disconnection     |
 |                    |             |             | changes.              |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | There are reports of  |
 |                    |             |             | applications wedging  |
 |                    |             |             | in poll() and         |
 |                    |             |             | select() while        |
 |                    |             |             | running the network   |
 | poll()/select()    |             |             | stack without the     |
 | application wedge  |             | Robert      | Giant lock. A recent  |
 | reports with       | In progress | Watson      | sleepq change appears |
 | debug.mpsafenet=1  |             |             | to have caused some   |
 |                    |             |             | of the observed       |
 |                    |             |             | problems to go away   |
 |                    |             |             | (others are difficult |
 |                    |             |             | to test for due to    |
 |                    |             |             | recent SMP            |
 |                    |             |             | instability).         |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | 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.         |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | Recent changes to the |
 |                    |             |             | ATA driver trigger a  |
 |                    |             | So/ren      | bug on sparc64 that   |
 | ATA panics under   | In progress | Schmidt,    | causes a panic on     |
 | sparc64            |             | Scott Long  | boot. A work-around   |
 |                    |             |             | has been developed    |
 |                    |             |             | but needs to be       |
 |                    |             |             | committed.            |
 |--------------------+-------------+-------------+-----------------------|
 |                    |             |             | 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       |
 |-----------------+-------------+--------------+-------------------------|
 | GDB 6.1 kernel  |             |              | GDB 6.1.1 import does   |
 | debugging       | In progress | Marcel       | not include FreeBSD     |
 | support         |             | Moolenaar    | kernel debugging        |
 |                 |             |              | support.                |
 |-----------------+-------------+--------------+-------------------------|
 | 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.            |
 |-----------------+-------------+--------------+-------------------------|
 |                 |             |              | KLDs work when loaded   |
 |                 |             |              | from userland, but not  |
 |                 |             |              | from the loader.        |
 | kld support for |             | David        | kldxref and loader      |
 | amd64           | In progress | O'Brien, Ian | support has been        |
 |                 |             | Dowse        | committed to 6-CURRENT  |
 |                 |             |              | and will hopefully be   |
 |                 |             |              | backported to RELENG_5  |
 |                 |             |              | once it is tested.      |
 |-----------------+-------------+--------------+-------------------------|
 |                 |             |              | 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        |
 |                   |             |               | doesn't take into    |
 | i386 Floppy       |             | Gavin         | account the new      |
 | Installation Docs | Done        | Atkinson,     | floppy images (with  |
 |                   |             | Bruce A. Mah  | a full kernel split  |
 |                   |             |               | across multiple      |
 |                   |             |               | disks). This should  |
 |                   |             |               | be updated.          |
 |-------------------+-------------+---------------+----------------------|
 |                   |             |               | Finish removing      |
 |                   |             |               | mention of           |
 |                   |             | Simon L.      | individual devices   |
 | Finish hardware   |             | Nielsen,      | in the hardware      |
 | notes trimming    | In progress | Christian     | notes and use        |
 |                   |             | Brueffer      | auto-generated       |
 |                   |             |               | 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),     |
 | sound(4) related  | In progress | Ermilov,      | sbc(4), and          |
 | manual pages      |             | Simon L.      | uaudio(4) should be  |
 |                   |             | Nielsen       | revised. Other       |
 |                   |             |               | manual pages which   |
 |                   |             |               | refer to pcm(4) (if  |
 |                   |             |               | any) should possibly |
 |                   |             |               | be revised, too. In  |
 |                   |             |               | addition, supported  |
 |                   |             |               | cards list needs to  |
 |                   |             |               | be updated.          |
 |-------------------+-------------+---------------+----------------------|
 |                   |             |               | This section is      |
 | Sound section in  | In progress | Marc          | outdated, some       |
 | the Handbook      |             | Fonvieille    | rewrites are needed  |
 |                   |             |               | for 5.3-RELEASE.     |
 |-------------------+-------------+---------------+----------------------|
 |                   |             |               | With the snd(4) and  |
 |                   |             |               | pcm(4) drivers       |
 | FDP               |             |               | changes,             |
 | documentations    | Not done    | --            | 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 adopters.      |
 |                   |             |               | Early Adopter's      |
 |                   |             |               | Guide is still       |
 | Early Adopter's   | In progress | Bruce A. Mah, | useful, but contains |
 | Guide             |             | Tom Rhodes    | a bit 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 we  |
 | Installation      | Not done    | Tom Rhodes    | should have          |
 | Notes             |             |               | "quick-start"        |
 |                   |             |               | installation guide   |
 |                   |             |               | for each platform    |
 |                   |             |               | instead of the       |
 |                   |             |               | current ones because |
 |                   |             |               | they become too long |
 |                   |             |               | and difficult to be  |
 |                   |             |               | maintained.          |
 |-------------------+-------------+---------------+----------------------|
 |                   |             |               | Update the X11       |
 | Xorg              | Done        | Ken Tom, Marc | chapter of the       |
 |                   |             | Fonvieille    | Handbook for X.Org's |
 |                   |             |               | X11 server.          |
 |-------------------+-------------+---------------+----------------------|
 |                   |             |               | Ch.11.4 and 11.5 of  |
 |                   |             |               | the Handbook must be |
 |                   |             |               | updated to mention   |
 | rc.d scripts      | In progress | Tom Rhodes    | the new rc.d scripts |
 |                   |             |               | and some ports use   |
 |                   |             |               | /etc/rc.conf for     |
 |                   |             |               | their configuration. |
 |-------------------+-------------+---------------+----------------------|
 | Handbook's kernel |             |               | Chapter 8 must be    |
 | configuration     | In progress | Ceri Davies   | updated to match     |
 | chapter           |             |               | 5.3-RELEASE.         |
 |-------------------+-------------+---------------+----------------------|
 |                   |             |               | Some parts of        |
 | Handbook's IPsec  |             |               | Section 14.10 are    |
 | section           | Not done    | --            | outdated and are not |
 |                   |             |               | correct for 5.X      |
 |                   |             |               | systems.             |
 |-------------------+-------------+---------------+----------------------|
 | Handbook's Vinum  |             |               | Vinum chapter needs  |
 | chapter           | Not done    | --            | to be revised 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.       |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | Attempts to use     |
 |                   |               |              | make(1) with        |
 |                   |               |              | KQueues appears to  |
 |                   |               |              | result in a kernel  |
 |                   |               |              | hang under "heavy   |
 |                   |               |              | load". It would be  |
 |                   |               |              | desirable to fix    |
 |                   |               |              | this both from the  |
 |                   |               |              | perspective of      |
 |                   |               |              | building FreeBSD    |
 |                   |               |              | quickly as a        |
 | make -DUSE_KQUEUE |               | Brian        | developer, but also |
 | causes lockup     | Needs testing | Feldman,     | because it's an     |
 | with buildworld   |               | John-Mark    | instability that    |
 | -jBIGNUM          |               | Gurney       | could show up under |
 |                   |               |              | other high load and |
 |                   |               |              | heavy use of        |
 |                   |               |              | KQueues. See PR     |
 |                   |               |              | kern/57945 for a    |
 |                   |               |              | proposed patch and  |
 |                   |               |              | details. This       |
 |                   |               |              | appear to be the    |
 |                   |               |              | product of a        |
 |                   |               |              | locking problem,    |
 |                   |               |              | and must be fixed   |
 |                   |               |              | for 5.3.            |
 |-------------------+---------------+--------------+---------------------|
 |                   |               |              | 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.       |
 +------------------------------------------------------------------------+

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

  home   |   contact   |   legal   |   (c) 1995-2004 The FreeBSD Project.
  All rights reserved.
  Last modified: 2004/09/03 03:59:35
Received on Fri Sep 03 2004 - 05:41:20 UTC

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