Migrate a few items from the 5.3 "desired" list to the 5.4 "desired" and

"required" lists, as well as add a new items with 5.4 in mind:

- Entropy harvesting optimizations are largely implemented and in the 6.x
  branch, but not yet ready for 5.x.  We'll merge tham after 5.3 to be a
  5.4 feature, and keep refining.

- The ACL_MASK override of umask support in UFS punts to 5.4.  It violates
  the POSIX.1eD17 draft spec, but other implementations have moved in that
  direction so we should that also.  Didn't happen for 5.3 because I was
  working on network stack locking, but will happen for 5.4.

- MAC NFS server support onto the desired list for 5.4.  It may well, and
  if it does, it will probably be my fault.

- Move busdma for PCI drivers from the 5.3 desired list to the 5.4
  required list.

- Add MAC Framework integration with System V IPC to the 5.4 required list;
  we have an implementation, but it needs to be merged.

- Add KAME IPSEC w/o Giant to the required list for 5.4.

- Add "all network interface drivers MPSAFE" to the 5.4 desired list.  I'd
  like for this to happen, but I wouldn't be surprised if we have one or
  two ISA 10mbps stragglers come 5.4.

- Add netipx w/o Giant to the desired list for 5.4.  I can work on this,
  but I'm not set up to test it.
This commit is contained in:
Robert Watson 2004-10-22 10:14:44 +00:00
parent a77fc2a442
commit c04e8a7eca
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=22640
2 changed files with 101 additions and 46 deletions

View file

@ -1,7 +1,7 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY email 'freebsd-qa'>
<!ENTITY date "$FreeBSD: www/en/releases/5.3R/todo.sgml,v 1.101 2004/10/17 15:29:00 rwatson Exp $">
<!ENTITY date "$FreeBSD: www/en/releases/5.3R/todo.sgml,v 1.102 2004/10/22 09:12:23 rwatson Exp $">
<!ENTITY title "FreeBSD 5.3 Open Issues">
<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes;
<!ENTITY % developers SYSTEM "../../developers.sgml"> %developers;
@ -90,18 +90,6 @@
<tr><th>Issue</th><th>Status</th><th>Responsible</th><th>Description</th>
</tr>
<tr>
<td>Entropy harvesting optimizations</td>
<td>&status.wip;</td>
<td>&a.rwatson;, &a.markm;</td>
<td>Entropy harvesting in the interrupt and incoming packet paths
currently involves a large number of mutex operations. In order to
improve performance, it is desirable to reduce the number of mutex
operations substantially. Improvements in the harvesting locking
scheme have been merged to 6.x, but are considered too risky at this
stage to be merged to 5.x until after 5.3.
</td>
<tr>
<td>GDB thread support</td>
<td>&status.wip;</td>
@ -195,17 +183,6 @@
will be unkillable.</td>
</tr>
<tr>
<td>ACL_MASK override of umask support in UFS</td>
<td>&status.new;</td>
<td>&a.rwatson;</td>
<td>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.</td>
</tr>
<tr>
<td>filedesc LOR</td>
<td>&status.new;</td>
@ -214,27 +191,6 @@
needs to be heavily reviewed in general.</td>
</tr>
<tr>
<td>MAC support for NFS Server</td>
<td>&status.new;</td>
<td>&a.rwatson;</td>
<td>Currently, MAC protections are enforced only on locally originated
file system operations (VOPs), and not on RPCs generated via the
NFS server. Improvements in 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.</td>
</tr>
<tr>
<td>busdma in all PCI drivers</td>
<td>&status.wip;</td>
<td>--</td>
<td>All PCI drivers must use busdma for DMA; no use of vtophys() will
be permitted for any recent device driver. ISA drivers may be
exempt.</td>
</tr>
<tr>
<td>KSE support for alpha</td>
<td>&status.wip;</td>

View file

@ -1,7 +1,7 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY email 'freebsd-qa'>
<!ENTITY date "$FreeBSD$">
<!ENTITY date "$FreeBSD: www/en/releases/5.4R/todo.sgml,v 1.1 2004/10/22 09:49:00 rwatson Exp $">
<!ENTITY title "FreeBSD 5.4 Open Issues">
<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes;
<!ENTITY % developers SYSTEM "../../developers.sgml"> %developers;
@ -52,6 +52,64 @@
<tr><th>Issue</th><th>Status</th><th>Responsible</th><th>Description</th>
</tr>
<tr>
<td>Entropy harvesting optimizations</td>
<td>&status.wip;</td>
<td>&a.rwatson;, &a.markm;</td>
<td>Entropy harvesting in the interrupt and incoming packet paths
currently involves a large number of mutex operations. In order to
improve performance, it is desirable to reduce the number of mutex
operations substantially. Improvements in the harvesting locking
scheme have been merged to 6.x, but are considered too risky at this
stage to be merged to 5.x until after 5.3.</td>
</tr>
<tr>
<td>ACL_MASK override of umask support in UFS</td>
<td>&status.new;</td>
<td>&a.rwatson;</td>
<td>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.</td>
</tr>
<tr>
<td>busdma in all PCI drivers</td>
<td>&status.wip;</td>
<td>--</td>
<td>All PCI drivers must use busdma for DMA; no use of vtophys() will
be permitted for any recent device driver. ISA drivers may be
exempt.</td>
</tr>
<tr>
<td>MAC Framework Labeling and Access Control for System V IPC</td>
<td>&status.wip;</td>
<td>&a.rwatson;</td>
<td>Currently, the MAC Framework in the FreeBSD source tree does not
provide for any additional protections of System V IPC (shm, sem,
msq). The TrustedBSD MAC development branch contains labeling and
access control extensions for System V IPC, and this will be merged
for 5.4-RELEASE. This includes work to separate the kernel and user
data structures to improve ABI resilience of the IPC implementations.
</td>
</tr>
<tr>
<td>KAME IPSEC without the Giant Lock</td>
<td>&status.wip;</td>
<td>&a.gnn;</td>
<td>Currently, the KAME IPSEC implementation contains inadequate locking
to operate without the Giant lock over the network stack, forcing
kernels compiled with the KAME IPSEC implementation (not FAST_IPSEC)
to run the network stack with the Giant lock, reducing parallelism,
increasing lock contention, and increasing latency by preventing
preemption. For 5.4-RELEASE, it is desirable to complete the locking
work for KAME IPSEC so that it can run without the Giant lock.</td>
</tr>
</table>
<h3>Desired features for 5.4-RELEASE</h3>
@ -60,6 +118,47 @@
<tr><th>Issue</th><th>Status</th><th>Responsible</th><th>Description</th>
</tr>
<tr>
<td>MAC support for NFS Server</td>
<td>&status.new;</td>
<td>&a.rwatson;</td>
<td>Currently, MAC protections are enforced only on locally originated
file system operations (VOPs), and not on RPCs generated via the
NFS server. Improvements in 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.</td>
</tr>
<tr>
<td>All Network Interface Drivers MPSAFE</td>
<td>&status.wip;</td>
<td>--</td>
<td>Currently, some network interface drivers are not safe without the
Giant lock due to missing synchronization. These drivers are protected
by running non-INTR_MPSAFE and with the IFF_NEEDSGIANT flag set, which
cause interrupt threads to acquire the Giant lock before executing the
driver's interrupt handler, and to perform if_start (interface
transmit start) asynchronously once the Giant lock can be acquired.
This results in these drivers performing less well due to increased
lock contention, decreased ability to preempt, and latency associated
with asynchronous launching of latency-critical events. For 5.4, all
network drivers should be able to operate without the Giant lock.</td>
</tr>
<tr>
<td>NetIPX without the Giant Lock</td>
<td>&status.wip;</td>
<td>&a.rwatson;</td>
<td>Currently, the IPX/SPX (netipx) implementation contains inadequate
locking to operate without the Giant lock over the network stack,
forcing kernels compiled with IPX support to run the network stack
with the Giant lock, reducing parallelism, increasing lock contention,
and increasing latency by preventing preemption. For 5.4-RELEASE, it
is desirable to complete the locking work for IPX so that it can run
without the Giant lock.</td>
</tr>
</table>
<h3>Documentation items that must be resolved for 5.4</h3>