|
&
|
|
NetBSD-SoC: The NetBSD ZFS port
What is it?
ZFS is well known file system developed by Sun corp. for Solaris operating system.
It's source code was released under the CDDL license. ZFS currently was ported to
several other operating systems like Mac OS X and FreeBSD.
ZFS port to NetBSD was started in Summer of code 2007 by
Oliver Cloud.
Later Andrew Doran(my mentor in this project) worked on zfs port and
released several versions of his work
Partial zfs port.
Nice description about is written in ZFS presentation at
ZFS last word in file systems.
Status
I will try to keep community informed by status mails sent to the NetBSD project mailing lists.
During my work, when I reach some milestone I will sent several mails to tech-kern mailing list.
-
April 21, 2009: Community Bonding Period
-
May 23, 2009: Get solaris nad zfs modules loading, learn zfs code organisation.
-
May 23, 2009: Students begin coding for their GSoC projects; Google begins issuing initial student payments
-
July 6, 2009: Mentors and students can begin submitting mid-term evaluations.
-
July 13, 2009: Get zvol part of ZFS working, creating zpools, usin ZVOL's as a logical partitions in LVM.
-
July 13, 2009: Mid-term evaluation deadline; Google begins issuing mid-term student payments provided passing student survey is on file.
-
August 10, 2009: Suggested 'pencils down' date. Take a week to scrub code, write tests, improve documentation, etc.
-
August 17, 2009: Firm 'pencils down' date. Mentors, students and organization administrators can begin submitting final evaluations to Google.
-
August 17, 2009: Work on zpl layer of ZFS port Opensolaris/FreeBSD zfs vfsops/vnops structures to their NetBSD equivalent.
-
August 24, 2009: Final evaluation deadline; Google begins issuing student and mentoring organization payments provided forms and evaluations are on file.
Deliverables
Mandatory (must-have) components:
- Finish port of ZFS ZVOL layer to NetBSD
- Implement device partition properties. Change newfs, dm(4) and other logical disk drivers.
- Implement device disk(driver:model-revision-serial-etc) ids for identification of zfs disk.
- Port vfsops and vnodeops. ignore getpages/putpages.
Optional (would-be-nice) components:
- Implement getpages/putpages
- Callbacks into arc, for reclaim of memory or kernel virual space.
- Maybe changing the order of arguments for pool_cache constructors.
- Implement nameiat and lookupnameat functions.
Technical Details
The ZFS file system contains two major modules ZVOL and ZPL.
The ZVOL is Logical Volume Manager module of the ZFS. It creates/manages
Logical disk drives created from pools of disk space called ZPOOLS.
The ZPL is file system layer used for creating ZFS file system on a ZVOL
volume.
|
Adam Hamsik <haad@NetBSD.org>
|
$Id: index.html,v 1.2 2009/05/25 08:17:43 haad Exp $
|
|