From owner-freebsd-current@FreeBSD.ORG Tue Jul 29 07:01:12 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E71AD37B405 for ; Tue, 29 Jul 2003 07:01:11 -0700 (PDT) Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id 586DB43F75 for ; Tue, 29 Jul 2003 07:01:10 -0700 (PDT) (envelope-from robert@fledge.watson.org) Received: from fledge.watson.org (localhost [127.0.0.1]) by fledge.watson.org (8.12.9/8.12.9) with ESMTP id h6TE0Gai075227 for ; Tue, 29 Jul 2003 10:00:16 -0400 (EDT) (envelope-from robert@fledge.watson.org) Received: (from robert@localhost) by fledge.watson.org (8.12.9/8.12.9/Submit) id h6TE0Gn5075226 for current@FreeBSD.org; Tue, 29 Jul 2003 10:00:16 -0400 (EDT) Date: Tue, 29 Jul 2003 10:00:16 -0400 (EDT) Message-Id: <200307291400.h6TE0Gn5075226@fledge.watson.org> From: Robert Watson To: current@FreeBSD.org Subject: 5.2-RELEASE TODO X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: re@FreeBSD.org List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Jul 2003 14:01:12 -0000 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. Must Resolve Issues for 5.2-RELEASE +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | |---------------------+----------+-----------------+---------------------| | | | | KSE M:N threading | | | | | support is reaching | | | | | experimental yet | | | | Julian | usable status on | | Production-quality | In | Elischer, David | i386 for | | M:N threading | progress | Xu, Daniel | 5.1-RELEASE. M:N | | | | Eischen | threading should be | | | | | productionable and | | | | | usable on all | | | | | platforms by | | | | | 5.2-RELEASE. | |---------------------+----------+-----------------+---------------------| | | | | Currently, the MD | | | | | elements of KSE are | | | | | present only for | | | | | the i386 platform, | | | | | limiting use of KSE | | | | | to the i386 | | | | | platform. It is | | | | | highly desirable to | | KSE support for | | Jake | make KSE available | | sparc64, alpha, | -- | Burkholder, --, | on non-i386 | | ia64 | | -- | platforms for | | | | | 5.2-RELEASE so that | | | | | KSE can see more | | | | | broad exposure, and | | | | | the performance | | | | | benefits of KSE can | | | | | be visible to users | | | | | of the 64-bit | | | | | FreeBSD | | | | | architectures. | |---------------------+----------+-----------------+---------------------| | | | | Kris Kennaway | | | | | reports high | | | | | instability of | | | | | 5-CURRENT on ia64 | | | In | Marcel | machines, such as | | ia64 stability | Progress | Moolenaar | the pluto* | | | | | machines. These | | | | | problems need to be | | | | | fixed in order to | | | | | get a successful | | | | | package build. | |---------------------+----------+-----------------+---------------------| | | | | ia64 serial console | | | | | support is reported | | | | | to not be | | | | | functional on HP | | | In | Marcel | Itanium2 platforms. | | ia64 sio support | progress | Moolenaar, | A reworking of the | | | | Warner Losh | sio driver to | | | | | improve platform | | | | | independence and | | | | | bus handling is | | | | | likely needed. | |---------------------+----------+-----------------+---------------------| | | | | 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 KAME | -- | -- | acceleration. This | | compatibility | | | 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 | | | KAME vendor source. | | Synchronization | -- | -- | The 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 to | | truss support for | In | | its inherent | | ptrace | 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 | -- | -- | msdosfs and other | | fixes | | | kernel services; | | | | | these fixes must be | | | | | reviewed and merged | | | | | to the FreeBSD | | | | | tree. | |---------------------+----------+-----------------+---------------------| | | | | Port syscons to | | | | | sparc64. Add device | | | | | drivers for sun | | | | | mice and keyboards. | | | | | Allow for more than | | sparc64 adaptation | In | | 3 bits of | | of syscons | progress | Jake Burkholder | background colour | | | | | in syscons. Creator | | | | | frame buffer device | | | | | driver. In the | | | | | process, generally | | | | | improve the MI-ness | | | | | of syscons. | |---------------------+----------+-----------------+---------------------| | | | | Many systems | | | | | supporting POSIX.1e | | | | | ACLs permit a minor | | | | | violation to that | | | | | specification, in | | | | | which the ACL_MASK | | | | | entry overrides the | | ACL_MASK override | In | | umask, rather than | | of umask support in | progress | Robert Watson | being intersected | | UFS | | | with it. The | | | | | resulting semantics | | | | | can be useful in | | | | | group-oriented | | | | | environments, and | | | | | as such would be | | | | | very helpful on | | | | | FreeBSD. | |---------------------+----------+-----------------+---------------------| | | | | 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 | | | | | Giant, due to | | Fine-grained | | | dependencies on | | network stack | In | Jeffrey Hsu, | sockets, routing, | | locking without | progress | Seigo Tanimura | etc. A 5.2-RELEASE | | Giant | | | 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. | |---------------------+----------+-----------------+---------------------| | | | | Move ATA commands | | | | | into requests, so | | | | | that they can be | | | | | linked together, | | | | | centralize request | | | | | queue management | | | | | permitting direct | | ATA driver | | | DMA of ATA | | structural | In | So/ren Schmidt | commands. These | | improvements, | progress | | architectural | | MPsafety | | | changes will also | | | | | facilitate complete | | | | | MP-safety of the | | | | | ATA driver suite, | | | | | and dramatically | | | | | improve support for | | | | | Promise RAID | | | | | controllers. | |---------------------+----------+-----------------+---------------------| | | | | Productionable | | | | | support for the | | | | | AMD64 platform. | | | | | Currently, AMD64 | | | | | runs fully in | | | | | 32-bit emulation | | Tier-1 Support for | In | Peter Wemm, | mode, and boots to | | AMD64 Hammer | progress | David O'Brien | single-user in | | | | | 64-bit mode. We | | | | | expect full | | | | | production support | | | | | for the AMD64 | | | | | architecture in | | | | | 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 | | Revised kld build | -- | -- | MAC, 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 | | Light-weight | | | when a full-weight | | interrupt threads, | -- | -- | context is required | | context switches | | | (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. | |---------------------+----------+-----------------+---------------------| | | | | With the | | | | | introduction of | | | | | extensive PAM and | | | | | NSS support in | | | | | 5.0-RELEASE and | | | | | 5.1-RELEASE, | | Support for a fully | In | Gordon Tetlow | support for a fully | | dynamic system | progress | | dynamically linked | | | | | system is desired. | | | | | Gordon Tetlow has | | | | | in-progress patches | | | | | to post for review | | | | | following the 5.1 | | | | | release cycle. | |---------------------+----------+-----------------+---------------------| | | | | Existing interrupt | | | | | routing code is not | | | | | able to correctly | | | | | determine the | | | | | interrupt routing | | Complete the APIC | | | of PCI devices that | | PCI interrupt | -- | -- | are behind | | routing support | | | PCI-to-PCI bridges | | | | | when using APIC | | | | | Full Table routing | | | | | (with non-legacy | | | | | interrupts above | | | | | 15). | |---------------------+----------+-----------------+---------------------| | | | | 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 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. | |---------------------+----------+-----------------+---------------------| | | | | Brian Feldman has | | | | | submitted patches | | | | | to improve the | | | | | consistency of the | | | | | pathnames passed | | MAC Framework devfs | In | | into the MAC | | path fixes | progress | Robert Watson | Framework devfs | | | | | labeling entry | | | | | points. These | | | | | patches need to be | | | | | thoroughly reviewed | | | | | and tested, then | | | | | merged. | |---------------------+----------+-----------------+---------------------| | | | | A process cannot be | | | | | interrupted while | | | | | waiting on a lock. | | | | | Fixing this | | rpc.lockd(8) | In | Robert Watson | requires that the | | stability | progress | | rpc code be taught | | | | | how to deal with | | | | | lock cancellation | | | | | and interruption | | | | | events. | +------------------------------------------------------------------------+ Desired Features for 5.2-RELEASE +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | | |------------+-----------+----------------+---------------| | | | | | 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 | | | appears to | | | conditions | Errata | Robert Drehmel | exist where | | | in truss | candidate | | 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. | | |------------+-----------+----------------+---------------| | | gdb -k | | | gdb -k | | | support | -- | Mark Peek | doesn't work | | | for alpha | | | on alpha | | |------------+-----------+----------------+---------------| | | | | | Currently, | | | | | | MAC | | | | | | protections | | | | | | are enforced | | | | | | only on | | | | | | locally | | | | | | originated | | | | | | file system | | | | | | operations | | | | | | (VOPs), and | | | | | | not on RPCs | | | | | | generated via | | | | | | the NFS | | | MAC | | | server. | | | support | | | Improvements | | | for NFS | -- | Robert Watson | in NFS server | | | 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 | | | busdma in | | | vtophys() | | | all PCI | -- | -- | 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 | | | GDB thread | | | debugging of | | | support | -- | -- | 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, | The benefits | | | | | binding and | of | | | | | relocation. | prebinding | | | | | This is | are realized | | | | | accomplished | when running | | | | | by a | executables | | | | | prebinding | that use a | | | | | data file or | large (>10) | | Per object | | | ELF segment | number of | | ELF | In | Matthew Dodd | that contains | shared | | Prebinding | progress | | intermediate | libraries. | | support | | | lookup | C++ | | | | | results | applications | | | | | allowing fast | also benefit | | | | | symbol | as they | | | | | binding and | contain a | | | | | relocation, | large number | | | | | provided that | of | | | | | dependent | relocations. | | | | | objects | | | | | | remain | | | | | | unchanged | | | | | | since the | | | | | | prebinding | | | | | | information | | | | | | was | | | | | | generated. | | +------------------------------------------------------------------------+ Documentation items that must be resolved for 5.2 +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | |---------------+--------+---------------+-------------------------------| | Bluetooth | | | It'd be nice to have some | | documentation | -- | Pav Lucistnik | Bluetooth documentation for | | | | | the Handbook. | +------------------------------------------------------------------------+ Testing focuses for 5.2-RELEASE +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | +------------------------------------------------------------------------+ ---------------------------------------------------------------------- home | contact | legal | (c) 1995-2003 The FreeBSD Project. All rights reserved. Last modified: 2003/07/15 19:29:23