NTFS GSoC Project Idea

Efstratios Karatzas gpf.kira at gmail.com
Tue Mar 27 20:30:55 UTC 2012

On Tue, Mar 27, 2012 at 11:06 PM, Gleb Kurtsou <gleb.kurtsou at gmail.com>wrote:

> On (26/03/2012 21:13), Efstratios Karatzas wrote:
> > Greetings,
> >
> > I am a FreeBSD GSoC 2010 student, looking to participate in this years
> > GSoC. The project that I wish to work on is the FreeBSD NTFS driver.
> >
> > I 've already discussed my project idea with Attilio@ who suggested
> that I
> > forward my proposal to the hackers mailing list in order to get more
> > feedback and see if there's anyone interested in mentoring a NTFS
> project.
> >
> > The current draft of the technical part of my proposal(pdf & plain text)
> > can be found here:
> >
> > http://cgi.di.uoa.gr/~std06101/ntfs/ntfs_proposal.tar
> >
> > The project idea focuses on mp-safing the NTFS driver as well as adding
> > extra write support. I've tried to merge the two conflicting NTFS project
> > ideas in the ideas wiki page, into one. One of them suggesting that work
> > should be done on the current driver (mp-safe it etc) and the other one
> > suggesting that we port Apple's NTFS driver from scratch. The concept is
> > that we keep most of our vnode/vfs code (i.e. ntfs_vfsops.c,
> ntfs_vnops.c)
> > and rework existing infrastructure as needed as well as implement new
> > features using Apple's driver as a guide.
> I'm not sure I follow your idea, but I'd suggest sticking to a single
> project: either improve FreeBSD NTFS or do the port. FreeBSD and Darwin
> ntfs implementations are completely unrelated thus porting features from
> Darwin won't be easy.
> > This way, we avoid the major
> > changes in Apple's VFS (is there any documentation to be found?) and port
> > code that won't break current functionality.
> I bet "major changes in Apple's VFS" are easier to deal with than
> "merging" two unrelated file systems. XNU VFS is based on FreeBSD 5 VFS
> and they still share a lot in common, e.g. vnode operations themselves
> are nearly the same, e.g. extended attributes, locking, buffer cache are
> different.
> Take a look at HFS+ port. It's unmaintained and outdated but page
> contains link to CVS repository snapshot.
> http://people.freebsd.org/~yar/hfs/
> > I tried to keep this e-mail brief so If you wish to know more, please
> refer
> > to the proposal.
> >
> > Thank you
> >
> > --
> >
> > Efstratios "GPF" Karatzas

Since the FreeBSD wiki has two conflicting NTFS ideas, I thought of
submitting two proposals: one to work on the current driver and one to port
Apple's driver and let the FreeBSD team choose, should they wish to pick
one of them. Attilio suggested that perhaps a merge of those two ideas was
better than two separate proposals and this was my attempt to merge those
ideas; I hear what you say though.

Personally, I'd rather work on the current FreeBSD NTFS driver, but if
there are no mentors for that idea, it's a no-go. Which NTFS idea do you

I'll take a look at the HFS port asap.

Thanks for the input.


Efstratios "GPF" Karatzas

More information about the freebsd-hackers mailing list