This is an automated weekly mailing of the FreeBSD 5.3 open issues list. The live version of this list is available at: http://www.FreeBSD.org/releases/5.3R/todo.html Automated mailing of this list will continue through the release of FreeBSD 5.3 FreeBSD 5.3 Open Issues Open Issues This is a list of open issues that need to be resolved for FreeBSD 5.3. If you have any updates for this list, please e-mail re_at_FreeBSD.org. Show stopper defects for 5.3-RELEASE +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | |--------------------+-------------+---------------+---------------------| | | | | The kernel random | | | | | number generator's | | | | | requirement of | | | | | needing to be fed | | | | | entropy early on | | | | | has been disabled | | | | | so that sysinstall | | | | | and single-user | | /dev/random stalls | | | mode apps don't | | single user and | In progress | Mark Murray | block with strange | | sysinstall | | | messages. Work is | | | | | still needed in | | | | | rc.d to enable the | | | | | higher-quality | | | | | entropy before | | | | | critical startup | | | | | scripts start and | | | | | the system reaches | | | | | multiuser mode. | |--------------------+-------------+---------------+---------------------| | | | | Problems persist | | | | | with crashes and | | | | | hangs under heavy | | | | | load, especially | | | | | under SMP. The | | | | | recent introduction | | | | | of full-scale | | | | | preemption | | | | | exasperated the | | | | | problem, though | | | | | preemption has been | | | | | turned off | | General | | | temporarily while | | instability and | | Scott Long, | this problem is | | lockups under high | Not done | Julian | debugged. | | load | | Elischer | Speculation on the | | | | | source of the | | | | | problem seems to | | | | | center around | | | | | problems in the | | | | | scheduler and | | | | | appear to be common | | | | | to both the 4BSD | | | | | and ULE schedulers. | | | | | This needs to be | | | | | driven to root | | | | | cause and fixed in | | | | | order for 5.3 to be | | | | | considered STABLE. | |--------------------+-------------+---------------+---------------------| | | | | Symbols that have | | | | | moved between libc | | | | | and libm have made | | | | | source upgrades | | Source upgrade | Not done | David Schultz | problematic. The | | incompatibility | | | 5.3 world sources | | | | | must be buildable | | | | | and installable | | | | | from a 5.2.1 | | | | | system. | +------------------------------------------------------------------------+ Required features for 5.3-RELEASE +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | |-----------------+-------------+---------------+------------------------| | GDB 6.1 kernel | | | GDB 6.1.1 import does | | debugging | In progress | Marcel | not include FreeBSD | | support | | Moolenaar | kernel debugging | | | | | support. | |-----------------+-------------+---------------+------------------------| | BIND9 import | In progress | Doug Barton | BIND9 must be imported | | into 5-CURRENT | | | for 5.3-RELEASE. | |-----------------+-------------+---------------+------------------------| | | | | Kernel bits | | KSE support for | | | implemented, userland | | sparc64 | -- | -- | not implemented. | | | | | Required for | | | | | 5.3-RELEASE. | |-----------------+-------------+---------------+------------------------| | | | | 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 | | Fine-grained | | | Giant lock. However, a | | network stack | In progress | Robert Watson | number of device | | locking without | | | 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. | |-----------------+-------------+---------------+------------------------| | | | | KLDs work when loaded | | | | | from userland, but not | | | | | from the loader. | | kld support for | In progress | David O'Brien | kldxref might also | | amd64 | | Peter Wemm | need work. Required | | | | | for amd64 to be | | | | | promoted to tier-1 | | | | | status. | |-----------------+-------------+---------------+------------------------| | | | | With improved support | | | | | for threading | | | | | primitives, support is | | | | David | now required to ease | | GDB thread | In progress | Xu,Marcel | debugging of threaded | | support | | Moolenaar | applications. Ideally, | | | | | this support will work | | | | | for both libthr and | | | | | libkse threading | | | | | models. | |-----------------+-------------+---------------+------------------------| | | | | Currently, two | | | | | schedulers are | | | | | present: SCHED_ULE | | | | | (default), an | | | | | SMP-optimized | | | | | scheduler created as | | | | | part of SMPng, and | | | | | SCHED_4BSD, an | | | | | SMP-adapted version of | | | | | the original 4BSD | | | | | scheduler. They have | | | | | quite different | | | | | performance | | | | | properties, with ULE | | | | | providing strong | | | | | interactivity | | Scheduler | | | characteristics, and | | cleanup and | In progress | -- | performing quite well | | resolution | | | in a number of | | | | | benchmarks, and 4BSD | | | | | showing greater | | | | | strength in IPC | | | | | intensive user space | | | | | benchmarks, such as | | | | | databases. One of | | | | | these schedulers must | | | | | be the default for | | | | | 5.3, and whichever one | | | | | it is, it requires | | | | | careful measurement, | | | | | analysis, and | | | | | optimization before | | | | | the release in order | | | | | to address its | | | | | deficiencies. | |-----------------+-------------+---------------+------------------------| | | | | There have been | | | | | several reports that | | | | | growfs(8) works | | | | | improperly with 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. | +------------------------------------------------------------------------+ 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 | | truss support | | | risks, it is highly | | for ptrace | -- | -- | 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. | | | | | Support for system | | | | | call tracing has been | | | | | added to ptrace(). | |-----------------+-------------+----------------+-----------------------| | | | | To complete support | | | | | for thread-local | | | | | storage on FreeBSD, | | Per-platform | | Doug Rabson, | per-architecture | | Thread-Local | In progress | Marcel | changes must be made. | | Storage | | Moolenaar | Currently pending | | | | | platforms are amd64, | | | | | alpha, ia64, i386, | | | | | sparc64, and powerpc. | |-----------------+-------------+----------------+-----------------------| | | | | 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 | | FAST_IPSEC and | | | hardware crypto | | KAME | Not done | -- | 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. | |-----------------+-------------+----------------+-----------------------| | | | | 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 | | | | | for kernel objects | | Revised kld | | | (such as MAC, PAE, | | build | Not done | Peter Wemm | etc) that may require | | infrastructure | | | 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 | | appears to exist | | in truss | candidate | Robert Drehmel | 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. | |-----------------+-------------+----------------+-----------------------| | | | | 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 | | | being intersected | | in 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. Improvements | | MAC support for | Not done | Robert Watson | in NFS server | | NFS 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; | | busdma in all | | | no use of vtophys() | | PCI drivers | In progress | -- | will be permitted for | | | | | any recent device | | | | | driver. ISA drivers | | | | | may be exempt. | |-----------------+-------------+----------------+-----------------------| | KSE support for | | Marcel | Userland bits | | alpha | In progress | Moolenaar | implemented, kernel | | | | | bits not implemented. | |-----------------+-------------+----------------+-----------------------| | | | | For kernel API/ABI | | | | | compatibility | | | | | reasons, it would be | | CAM locking | In progress | Scott Long, | desirable to have the | | | | Justin Gibbs | CAM locking strategy | | | | | determined and | | | | | loosely implemented | | | | | for 5.3. | +------------------------------------------------------------------------+ Documentation items that must be resolved for 5.3 +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | |-----------------+-------------+---------------+------------------------| | | | | The installation | | | | | documentation doesn't | | i386 Floppy | | | take into account the | | Installation | Not done | -- | new floppy images | | Docs | | | (with a full kernel | | | | | split across multiple | | | | | disks). This should be | | | | | updated. | |-----------------+-------------+---------------+------------------------| | | | | Finish removing | | | | | mention of individual | | Finish hardware | | | devices in the | | notes trimming | In progress | Simon Nielsen | hardware notes and use | | | | | auto-generated lists, | | | | | based on driver manual | | | | | pages, instead. | +------------------------------------------------------------------------+ Testing focuses for 5.3-RELEASE +------------------------------------------------------------------------+ | Issue | Status | Responsible | Description | |-----------------+---------------+---------------+----------------------| | | | | SCHED_ULE provides | | | | | better | | | | | interactivity, | | SCHED_ULE as | | | higher performance, | | the default | Needs testing | Jeff Roberson | and the ability to | | scheduler | | | support pinning and | | | | | affinity. Basic HTT | | | | | scheduling policies | | | | | should be in place | | | | | for 5.3 also. | |-----------------+---------------+---------------+----------------------| | | | | Attempts to use | | | | | make(1) with KQueues | | | | | appears to result in | | | | | a kernel hang under | | | | | "heavy load". It | | | | | would be desirable | | | | | to fix this both | | | | | from the perspective | | | | | of building FreeBSD | | make | | | quickly as a | | -DUSE_KQUEUE | | Brian | developer, but also | | causes lockup | Needs testing | Feldman, | because it's an | | with buildworld | | John-Mark | instability that | | -jBIGNUM | | Gurney | could show up under | | | | | other high load and | | | | | heavy use of | | | | | KQueues. See PR | | | | | kern/57945 for a | | | | | proposed patch and | | | | | details. This appear | | | | | to be the product of | | | | | a locking problem, | | | | | and must be fixed | | | | | for 5.3. | |-----------------+---------------+---------------+----------------------| | | | | KSE has matured to | | | | | the point of being | | | | | more stable and | | | | | POSIX-compliant than | | | | | the traditional | | | | | libc_r. All Tier-1 | | | | | platforms MUST have | | KSE as the | | David Xu, | stable KSE support | | default threads | Needs testing | Daniel | for 5.3 in order to | | library | | Eischen | support a consistent | | | | | transition. | | | | | Additionally, all | | | | | ports that depend on | | | | | the pthreads API | | | | | must be modified to | | | | | properly detect and | | | | | support the default | | | | | threading library. | |-----------------+---------------+---------------+----------------------| | | | | Binutils needs | | Updated | | | updating in order to | | binutils for | Needs testing | David O'Brien | support new | | all platforms | | | platforms, newer GDB | | | | | versions, and Thread | | | | | Local Storage. | |-----------------+---------------+---------------+----------------------| | | | | The previous GCC 3.3 | | | | | snapshot included | | | | | regressions in | | | | | alignment of | | gcc 3.3 | | | floating point | | floating point | | | arguments, resulting | | alignment | Needs testing | | in a substantial | | regression | | | performance | | | | | degradation. The | | | | | recent GCC 3.4.2 | | | | | import should fix | | | | | this, but more | | | | | testing is needed. | +------------------------------------------------------------------------+ ---------------------------------------------------------------------- home | contact | legal | (c) 1995-2004 The FreeBSD Project. All rights reserved. Last modified: 2004/08/04 02:33:13Received on Wed Aug 04 2004 - 05:45:07 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:04 UTC