5.2-RELEASE TODO

From: Robert Watson (rwatson_at_FreeBSD.org)
Date: 11/29/03

  • Next message: Justin Smith: "Re: Nvidia problem fixed in current?"
    Date: Sat, 29 Nov 2003 10:12:39 -0500 (EST)
    To: current@FreeBSD.org
    
    

      [NOTE: This is being resent due to a cvs update error that caused
       an un-updated version of the TODO list to be sent out earlier]

    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@FreeBSD.org.

    Show stopper defects for 5.2-RELEASE

     +------------------------------------------------------------------------+
     | Issue | Status |Responsible | Description |
     |-----------+-----------+------------+-----------------------------------|
     |Panic when | | | |
     |rebuilding |Not done |-- |The panic reported in PR kern/58228|
     |ata-raid | | |must be fixed. |
     |arrays | | | |
     |-----------+-----------+------------+-----------------------------------|
     | | | |Kris Kennaway reports that Alpha |
     |pipe/VM | | |packages builds are being silently |
     |corruption |Not done |-- |corrupted and suspects pipe and vm |
     |on Alpha | | |issues. This must be investigated |
     | | | |and resolved. |
     |-----------+-----------+------------+-----------------------------------|
     | | | |panic: Assertion td->td_turnstile |
     | | | |!= NULL failed at |
     | | | |../../../kern/subr_turnstile.c:427 |
     | | | |has been affecting several users on|
     | | | |multiple platforms. Note: further |
     |Turnstile | | |research indicates that these |
     |assertion |In progress|John Baldwin|panics tend to be "double panics" |
     |failure | | |that are a side effect of the |
     | | | |turnstile code in the context of an|
     | | | |existing panic. Reporters of this |
     | | | |panic should make sure to include a|
     | | | |full stack trace so that it's clear|
     | | | |if a second panic is also present. |
     |-----------+-----------+------------+-----------------------------------|
     | | | |The new i386 interrupt code |
     |ACPI kernel| | |requires that ACPI be compiled into|
     |module |In progress|John Baldwin|the kernel if it to be used. Work |
     | | | |is underway to restore the ability |
     | | | |to load it as a module. |
     |-----------+-----------+------------+-----------------------------------|
     | | | |There have been a number of reports|
     |Reported | | |of NFS clients and server hangs. |
     |NFS |In progress| |Unfortunately, these are difficult |
     |failures | | |to reproduce, and have not yet been|
     | | | |traced back to a particular change |
     | | | |or reliable reproduction scenario. |
     +------------------------------------------------------------------------+

    Required features for 5.2-RELEASE

     +------------------------------------------------------------------------+
     | Issue | Status | Responsible | Description |
     |-----------------+-------------+-------------+--------------------------|
     | | | | Kernel and userland bits |
     | KSE support for | | Jake | are implemented but |
     | sparc64 | In progress | Burkholder | untested and known to be |
     | | | | incomplete. Required for |
     | | | | 5.2-RELEASE. |
     |-----------------+-------------+-------------+--------------------------|
     | | | | Userland bits |
     | KSE support for | | Marcel | implemented, kernel bits |
     | alpha | In progress | Moolenaar | not implemented. |
     | | | | Required for |
     | | | | 5.2-RELEASE. |
     |-----------------+-------------+-------------+--------------------------|
     | | | | 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 |
     |--------------------+---------------+----------------+------------------|
     | | | | FAST_IPSEC |
     | | | | currently cannot |
     | | | | be used directly |
     | | | | with the KAME |
     | | | | IPv6 |
     | | | | implementation, |
     | | | | requiring an |
     | | | | additional level |
     | | | | of IP tunnel |
     | | | | indirection to |
     | | | | protect IPv6 |
     | | | | packets when |
     | | | | using hardware |
     | | | | crypto |
     | FAST_IPSEC and | | | acceleration. |
     | KAME compatibility | Not done | -- | 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. |
     |--------------------+---------------+----------------+------------------|
     | | | | The FreeBSD KAME |
     | | | | IPv6 code is now |
     | | | | substantially |
     | | | | dated with |
     | | | | respect to the |
     | | | | KAME vendor |
     | KAME | In progress | Hajimu UMEMOTO | source. The |
     | Synchronization | | | FreeBSD Project |
     | | | | needs to take |
     | | | | initiative in |
     | | | | driving the |
     | | | | merge of new bug |
     | | | | fixes, features, |
     | | | | et al. |
     |--------------------+---------------+----------------+------------------|
     | | | | 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 |
     | truss support for | | | to its inherent |
     | ptrace | In progress | Robert Drehmel | security risks, |
     | | | | it is highly |
     | | | | desirable to |
     | | | | update truss to |
     | | | | operate in a |
     | | | | post-procfs |
     | | | | world. |
     | | | | Dag-Erling |
     | | | | Smorgrav had |
     | | | | prototype |
     | | | | patches; |
     | | | | Robert Drehmel |
     | | | | is developing |
     | | | | and testing |
     | | | | patches now. |
     |--------------------+---------------+----------------+------------------|
     | | | | Apple's Darwin |
     | | | | operating system |
     | | | | has fairly |
     | | | | extensive |
     | Merge of Darwin | | | improvements to |
     | msdosfs, other | Not done | -- | msdosfs and |
     | fixes | | | other kernel |
     | | | | services; these |
     | | | | fixes must be |
     | | | | reviewed and |
     | | | | merged to the |
     | | | | FreeBSD tree. |
     |--------------------+---------------+----------------+------------------|
     | | | | Productionable |
     | | | | support for the |
     | | | | AMD64 platform. |
     | | | | It currently |
     | | | | meets most of |
     | Tier-1 Support for | In progress | Peter Wemm, | the requirements |
     | AMD64 Hammer | | David O'Brien | for the Tier-1 |
     | | | | classification, |
     | | | | but a formal |
     | | | | ruling must be |
     | | | | made in time for |
     | | | | 5.2-RELEASE. |
     |--------------------+---------------+----------------+------------------|
     | | | | 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 for |
     | | | | kernel objects |
     | | | | (such as MAC, |
     | Revised kld build | Not done | -- | PAE, etc) that |
     | infrastructure | | | 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. |
     |--------------------+---------------+----------------+------------------|
     | | | | 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, |
     | | | | and only when a |
     | | | | full-weight |
     | Light-weight | | | context is |
     | interrupt threads, | Not done | -- | required (such |
     | context switches | | | 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 | | | /etc/fstab and |
     | of GBDE and | Not done | -- | easy automated |
     | related transforms | | | deployment. |
     | | | | Improved |
     | | | | integration with |
     | | | | the |
     | | | | configuration, |
     | | | | mounting, and |
     | | | | boot process is |
     | | | | required to make |
     | | | | this feature |
     | | | | more easily |
     | | | | accessible. |
     |--------------------+---------------+----------------+------------------|
     | | | | A process cannot |
     | | | | be interrupted |
     | | | | while waiting on |
     | | | | a lock. Fixing |
     | | | | this requires |
     | rpc.lockd(8) | In progress | Robert Watson | that the RPC |
     | stability | | | code be taught |
     | | | | how to deal with |
     | | | | lock |
     | | | | cancellation and |
     | | | | interruption |
     | | | | events. |
     |--------------------+---------------+----------------+------------------|
     | | | | 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 |
     | | | | appears to exist |
     | Race conditions in | Errata | | where in truss |
     | truss | candidate | Robert Drehmel | 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. |
     |--------------------+---------------+----------------+------------------|
     | gdb -k support for | Not done | Mark Peek | gdb -k doesn't |
     | alpha | | | work on alpha |
     |--------------------+---------------+----------------+------------------|
     | | | | Currently, MAC |
     | | | | protections are |
     | | | | enforced only on |
     | | | | locally |
     | | | | originated file |
     | | | | system |
     | | | | operations |
     | | | | (VOPs), and not |
     | | | | on RPCs |
     | | | | generated via |
     | | | | the NFS server. |
     | | | | Improvements in |
     | MAC support for | | | NFS server |
     | NFS Server | Not done | Robert Watson | 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 PCI | In progress | -- | will be |
     | drivers | | | permitted for |
     | | | | any recent |
     | | | | device driver. |
     | | | | ISA drivers may |
     | | | | be exempt. |
     |--------------------+---------------+----------------+------------------|
     | | | | With improved |
     | | | | support for |
     | | | | threading |
     | | | | primitives, |
     | | | | support is now |
     | | | | required to ease |
     | | | | debugging of |
     | GDB thread support | In progress | Glenn Gombert | threaded |
     | | | | applications. |
     | | | | Ideally, this |
     | | | | support will |
     | | | | work for both |
     | | | | libthr and |
     | | | | libkse threading |
     | | | | models. |
     |--------------------+---------------+----------------+------------------|
     | | | | Prebinding |
     | | | | reduces |
     | | | | executable |
     | | | | startup time by |
     | | | | lowering the |
     | | | | expense of |
     | | | | symbol lookup, |
     | | | | binding and |
     | | | | relocation. This |
     | | | | is accomplished |
     | | | | by a prebinding |
     | | | | data file or ELF |
     | | | | segment that |
     | | | | contains |
     | | | | intermediate |
     | | | | lookup results |
     | | | | allowing fast |
     | | | | symbol binding |
     | | | | and relocation, |
     | Per object ELF | | | provided that |
     | Prebinding support | In progress | Matthew Dodd | dependent |
     | | | | objects remain |
     | | | | unchanged since |
     | | | | the prebinding |
     | | | | information was |
     | | | | generated. |
     | | | | |
     | | | | The benefits of |
     | | | | prebinding are |
     | | | | realized when |
     | | | | running |
     | | | | executables that |
     | | | | use a large |
     | | | | (>10) number of |
     | | | | shared |
     | | | | libraries. C++ |
     | | | | applications |
     | | | | also benefit as |
     | | | | they contain a |
     | | | | large number of |
     | | | | relocations. |
     |--------------------+---------------+----------------+------------------|
     | | | | The LOR reported |
     | | | | in PR kern/55175 |
     | | | | needs to be |
     | filedesc LOR | Not done | -- | fixed. Filedesc |
     | | | | locking needs to |
     | | | | be heavily |
     | | | | reviewed in |
     | | | | general. |
     |--------------------+---------------+----------------+------------------|
     | | | | Brian Feldman |
     | | | | has submitted |
     | | | | patches to |
     | | | | improve the |
     | | | | consistency of |
     | | | | the pathnames |
     | | | | passed into the |
     | MAC Framework | In progress | Robert Watson | MAC Framework |
     | devfs path fixes | | | devfs labeling |
     | | | | entry points. |
     | | | | These patches |
     | | | | need to be |
     | | | | thoroughly |
     | | | | reviewed and |
     | | | | tested, then |
     | | | | merged. |
     |--------------------+---------------+----------------+------------------|
     | | | | Many systems |
     | | | | supporting |
     | | | | POSIX.1e ACLs |
     | | | | permit a minor |
     | | | | violation to |
     | | | | that |
     | | | | specification, |
     | | | | in which the |
     | | | | ACL_MASK entry |
     | | | | overrides the |
     | ACL_MASK override | | | umask, rather |
     | of umask support | In progress | Robert Watson | than being |
     | in UFS | | | intersected with |
     | | | | it. The |
     | | | | resulting |
     | | | | semantics can be |
     | | | | useful in |
     | | | | group-oriented |
     | | | | environments, |
     | | | | and as such |
     | | | | would be very |
     | | | | helpful on |
     | | | | FreeBSD. |
     |--------------------+---------------+----------------+------------------|
     | | | | 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 |
     | make -DUSE_KQUEUE | | | perspective of |
     | causes lockup with | | | building FreeBSD |
     | buildworld | Needs testing | | quickly as a |
     | -jBIGNUM | | | developer, but |
     | | | | also because |
     | | | | it's an |
     | | | | instability that |
     | | | | could show up |
     | | | | under other high |
     | | | | load and heavy |
     | | | | use of KQueues. |
     | | | | See PR |
     | | | | kern/57945 for a |
     | | | | proposed patch |
     | | | | and details. |
     +------------------------------------------------------------------------+

    Documentation items desired for 5.2

     +------------------------------------------------------------------------+
     | Issue | Status | Responsible | Description |
     |---------------+-------------+--------------+---------------------------|
     | | | | The Early Adopters Guide |
     | | | | needs to be revised, |
     | Revise EAG | In progress | 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 of Giant for|
     |PCM locking and | | |quite a while, but LOR |
     |performance |Needs testing|-- |problems persist along with |
     |issues | | |reports of poor audio |
     | | | |performance under load. |
     | | | |These problems are believed |
     | | | |to have been corrected, but |
     | | | |more testing is desired. |
     |----------------+-------------+------------+----------------------------|
     |ATA driver | | |New ATA model has arrived, |
     |structural | |So/ren |supporting fine-grained |
     |improvements, |Needs testing|Schmidt |locking, and more. Much |
     |MPsafety | | |testing is needed to ensure |
     | | | |no regressions. |
     |----------------+-------------+------------+----------------------------|
     | | | |Sysinstall and libdisk has |
     |GPT support for |Needs testing|Marcel |been overhauled to support |
     |sysinstall | |Moolenaar |the GPT partition scheme |
     | | | |used on ia64. |
     |----------------+-------------+------------+----------------------------|
     | | | |Interrupt routing on ia32 |
     | | | |has been completely |
     | | | |re-written to support ACPI |
     | | | |hints for PCI interrupt |
     |Complete the | | |routing, along with ACPI |
     |APIC PCI | | |hints for CPU enumeration. |
     |interrupt |Needs testing|John Baldwin|There have been reports of |
     |routing support | | |interrupt storms or a |
     | | | |failure for interrupts to |
     | | | |deliver, possibly a result |
     | | | |of bad ACPI information. |
     | | | |These problems need to be |
     | | | |tracked down and resolved. |
     |----------------+-------------+------------+----------------------------|
     | | | |Performing a crashdump on an|
     |ATAng crashdump | |So/ren |ATA device can result in a |
     |causes disk |Needs testing|Schmidt, Tor|corrupted MBR record. Tor |
     |corruption | |Egge |has a possible patch for |
     | | | |this. |
     |----------------+-------------+------------+----------------------------|
     | | | |The ACPI code registers |
     | | | |eventhandlers that are not |
     | | | |unregistered when ACPI shuts|
     |SMP users report| | |down during system shutdown.|
     |acpi_cpu panic |Needs testing|Nate Lawson |The result can be a panic |
     |during shutdown | | |during 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 entropy |
     |random_harvest | | |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 |
     | | | |with malloc table |
     |Vinum data | | |inconsistency at 0xc2053c00 |
     |corruption and | | |from vinumio.c:755 has been |
     |memory |Needs testing|Greg Lehey |experienced when Vinum |
     |allocation | | |auto-configuration fails. |
     |problems | | |Also, 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. |
     +------------------------------------------------------------------------+

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

      home | contact | legal | (c) 1995-2003 The FreeBSD Project.
      All rights reserved.
      Last modified: 2003/11/25 20:16:25
    _______________________________________________
    freebsd-current@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-current
    To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"


  • Next message: Justin Smith: "Re: Nvidia problem fixed in current?"

    Relevant Pages

    • Re: 5.3-RELEASE TODO
      ... > This is an automated weekly mailing of the FreeBSD 5.3 open issues list. ... > Required features for 5.3-RELEASE ...
      (freebsd-current)
    • 5.2-RELEASE TODO
      ... This is an automated bi-weekly mailing of the FreeBSD 5.2 open issues list. ... Required features for 5.2-RELEASE ...
      (freebsd-current)
    • 5.3-RELEASE TODO
      ... This is an automated weekly mailing of the FreeBSD 5.3 open issues list. ... Required features for 5.3-RELEASE ...
      (freebsd-current)
    • 5.2-RELEASE TODO
      ... This is an automated bi-weekly mailing of the FreeBSD 5.2 open issues list. ... Required features for 5.2-RELEASE ...
      (freebsd-current)
    • 5.2-RELEASE TODO
      ... This is an automated bi-weekly mailing of the FreeBSD 5.2 open issues list. ... Required features for 5.2-RELEASE ...
      (freebsd-current)