Projects
Search     View Tickets     Browse Source     Timeline     Wiki     New Ticket

ZFS Downloads

Latest ZFS binaries

Fixed in this rev:

  • 6018669 cpanic(cpu 0 caller 0x001DBC35): "vnode_put(0x704cc70): iocount < 1"@/
  • 5989423 Phantom folders/directories (unexpected ENOENT errors)
  • 6035783 ZFS hang during rename/open

Latest ZFS source code

How to install ZFS binaries

The tar ball will extract a “build” directory. After you’ve made a backup of:

/usr/sbin/zfs /usr/sbin/zpool /usr/lib/libzfs.dylib /System/Library/Extensions/zfs.kext /System/Library/Filesystems/zfs.fs

you can:

sudo cp build/Leopard_Release/zfs /usr/sbin/zfs
sudo cp build/Leopard_Release/zpool /usr/sbin/zpool
sudo cp build/Leopard_Release/libzfs.dylib /usr/lib/libzfs.dylib

Not sure about cp(1) semantics, so we blow the existing directories away

sudo /bin/rm -rf /System/Library/Filesystems/zfs.fs /System/Library/Extensions/zfs.kext

sudo cp -R build/Leopard_Release/zfs.fs /System/Library/Filesystems/zfs.fs
sudo cp -R build/Leopard_Release/zfs.kext /System/Library/Extensions/zfs.kext

Also, make sure that all the files are owned by root:wheel after you have copied them over. If not you can do:

sudo chown -R root:wheel /System/Library/Extensions/zfs.kext
sudo chown -R root:wheel /System/Library/Filesystems/zfs.fs
sudo chown -R root:wheel /usr/sbin/zpool
sudo chown -R root:wheel /usr/sbin/zfs
sudo chown -R root:wheel /usr/lib/libzfs.dylib

Then reboot.

How to compile ZFS source

The tar ball will extract to a top level directory of the same name as the version you have downloaded: eg. ‘zfs-111’. There are two main things you will need in order to build the ZFS source.

  • You will need to have the latest version of Xcode installed (part of the Developer tools).
  • Open the zfs project in Xcode and select the "Leopard_Release" configuration in the build configuration menu at the top.

Past Revisions

zfs-117:

Fixed in this rev:

  • 5906090 ZFS should support fcntl(2) F_FULLFSYNC
  • 5405396 zfs needs getdirentriesattr(2) API support for improved Finder performance
  • 5001636 ZFS does not support chflags(2)
  • 5606366 ZFS uses too much wired memory (need auto slab layer tuing)
  • 5923100 implement vop_preallocate for ZFS

zfs-111:

Fixed in this rev:

  • 4873926 make mmap'd pages for zfs play nice
  • 5290357 copyfile(3) fails on symlinks on ZFS
  • 5687660 zfs send won't die
  • 5659137 No negative namecache for ZFS
  • 5285605 zfs should tune the number of threads it initially generates
  • 5653782 zio_checksum_sha256() incorrect if buffer size not a multiple of 64
  • 5727711 zfs panic when swap file resides on zfs
  • 5735151 Fix zfs build targets
  • 5756450 need to fix Leopard only build target due to symbol change
  • 5795082 ZFS should remove its kqueue support
  • 5853667 define MAX_UPL_TRANSFER for open source builds

zfs-102A:

Bugs fixed in this revision:

  • 5448925: sync ZFS with Solaris build 72
  • 5405398: zfs needs kqueue(2) API support
  • 5602507: Leopard9A581: Kernel trap at 0×4d351d9c, type 14=page fault, registers:
  • 5592757: Kernel panic when writing to a zfs volume
  • 5482932: Raidz parity rewrite issue
  • 5641577: ZFS: panic: zap->zap_u.zap_fat.zap_phys->zap_magic == 0×2F52AB2ABULL failed
  • 5621659: assertion failed in /Users/local/zfs-101-latest_fixes/zfs_kext/zfs/zfs_dir.c line 730: error == 0
  • 5643944: ZFS get/set and mountpoints are misbehaving
  • 5645880: Finder copy and “delete” broken in zfs-101 plus fixes..