Difference between revisions of "Reduce code differences"

From OpenZFS
Jump to navigation Jump to search
(Created page with "One of the technical goals of OpenZFS is to reduce code differences between the various platforms that support ZFS. To accomplish this, we will: * Create a "porting layer" to...")
 
m (Add Platform Code Differences link)
 
Line 6: Line 6:
** Code tested by ztest would be the first candidate for this.
** Code tested by ztest would be the first candidate for this.
** Userland ZFS ioctls would enable running /sbin/zfs and /sbin/zpool, and thus most of the TestRunner test suite against libzpool.
** Userland ZFS ioctls would enable running /sbin/zfs and /sbin/zpool, and thus most of the TestRunner test suite against libzpool.
See [[Platform code differences]] for specific information on areas of divergence.

Latest revision as of 10:22, 8 September 2013

One of the technical goals of OpenZFS is to reduce code differences between the various platforms that support ZFS. To accomplish this, we will:

  • Create a "porting layer" to abstract out the platform-specific code. The "Solaris Porting Layer" (SPL) is a good start at this. We can improve it by moving illumos/Solaris-specific code out of the main files and into platform-specific files.
  • Split the ZPL into platform-independent and platform-specific parts.
  • Long-term, consider if we can create a common repository to use for platform-independent ZFS code, rather than treating illumos as the de facto upstream repository.
    • Any code in this repo would need to be able to be tested in a platform-independent way (e.g. in userland using libzpool), so that changes tested on one platform can be expected to work on every platform.
    • Code tested by ztest would be the first candidate for this.
    • Userland ZFS ioctls would enable running /sbin/zfs and /sbin/zpool, and thus most of the TestRunner test suite against libzpool.

See Platform code differences for specific information on areas of divergence.