CFT: ZFS v15 patch

Martin Matuska mm at FreeBSD.org
Tue Jun 22 22:24:06 UTC 2010


Dear developers,

I would like to do a call for testing for my ZFS v15 patch.

As the user/group quotas feature is too much attractive for my needs,
I couldn't resist and have created (and debugged + tested) a ZFS v15
patch for head (applies cleanly against stable/8 as well).

It is a backport of several onnv-revisions, always consulting pjd's p4
tree and includes four post-9396 related user/groupquota bugfixes.
The bootcode (zfsimpl.h) is properly updated to support v15 as well, the
python part is modified (paths, smb support, ioctls).

The patch, list of imported revisions and a preliminary but working
version of the pyzfs port can be downloaded from this link:
http://people.freebsd.org/~mm/patches/zfs/v15/

You can download 8.1-RC1-amd64 with zfsv15 (incl. boot support) mfsBSD
ISOs from here:
http://mfsbsd.vx.sk/iso/8.1rc1-zfsv15.iso (without symbols, 98.7M)
http://mfsbsd.vx.sk/iso/8.1rc1-zfsv15-debug.iso (with symbols, 187.5M)

Login/password into the ISOs: root/mfsroot
run "zfsinstall" for a zfs-on-root installation (don't forget -V 15 if
trying to install)

The amd64 ISO's may be tested in virtualbox or real-world systems as well.

Regarding new ioctl's:
I have added all new ioctl's in the patch as new ones (numbers 49 to 52).
This makes the old kernel module work with new library / utilities
(tested) or any other binary that references these ioctl's.

Regarding the python port:
The current port installs the library into PYTHON_SITELIBDIR and
pyzfs.py into /usr/lib/zfs/

Later, we may install all necessary sources and pyzfs.py and the 
port may be a full-dummy that doesn't need kernel/world sources.

Version 15 introduces user and group quota accounting and could be a
very good step in preparation towards v26.
The code runs impressingly stable (I didn't manage to reproduce any
panics or deadlocks yet after polishing).
It would be very great if this could get widely tested.

I guess we could go with this code in direction stable/8 (head first),
because it is backwards compatible
(zfs and zpool work with older kernel module - only new features don't
work, the same for the boot changes, boot from older pools is supported).

Any ideas, suggetions, and bug reports are welcome!

Cheers,
mm



More information about the freebsd-current mailing list