5.2-RELEASE TODO

Robert Watson rwatson at FreeBSD.org
Mon Dec 29 07:02:21 PST 2003


This is an automated bi-weekly mailing of the FreeBSD 5.2 open issues list.
The live version of this list is available at:

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

Automated mailing of this list will continue through the release of
FreeBSD 5.2.


                          FreeBSD 5.2 Open Issues

                                Open Issues

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

Show stopper defects for 5.2-RELEASE

 +------------------------------------------------------------------------+
 |    Issue     |    Status     |    Responsible     |    Description     |
 +------------------------------------------------------------------------+

Required features for 5.2-RELEASE

 +------------------------------------------------------------------------+
 |      Issue      |   Status    | Responsible |       Description        |
 |-----------------+-------------+-------------+--------------------------|
 |                 |             |             | Significant parts of the |
 |                 |             |             | network stack            |
 |                 |             |             | (especially IPv4 and     |
 |                 |             |             | IPv6) now have           |
 |                 |             |             | fine-grained locking of  |
 |                 |             |             | their data structures.   |
 |                 |             |             | However, it is not yet   |
 |                 |             |             | possible for the netisr  |
 |                 |             |             | threads to run without   |
 | Fine-grained    |             |             | Giant, due to            |
 | network stack   | In progress | Sam Leffler | dependencies on sockets, |
 | locking without |             |             | routing, etc. A          |
 | Giant           |             |             | 5.2-RELEASE goal is to   |
 |                 |             |             | have the network stack   |
 |                 |             |             | running largely without  |
 |                 |             |             | Giant, which should      |
 |                 |             |             | substantially improve    |
 |                 |             |             | performance of the       |
 |                 |             |             | stack, as well as other  |
 |                 |             |             | system components by     |
 |                 |             |             | reducing contention on   |
 |                 |             |             | Giant.                   |
 +------------------------------------------------------------------------+

Desired features for 5.2-RELEASE

 +------------------------------------------------------------------------+
 |        Issue        |   Status    | Responsible |     Description      |
 |---------------------+-------------+-------------+----------------------|
 |                     |             |             | The FreeBSD KAME     |
 |                     |             |             | IPv6 code is now     |
 |                     |             |             | substantially dated  |
 |                     |             |             | with respect to the  |
 | KAME                |             | Hajimu      | KAME vendor source.  |
 | Synchronization     | In progress | UMEMOTO     | The FreeBSD Project  |
 |                     |             |             | needs to take        |
 |                     |             |             | initiative in        |
 |                     |             |             | driving the merge of |
 |                     |             |             | new bug fixes,       |
 |                     |             |             | features, et al.     |
 |---------------------+-------------+-------------+----------------------|
 |                     |             |             | Currently, there are |
 |                     |             |             | two classes of       |
 |                     |             |             | interrupt handlers   |
 |                     |             |             | in 5.x: fast         |
 |                     |             |             | interrupt handlers   |
 |                     |             |             | which run entirely   |
 |                     |             |             | in interrupt         |
 |                     |             |             | context, and         |
 |                     |             |             | heavy-weight         |
 |                     |             |             | handlers which       |
 |                     |             |             | execute in a         |
 |                     |             |             | full-weight kernel   |
 |                     |             |             | interrupt thread. It |
 |                     |             |             | is possible to       |
 |                     |             |             | optimize interrupt   |
 |                     |             |             | thread context       |
 |                     |             |             | management such that |
 |                     |             |             | a light-weight       |
 |                     |             |             | context switch is    |
 |                     |             |             | performed to begin   |
 |                     |             |             | execution of the     |
 |                     |             |             | interrupt thread in  |
 |                     |             |             | the handler context, |
 | Light-weight        |             |             | and only when a      |
 | interrupt threads,  | Not done    | --          | full-weight context  |
 | context switches    |             |             | is required (such as |
 |                     |             |             | sleeping on a lock)  |
 |                     |             |             | is that cost         |
 |                     |             |             | required. This       |
 |                     |             |             | optimization should  |
 |                     |             |             | substantially        |
 |                     |             |             | improve interrupt    |
 |                     |             |             | latency. There are   |
 |                     |             |             | also additional      |
 |                     |             |             | kernel thread        |
 |                     |             |             | context switch       |
 |                     |             |             | optimizations that   |
 |                     |             |             | can be made to       |
 |                     |             |             | improve the          |
 |                     |             |             | performance of       |
 |                     |             |             | thread workers in    |
 |                     |             |             | the kernel, such as  |
 |                     |             |             | found in the network |
 |                     |             |             | stack, crypto worker |
 |                     |             |             | threads, and GEOM.   |
 |                     |             |             | Bosko Milekic has    |
 |                     |             |             | done substantial     |
 |                     |             |             | prototyping work,    |
 |                     |             |             | and should be        |
 |                     |             |             | coordinated with.    |
 |---------------------+-------------+-------------+----------------------|
 |                     |             |             | Currently, gbde must |
 |                     |             |             | be manually          |
 |                     |             |             | configured at        |
 |                     |             |             | run-time each time   |
 |                     |             |             | an encrypted disk    |
 |                     |             |             | device is mounted.   |
 |                     |             |             | This prevents easy   |
 | Run-time            |             |             | integration into     |
 | autoconfiguration   | Not done    | --          | /etc/fstab and easy  |
 | of GBDE and related |             |             | automated            |
 | transforms          |             |             | deployment. Improved |
 |                     |             |             | integration with the |
 |                     |             |             | configuration,       |
 |                     |             |             | mounting, and boot   |
 |                     |             |             | process is required  |
 |                     |             |             | to make this feature |
 |                     |             |             | more easily          |
 |                     |             |             | accessible.          |
 |---------------------+-------------+-------------+----------------------|
 | gdb -k support for  | Not done    | Mark Peek   | gdb -k doesn't work  |
 | alpha               |             |             | on alpha             |
 +------------------------------------------------------------------------+

Documentation items desired for 5.2

 +------------------------------------------------------------------------+
 |     Issue     |   Status    | Responsible  |        Description        |
 |---------------+-------------+--------------+---------------------------|
 |               |             |              | The Early Adopters Guide  |
 |               |             |              | needs to be revised,      |
 | Revise EAG    | Done        | Bruce A. Mah | hopefully for the last    |
 |               |             |              | time, to reflect the      |
 |               |             |              | state of 5.2.             |
 |---------------+-------------+--------------+---------------------------|
 |               |             |              | Ongoing project to remove |
 |               |             |              | redundancy in             |
 | Trim Hardware |             |              | documentation by removing |
 | Notes         | In progress | Bruce A. Mah | lists of specific devices |
 |               |             |              | from the hardware notes   |
 |               |             |              | and pointing readers to   |
 |               |             |              | driver manpages.          |
 +------------------------------------------------------------------------+

Testing focuses for 5.2-RELEASE

 +---------------------------------------------------------------------------+
 |    Issue     |   Status    |Responsible|           Description            |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |The PCM audio framework and device|
 |              |             |           |drivers have been locked and free |
 |PCM locking   |             |           |of Giant for quite a while, but   |
 |and           |Needs testing|--         |LOR problems persist along with   |
 |performance   |             |           |reports of poor audio performance |
 |issues        |             |           |under load. These problems are    |
 |              |             |           |believed to have been corrected,  |
 |              |             |           |but more testing is desired.      |
 |--------------+-------------+-----------+----------------------------------|
 |ATA driver    |             |           |New ATA model has arrived,        |
 |structural    |Needs testing|So/ren     |supporting fine-grained locking,  |
 |improvements, |             |Schmidt    |and more. Much testing is needed  |
 |MPsafety      |             |           |to ensure no regressions.         |
 |--------------+-------------+-----------+----------------------------------|
 |GPT support   |             |Marcel     |Sysinstall and libdisk has been   |
 |for sysinstall|Needs testing|Moolenaar  |overhauled to support the GPT     |
 |              |             |           |partition scheme used on ia64.    |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |Interrupt routing on ia32 has been|
 |              |             |           |completely re-written to support  |
 |Complete the  |             |           |ACPI hints for PCI interrupt      |
 |APIC PCI      |             |           |routing, along with ACPI hints for|
 |interrupt     |Needs testing|John       |CPU enumeration. There have been  |
 |routing       |             |Baldwin    |reports of interrupt storms or a  |
 |support       |             |           |failure for interrupts to deliver,|
 |              |             |           |possibly a result of bad ACPI     |
 |              |             |           |information. These problems need  |
 |              |             |           |to be tracked down and resolved.  |
 |--------------+-------------+-----------+----------------------------------|
 |ATAng         |             |So/ren     |Performing a crashdump on an ATA  |
 |crashdump     |Needs testing|Schmidt,   |device can result in a corrupted  |
 |causes disk   |             |Tor Egge   |MBR record. Tor has a possible    |
 |corruption    |             |           |patch for this.                   |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |The ACPI code registers           |
 |SMP users     |             |           |eventhandlers that are not        |
 |report        |             |           |unregistered when ACPI shuts down |
 |acpi_cpu panic|Needs testing|Nate Lawson|during system shutdown. The result|
 |during        |             |           |can be a panic during shutdown.   |
 |shutdown      |             |           |Nate is circulating a patch that  |
 |              |             |           |is believed to correct this       |
 |              |             |           |problem.                          |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |There are reports of witness      |
 |              |             |           |panics in                         |
 |              |             |           |random_harvest_internal() due to  |
 |              |             |           |last minute changes in interrupt  |
 |random_harvest|             |           |entropy harvesting code. Systems  |
 |panic         |Needs testing|Mark Murray|running with INVARIANTS will      |
 |              |             |           |rapidly panic. Update: a          |
 |              |             |           |workaround has been committed, but|
 |              |             |           |the original change must either be|
 |              |             |           |backed out or revised before we   |
 |              |             |           |can cut the first beta.           |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |In the last week, reports of two  |
 |              |             |           |new (and possibly related) Vinum  |
 |              |             |           |failures have come to light: a    |
 |              |             |           |warning message of vinum: exiting |
 |Vinum data    |             |           |with malloc table inconsistency at|
 |corruption and|             |           |0xc2053c00 from vinumio.c:755 has |
 |memory        |Needs testing|Greg Lehey |been experienced when Vinum       |
 |allocation    |             |           |auto-configuration fails. Also,   |
 |problems      |             |           |even simple test cases for Vinum  |
 |              |             |           |I/O appear to result in incorrect |
 |              |             |           |data being returned from disk,    |
 |              |             |           |rendering Vinum unusable in       |
 |              |             |           |several reproduceable             |
 |              |             |           |configurations.                   |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |The new i386 inpterrupt code      |
 |              |             |           |should work whether the acpi      |
 |ACPI kernel   |             |John       |driver is compiled into the kernel|
 |module        |Needs testing|Baldwin    |or loaded as a module. The loader |
 |              |             |           |should automatically load the     |
 |              |             |           |module if it's not already        |
 |              |             |           |compiled in.                      |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |There have been a number of       |
 |              |             |           |reports of NFS clients and server |
 |Reported NFS  |             |           |hangs. Unfortunately, these are   |
 |failures      |Unknown      |           |difficult to reproduce, and have  |
 |              |             |           |not yet been traced back to a     |
 |              |             |           |particular change or reliable     |
 |              |             |           |reproduction scenario.            |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |panic: Assertion td->td_turnstile |
 |              |             |           |!= NULL failed at                 |
 |Turnstile     |             |John       |../../../kern/subr_turnstile.c:427|
 |assertion     |Unknown      |Baldwin    |has been affecting several users  |
 |failure       |             |           |on multiple platforms. This has   |
 |              |             |           |hopefully been fixed now, but more|
 |              |             |           |testinig is needed.               |
 |--------------+-------------+-----------+----------------------------------|
 |              |             |           |There is a repeatable panic       |
 |              |             |           |happening for many people while   |
 |fsync panic   |             |           |installing 5.2-RC1 when           |
 |while         |             |           |softupdates are enabled on the    |
 |installing    |             |Doug White,|root partition. This was being    |
 |with          |Needs testing|Jeff       |triggered by sysinstall doing a   |
 |softupdates   |             |Roberson   |forced unmount of devfs while node|
 |enabled       |             |           |where still active. VFS has been  |
 |              |             |           |fixed to deal with this better,   |
 |              |             |           |and sysinstall has bee fixed to   |
 |              |             |           |not do the forced unmount.        |
 +---------------------------------------------------------------------------+

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

  home   |   contact   |   legal   |   (c) 1995-2003 The FreeBSD Project.
  All rights reserved.
  Last modified: 2003/12/18 21:43:56


More information about the freebsd-current mailing list