Date: Fri, 17 Sep 2004 01:41:16 -0600 (MDT) From: Scott Long <scottl@FreeBSD.org> To: current@FreeBSD.org Subject: 5.3-RELEASE TODO Message-ID: <200409170741.i8H7fGV3011078@pooker.samsco.org>
next in thread | raw e-mail | index | archive | help
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@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 | |PREEMPTION-related | |Scott Long, |context management and | |hangs involving |In progress|Julian |scheduling code. Patches | |threads | |Elischer |to mitigate the problem | | | | |have been developed, with| | | | |on-going work to come up | | | | |with the correct solution| | | | |prior to 5.3. | |--------------------+-----------+-------------+-------------------------| | | | |Jun Kuriyama has reported| | | | |problems with NFS over | | | | |IPv6 not functioning | | | | |correctly as of the | | | | |improved NFS support for | | | | |disconnection changes. | |NFS over IPv6 |In progress|Doug White |Doug White has tracked | |problems | | |down the source of the | | | | |problem (EMSGSIZE being | | | | |returned by IPv6 UDP send| | | | |routine due to | | | | |fragmentation), and is | | | | |currently exploring | | | | |possible fixes. | |--------------------+-----------+-------------+-------------------------| | | | |There are reports of | | | | |applications wedging in | | | | |poll() and select() while| | | | |running the network stack| | | | |without the Giant lock. A| | | | |recent sleepq change | | | | |appears to have caused | | | | |some of the observed | | | | |problems to go away | |poll()/select() | | |(others are difficult to | |application wedge |In progress|Robert Watson|test for due to recent | |reports with | | |SMP instability). A fix | |debug.mpsafenet=1 | | |has been committed to CVS| | | | |HEAD and merged to | | | | |RELENG_5 and appears to | | | | |resolve problems with | | | | |poll(); we are waiting | | | | |for feedback that it has | | | | |corrected the reported | | | | |problems with select() | | | | |also before moving this | | | | |to "testing" status. | |--------------------+-----------+-------------+-------------------------| | | | |ether_input() calls | | | | |random_harvest() on the | | | | |mbuf after it has been | | | | |handed off to | |ether_input() may | |Mark Murray, |ether_demux(), at which | |harvest entropy from|In progress|Robert Watson|point it may have been | |free()'d mbuf | | |free()'d back to the mbuf| | | | |allocator. It also passes| | | | |in a pointer to the mbuf | | | | |itself, rather than | | | | |ethernet frame header. | |--------------------+-----------+-------------+-------------------------| | | | |Kris Kennaway has | | | | |reported problems with | | | | |boot time panic's, mutex | |boot time panic |Not done |- |Giant not owned at | | | | |kern/vfs_subr.c:1365. See| | | | |"Re: 5.3-RELEASE TODO" | | | | |thread in -current@. | |--------------------+-----------+-------------+-------------------------| | | | |The ifconf() ioctl for | | | | |listing network | | | | |interfaces performs a | | | | |copyout() while holding | |ifconf() sleep | | |the global ifnet list | |warning |In progress|Robert Watson|mutex. This generates a | | | | |witness warning in the | | | | |event that copyout() | | | | |generates a page fault, | | | | |and risks more serious | | | | |problems. | +------------------------------------------------------------------------+ Required features for 5.3-RELEASE +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | |-----------------+-------------+----------------+-----------------------| | BIND9 import | | | BIND9 must be | | into 5-CURRENT | In progress | Doug Barton | imported for | | | | | 5.3-RELEASE. | |-----------------+-------------+----------------+-----------------------| | | | | Kernel bits | | KSE support for | | | implemented, userland | | sparc64 | -- | -- | not implemented. | | | | | Required for | | | | | 5.3-RELEASE. | |-----------------+-------------+----------------+-----------------------| | | | | With improved support | | | | | for threading | | | | | primitives, support | | | | | is now required to | | GDB thread | | David Xu, | ease debugging of | | support | In progress | Marcel | threaded | | | | Moolenaar | applications. | | | | | Ideally, this support | | | | | will work for both | | | | | libthr and libkse | | | | | threading models. | |-----------------+-------------+----------------+-----------------------| | | | | There have been | | | | | several reports that | | | | | growfs(8) works | | | | | improperly with large | | Reports of UFS2 | | | disk sizes, and other | | "large disk" | In progress | Scott Long | size-related nits in | | problems | | | the current disk and | | | | | label management tool | | | | | set. These must be | | | | | resolved for | | | | | 5.3-RELEASE. | |-----------------+-------------+----------------+-----------------------| | | | | Synaptics updates to | | | | | the psm(4) driver | | Synaptics | | | have resulted in poor | | touchpad | In progress | Philip Paeps | interactivity for | | problems | | | 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 is | | Entropy | | | desirable to reduce | | harvesting | In progress | Robert 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 | |i386 Floppy | |Gavin |take into account the new floppy images | |Installation |Done |Atkinson, |(with a full kernel split across | |Docs | |Bruce A. |multiple disks). This should be updated.| | | |Mah |References: | | | | |docs/70485 (closed) | |--------------+-----------+-----------+----------------------------------------| |Finish | |Simon L. |Finish removing mention of individual | |hardware notes|In progress|Nielsen, |devices in the hardware notes and use | |trimming | |Christian |auto-generated lists, based on driver | | | |Brueffer |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), csa(4), gusc(4), sbc(4), and | | | | |uaudio(4) should be revised. Other | |sound(4) | | |manual pages which refer to pcm(4) (if | |related manual|In progress|Simon L. |any) should possibly be revised, too. In| |pages | |Nielsen |addition, supported cards list needs to | | | | |be updated. | | | | |References: | | | | |Manpage for snd_solo on -doc@ | | | | |[PATCH] sound(4) related manpages 5.3 | | | | |TODO item on -doc@ | | | | |src/share/man/man4/Makefile rev.1.279 | |--------------+-----------+-----------+----------------------------------------| |Sound section | | |This section is outdated, some rewrites | |in the |In progress|Marc |are needed for 5.3-RELEASE. | |Handbook | |Fonvieille |References: | | | | |Draft for review | |--------------+-----------+-----------+----------------------------------------| |FDP | | |With the snd(4) and pcm(4) drivers | |documentations|Not done |-- |changes, documentations (FAQ) regarding | |related pcm(4)| | |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 useful, but contains a bit old | |Early | |Bruce A. |information. Some parts of this guide | |Adopter's |In progress|Mah, Tom |need a rewrite, and this document should| |Guide | |Rhodes |be published as "4.X to 5.X Migration | | | | |Guide", which focuses difference between| | | | |4.X and 5.X. | | | | |References: | | | | |Draft for review | | | | |discussion on -doc@ and -current@ | |--------------+-----------+-----------+----------------------------------------| | | | |Some parts are outdated. doc/70485 has | | | | |been committed, but more work is needed | | | | |to reflect the realities. bmah@ pointed | | | | |out that we should have "quick-start" | |Installation |Not done |Tom Rhodes |installation guide for each platform | |Notes | | |instead of the current ones because they| | | | |become too long and difficult to be | | | | |maintained. | | | | |References: | | | | |doc/70485 (closed) | |--------------+-----------+-----------+----------------------------------------| | | | |Update the X11 chapter of the Handbook | | | |Ken Tom, |for X.Org's X11 server. | |Xorg |Done |Marc |References: | | | |Fonvieille |books/handbook/config/chapter.sgml | | | | |rev.1.147 | |--------------+-----------+-----------+----------------------------------------| | | | |Ch.11.4 and 11.5 of the Handbook must be| | | | |updated to mention the new rc.d scripts | | | | |and some ports use /etc/rc.conf for | | | | |their configuration. | |rc.d scripts |In progress|Tom Rhodes |References: | | | | |books/handbook/config/chapter.sgml | | | | |rev.1.170 | | | | |books/handbook/config/chapter.sgml | | | | |rev.1.172 | |--------------+-----------+-----------+----------------------------------------| | | | |Chapter 8 must be updated to match | |Handbook's | | |5.3-RELEASE. | |kernel |Done |Ceri Davies|References: | |configuration | | |docs/70674 (closed) | |chapter | | |books/handbook/kernelconfig/chapter.sgml| | | | |rev.1.135 | |--------------+-----------+-----------+----------------------------------------| | | | |Some parts of Section 14.10 are outdated| |Handbook's | | |and are not correct for 5.X systems. | |IPsec section |Not done |-- |References: | | | | |ipsec on -doc@ | | | | |Problem with IPSEC in handbook on -doc@ | |--------------+-----------+-----------+----------------------------------------| |Handbook's |Not done |-- |Vinum chapter needs to be revised for | |Vinum chapter | | |5.X systems. | +-------------------------------------------------------------------------------+ Testing focuses for 5.3-RELEASE +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | |-------------------+---------------+--------------+---------------------| | | | | SCHED_ULE provides | | | | | better | | | | | interactivity, | | | | | higher performance, | | SCHED_ULE as the | Needs testing | Jeff | and the ability to | | default scheduler | | Roberson | support pinning and | | | | | affinity. Basic HTT | | | | | scheduling policies | | | | | should be in place | | | | | for 5.3 also. | |-------------------+---------------+--------------+---------------------| | | | | KSE has matured to | | | | | the point of being | | | | | more stable and | | | | | POSIX-compliant | | | | | than the | | | | | traditional libc_r. | | | | | All Tier-1 | | | | | platforms MUST have | | KSE as the | | David Xu, | stable KSE support | | default threads | Needs testing | Daniel | for 5.3 in order to | | library | | Eischen | support a | | | | | consistent | | | | | transition. | | | | | Additionally, all | | | | | ports that depend | | | | | on the pthreads API | | | | | must be modified to | | | | | properly detect and | | | | | support the default | | | | | threading library. | |-------------------+---------------+--------------+---------------------| | | | | Binutils needs | | | | | updating in order | | Updated binutils | | David | to support new | | for all platforms | Needs testing | O'Brien | platforms, newer | | | | | GDB versions, and | | | | | Thread Local | | | | | Storage. | |-------------------+---------------+--------------+---------------------| | | | | The previous GCC | | | | | 3.3 snapshot | | | | | included | | | | | regressions in | | | | | alignment of | | | | | floating point | | gcc 3.3 floating | | | arguments, | | point alignment | Needs testing | | resulting in a | | regression | | | substantial | | | | | performance | | | | | degradation. The | | | | | recent GCC 3.4.2 | | | | | import should fix | | | | | this, but more | | | | | testing is needed. | |-------------------+---------------+--------------+---------------------| | | | | Jun Kuriyama has | | | | | reportged a failed | | | | | locking assertion | | | | | with IPv6 TCP | | in6_pcbnotify() | Needs testing | Robert | notifications. A | | panic with TCP | | Watson | patch has been | | | | | committed to the | | | | | CVS HEAD and | | | | | RELENG_5 and needs | | | | | further testing. | |-------------------+---------------+--------------+---------------------| | | | | To complete support | | | | | for thread-local | | | | | storage on FreeBSD, | | | | | per-architecture | | Per-platform | | Doug Rabson, | changes must be | | Thread-Local | Needs testing | Marcel | made. Currently | | Storage | | Moolenaar | pending platforms | | | | | are amd64, alpha, | | | | | ia64, i386, | | | | | sparc64, and | | | | | powerpc. | |-------------------+---------------+--------------+---------------------| | | | | High load on SMP | | | | | systems appears to | | | | | result in a hard | | | | | hang related to VM | | | | | IPI. Doug White has | | SMP instability | | Doug White, | prepared a | | under load | Needs testing | Alan L. Cox | candidate patch | | | | | that appears to | | | | | resolve this | | | | | instability, which | | | | | is currently in | | | | | testing for merge | | | | | to the CVS HEAD. | |-------------------+---------------+--------------+---------------------| | | | | Significant parts | | | | | of the network | | | | | stack (especially | | | | | IPv4, UNIX domain | | | | | IPC, and sockets) | | | | | now have | | | | | fine-grained | | | | | locking of their | | | | | data structures. | | | | | It's possible to | | | | | run many common | | | | | network subsystems | | | | | and services | | | | | without the Giant | | Fine-grained | | | lock. However, a | | network stack | Needs testing | Robert | number of device | | locking without | | Watson | drivers and less | | Giant | | | mainstream network | | | | | subsystems are | | | | | currently not | | | | | MPSAFE. By | | | | | 5.3-RELEASE, it is | | | | | necessary to have | | | | | the vast majority | | | | | of network code | | | | | running without | | | | | Giant, including | | | | | sockets, permitting | | | | | complete | | | | | local<->remote | | | | | delivery without | | | | | grabbing Giant. | |-------------------+---------------+--------------+---------------------| | | | | As part of the | | | | | MPSAFE network | | | | | stack work, | | | | | delivery of routing | | | | | socket messages was | | | | | moved to queued | | | | | dispatch via netisr | | | | | rather than direct | | | | | dispatch from the | | | | | routing code. | | Increased and | | | However, the risks | | configurable | | Robert | of lost routing | | netisr queue max | Needs testing | Watson | messages for | | depth for routing | | | routing daemons are | | sockets | | | high; respond by | | | | | increasing the max | | | | | depth beyond a | | | | | default interface | | | | | max depth of 50 to | | | | | 128, and allow it | | | | | to be | | | | | user-configured. | | | | | This change is now | | | | | present in CVS HEAD | | | | | and RELENG_5. | |-------------------+---------------+--------------+---------------------| | | | | KLDs work when | | | | | loaded from | | | | | userland, but not | | | | David | from the loader. | | kld support for | Needs testing | O'Brien, Ian | kldxref and loader | | amd64 | | Dowse | support has been | | | | | committed to HEAD | | | | | and RELENG_5 and | | | | | needs final | | | | | testing. | |-------------------+---------------+--------------+---------------------| | | | | Recent changes to | | | | | the ATA driver | | | | | trigger a bug on | | ATA panics under | | So/ren | sparc64 that causes | | sparc64 | Needs testing | Schmidt, | a panic on boot. | | | | Scott Long | This was caused by | | | | | bugs in busdma that | | | | | have been hopefully | | | | | fixed. | +------------------------------------------------------------------------+ ---------------------------------------------------------------------- home | contact | legal | (c) 1995-2004 The FreeBSD Project. All rights reserved. Last modified: 2004/09/16 20:28:05
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200409170741.i8H7fGV3011078>