NetBSD-Docs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Update to projects page



On Mon, 30 May 2011 19:46:55 -0700, jnemeth%victoria.tc.ca@localhost wrote:
On Oct 20,  4:02am, jean-Yves Migeon wrote:
}  On Mon, 30 May 2011 01:07:13 -0700, jnemeth%victoria.tc.ca@localhost wrote:
} > } - IOMMU for x86 and Xen
} >
} >      - Xen 4 support
}
} What do you mean with "Xen 4" support? PCI+USB passthrough with IOMMU?
}  RAS features like CPU/memory hotplug? machine check exceptions?
}  Something else?

     No idea, basically whatever goodies that Xen 4 provides.

}-- End of excerpt from jean-Yves Migeon

Okay, new proposal. I added the Xen 4 project with a bit more details to help referencing, and moved the nouveau project to a "KMS/GEM" project.

--
Jean-Yves Migeon
jeanyves.migeon%free.fr@localhost
Index: projects.xml
===================================================================
RCS file: /cvsroot/htdocs/contrib/projects.xml,v
retrieving revision 1.150
diff -u -p -r1.150 projects.xml
--- projects.xml        29 May 2011 09:02:05 -0000      1.150
+++ projects.xml        31 May 2011 09:54:39 -0000
@@ -407,8 +407,34 @@
         placed on above NAND flash chip.</para>
       </project>
 
+      <project id="kernel_components">
+        <title>support jails-like features</title>
 
+        <project-details>
+          <!-- <priority>0</priority> -->
+          <difficulty>9</difficulty>
+          <!-- <length>6 months</length> -->
+          <contact>&a.jym; <email>jym AT NetBSD.org</email></contact>
+          <contact><mlist>tech-kern</mlist></contact>
+        </project-details>
+
+        <para>Today a number of OS provide some form of kernel-level
+       virtualization that offer better isolation mechanisms that the
+       traditional (yet more portable) &man.chroot.2;. Currently, NetBSD
+       lacks functionality in this field; there have been multiple attempts
+       (<ulink 
url="http://2008.asiabsdcon.org/papers/P3A-paper.pdf";>gaols</ulink>, <ulink 
url="http://2008.asiabsdcon.org/papers/P5A-paper.pdf";>mult</ulink>) to implement
+       a jails-like system, but none so far has been integrated in base.
+       </para>
+
+       <para>The purpose of this project is to study the various
+       implementations found elsewhere (FreeBSD Jails, Solaris Zones,
+       Linux Containers/VServers, ...), and eventually see their plus/minus
+       points. An additional step would be to see how this can be implemented
+       the various architectural improvements NetBSD gained, especially
+       &man.rump.3; and &man.kauth.9;.</para>
 
+       <para>Caution: this is a research project.</para>
+      </project>
 
     </projects>
   </sect1>
@@ -673,6 +699,7 @@
         IDs.  See <ulink
         url="http://developer.apple.com/technotes/fl/fl_36.html"/>.</para>
       </project>
+
     </projects>
   </sect1>
 
@@ -933,22 +960,71 @@
         contributed code to the FOSS community.</para>
       </project>
 
-      <project id="xen-restore">
-        <title>Xen: implement save/restore feature</title>
+      <project id="x86-iommu">
+             <title>Add IOMMU support in x86/xen ports</title>
 
         <project-details>
           <!-- <priority>0</priority> -->
-          <!-- <difficulty>0</difficulty> -->
-          <!-- <length>Unspecified</length> -->
+          <difficulty>8</difficulty>
+          <length>3 months</length>
+          <contact>&a.jym; <email>jym AT NetBSD.org</email></contact>
+         <contact><mlist>port-amd64</mlist>, <mlist>port-i386</mlist></contact>
+          <contact><mlist>port-xen</mlist></contact>
+        </project-details>
+
+       <para>With the push of virtualization, the
+       x86 world started recently to gain a more widespread attention towards
+       supporting IOMMUs; similar to MMUs that translate virtual addresses
+       into physical ones, an IOMMU translates device/bus addresses into
+       physical addresses. The purpose of this project is to add AMD and Intel
+       IOMMU support in NetBSD's machine-independant bus abstraction layers
+       &man.bus.space.9; and &man.bus.dma.9;.</para>
+      </project>
+
+      <project id="virtio">
+        <title>Implement virtio devices</title>
+
+        <project-details>
+          <!-- <priority>0</priority> -->
+          <difficulty>6</difficulty>
+          <length>3 months</length>
+          <contact>&a.jym; <email>jym AT NetBSD.org</email></contact>
           <contact><mlist>port-xen</mlist></contact>
-          <contact><mlist>tech-kern</mlist></contact>
         </project-details>
 
-        <para>Xen (2 and 3) can save/restore (and migrate, but from the
-        guest POW it's the same thing) a domain.  Some support is needed
-        in guest operating system, and right now NetBSD lacks this
-        support. This is mostly suspend/resume in virtual device
-        drivers, and in the pmap.</para>
+       <para><ulink url="http://www.linux-kvm.org";>The KVM (Kernel Virtual 
Machine) project</ulink> specifies a number
+       of interfaces to virtualize different kind of devices through <ulink 
url="http://www.linux-kvm.org/page/Virtio";>Virtio</ulink>,
+       like block (hard-drives), net (network cards), rng (random
+       number generators), and pci (for PCI pass-through). The purpose of
+       this project is to implement the drivers in NetBSD, so that it
+       can benefit from KVM virtualization without having to rely on
+       hardware emulation to expose the same functionality.</para>
+      </project>
+
+      <project id="xen4">
+             <title>Support latest features of Xen</title>
+
+        <project-details>
+          <!-- <priority>0</priority> -->
+          <difficulty>8</difficulty>
+          <length>3-6 months</length>
+          <contact>&a.jym; <email>jym AT NetBSD.org</email></contact>
+          <contact><mlist>port-xen</mlist></contact>
+        </project-details>
+
+       <para>Latest Xen versions come with a number of features
+       that are currently not supported by NetBSD: USB/VGA passthrough, RAS
+       (Reliability, Availability and Serviceability) options - CPU
+       and memory hotpluging - , Fault tolerancy with Remus, and debugging
+       with gdbx (lightweight debugger included with Xen).
+       </para>
+
+       <para>
+       The purpose
+       of this project is to add the missing parts inside NetBSD. Most of
+       the work is composed of smaller components that can be worked on
+       independently from others.
+       </para>
       </project>
 
       <project id="sgimips">
@@ -1099,20 +1175,26 @@ url="http://mail-index.NetBSD.org/tech-e
         content is needed.</para>
       </project>
 
-      <project id="nvidia">
-        <title>Port of the NVIDIA graphics driver</title>
+      <project id="libvirt">
+             <title>Add libvirt in pkgsrc</title>
 
         <project-details>
           <!-- <priority>0</priority> -->
-          <!-- <difficulty>0</difficulty> -->
-          <!-- <length>Unspecified</length> -->
-          <contact><mlist>tech-kern</mlist></contact>
+          <difficulty>3</difficulty>
+          <length>2-3 weeks</length>
+          <contact>&a.jym; <email>jym AT NetBSD.org</email></contact>
+          <contact><mlist>tech-pkg</mlist></contact>
+          <contact><mlist>port-xen</mlist></contact>
         </project-details>
 
-        <para>Port the FreeBSD driver for NVIDIA graphic adapter
-        distributed by NVIDIA.  Most of the work happens in the kernel,
-        but making the userland part work with XFree86/X.Org and Linux
-        binary emulation is needed too.</para>
+       <para><ulink url="http://www.libvirt.org";>Libvirt</ulink> is a project 
that aims at bringing yet-another-level of
+       abstraction to the management of different virtualization
+       technologies. It supports a wide range of systems (including Xen),
+       however pkgsrc does not yet offer a package to install libvirt.
+       The purpose of this project is to investigate what is needed to
+       build libvirt as a standalone package within pkgsrc, and integrate it
+       so it can benefit from pkgsrc's portability across many different OS.
+       </para>
       </project>
 
       <project id="syspkgs">
@@ -1134,6 +1216,31 @@ url="http://mail-index.NetBSD.org/tech-e
         has not yet been finalized.</para>
       </project>
 
+      <project id="kms-gem">
+        <title>Kernel Mode Setting and Graphics Execution Manager</title>
+
+        <project-details>
+          <!-- <priority>0</priority> -->
+          <!-- <difficulty>0</difficulty> -->
+          <!-- <length>Unspecified</length> -->
+          <contact><mlist>tech-kern</mlist></contact>
+          <contact><mlist>tech-x11</mlist></contact>
+        </project-details>
+
+       <para>Recent overhaul of the X server infrastructure lead to the
+       appearance of Kernel Mode Setting (KMS) and Graphics Execution
+       Manager (GEM) to rejuvenate the X world. This has a number of
+       benefits, from improving 3D GPU support, deprivileged X server to
+       in-kernel video mode management, which can be very helpful when it
+       is necessary to debug a live system using &man.ddb.4;.
+       </para>
+
+       <para>The goal of this project is to add the missing bits inside
+       NetBSD, most notably KMS and GEM. Testing the port using a recent
+       driver like <emphasis>nouveau</emphasis> would be worth the effort.
+       </para>
+      </project>
+
       <project id="valgrind">
         <title>Valgrind</title>
 
@@ -1265,27 +1372,6 @@ url="http://mail-index.NetBSD.org/tech-e
         efficient.</para>
       </project>
 
-      <project id="sasl">
-        <title>Create a secure SASL (RFC2222) implementation</title>
-
-        <project-details>
-          <!-- <priority>0</priority> -->
-          <difficulty>3</difficulty>
-          <contact><mlist>tech-security</mlist></contact>
-        </project-details>
-
-        <para>RFC 2222 describes a very simple authentication mechanism
-       that has been applied to various connection oriented protocols.
-       One example is to authenticate MUAs with their outgoing
-       mail server. This project should, at least, result in a library
-       integrated with the in-tree postfix client to allow SASL based
-       mail authentication. The primary design goal is a secure system,
-       i.e. no postfix-user readable cleartext client password database.
-       </para><para>Additional integration with pkgsrc would be a bonus.
-       </para><para>Note: check dovecot and evaluate it.</para>
-      </project>
-
-
       <project id="IMAPfs">
         <title>IMAPfs for mail</title>
 


Home | Main Index | Thread Index | Old Index