| Issue |
Status |
Responsible |
Description |
| Production-quality M:N threading |
In progress |
Julian Elischer, David Xu, Daniel Eischen |
KSE M:N threading support is reaching experimental
yet usable status on i386 for 5.1-RELEASE. M:N threading
should be productionable and usable on all platforms by
5.2-RELEASE. |
| KSE support for sparc64 |
In progress |
Jake Burkholder |
Kernel bits are implemented but untested. Userland
bits are not implemented. Required for 5.2-RELEASE. |
| KSE support for ia64 |
Complete. |
Marcel Moolenaar |
Kernel and userland bits implemented but unstable.
Required for 5.2-RELEASE. |
| KSE support for alpha |
In progress. |
Marcel Moolenaar |
Userland bits implemented, kernel bits not
implemented. Required for 5.2-RELEASE. |
| ia64 stability |
In Progress |
Marcel Moolenaar |
Kris Kennaway reports high instability of 5-CURRENT
on ia64 machines, such as the pluto* machines. These
problems need to be fixed in order to get a successful
package build. |
| New serial UART framework |
In progress |
Marcel Moolenaar, Warner Losh |
A reworking of the sio driver is needed to support
serial terminal devices on sparc64 and ia64 platforms,
among others. This is also an enabler for syscons support
on sparc64. |
| FAST_IPSEC and KAME compatibility |
-- |
-- |
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 acceleration. 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. |
| KAME Synchronization |
In progress |
Hajimu UMEMOTO |
The FreeBSD KAME IPv6 code is now substantially dated
with respect to the KAME vendor source. The FreeBSD
Project needs to take initiative in driving the merge of
new bug fixes, features, et al. |
| truss support for ptrace |
In progress |
Robert Drehmel |
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 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. |
| Merge of Darwin msdosfs, other fixes |
-- |
-- |
Apple's Darwin operating system has fairly extensive
improvements to msdosfs and other kernel services; these
fixes must be reviewed and merged to the FreeBSD
tree. |
| ACL_MASK override of umask support in UFS |
In progress |
Robert Watson |
Many systems supporting POSIX.1e ACLs permit a minor
violation to that specification, in which the ACL_MASK
entry overrides the umask, rather than being intersected
with it. The resulting semantics can be useful in
group-oriented environments, and as such would be very
helpful on FreeBSD. |
| Fine-grained network stack locking without Giant |
In progress |
Jeffrey Hsu, Seigo Tanimura, Sam Leffler |
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 dependencies
on sockets, routing, etc. A 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. |
| Tier-1 Support for AMD64 Hammer |
In progress |
Peter Wemm, David O'Brien |
Productionable support for the AMD64 platform.
Currently, AMD64 runs fully in 32-bit emulation mode, and
boots to single-user in 64-bit mode. We expect full
production support for the AMD64 architecture in
5.2-RELEASE. |
| Revised kld build infrastructure |
-- |
-- |
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,
PAE, 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. |
| Light-weight interrupt threads, context switches |
-- |
-- |
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 context
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. |
| Complete the APIC PCI interrupt routing support |
In progress |
John Baldwin |
The existing APIC interrupt code does not support PCI
interrupt routing properly. As a result, PCI interrupts
cannot be routed either via ACPI or across PCI-PCI
bridges. |
| Run-time autoconfiguration of GBDE and related
transforms |
-- |
-- |
Currently, gbde must be manually configured at
run-time each time an encrypted disk device is mounted.
This prevents easy integration into /etc/fstab and easy
automated deployment. Improved integration with the
configuration, mounting, and boot process is required to
make this feature more easily accessible. |
| MAC Framework devfs path fixes |
In progress |
Robert Watson |
Brian Feldman has submitted patches to improve the
consistency of the pathnames passed into the MAC
Framework devfs labeling entry points. These patches need
to be thoroughly reviewed and tested, then merged. |
| rpc.lockd(8) stability |
In progress |
Robert Watson |
A process cannot be interrupted while waiting on a
lock. Fixing this requires that the rpc code be taught
how to deal with lock cancellation and interruption
events. |