Subject: Re: Journaling for FFS
To: M J Fleming <firstname.lastname@example.org>
From: Bill Studenmund <email@example.com>
Date: 10/01/2006 23:08:09
Content-Type: text/plain; charset=us-ascii
On Sun, Oct 01, 2006 at 11:38:43PM +0100, M J Fleming wrote:
> I understand that this year's Google Summer of Code project to provide=20
> journaling support to FFS wasn't successful, however I feel that the proj=
> is worthwhile and would love to see it come to fruition.
> What are the issues with licensing with regard to using a compatible on-d=
> format to Solaris' UFS, which is the idea mentioned at=20
> http://www.netbsd.org/contrib/projects.html#j-ffs ?
There should be no issues with licensing with regard to the on-disk=20
format. Licensing would arise if there were either patent or copyright=20
issues involved. I am aware of no patent issues, and the only way=20
copyright issues would arise is from use of material that has a Sun=20
copyright (or someone else's).
That said, I think it's simpler to go with a physical-block journal. Get=20
Dominic Giampaolo's book ("Practical File System Design with the Be File=20
System") and it's well-discussed.
The one thing we'd have issues with will have issues with a logical=20
journal as well, and that's handling unlinked-but-active inodes.
You need two things for a journaling file system addition: 1) you need=20
code to do the journal transactions. Giampaolo's book will give you that,=
at least as an overview. 2) You will need to look at all metadata writes=20
and figure out how to journal them (you'll need this either way). i.e. how=
to inject transactions into the journal. Softdeps can be somewhat helpful=
here as it too will identify metadata update points, though it's only so=20
helpful as you completely DON'T need the dependency stuff in softdeps,=20
which may make it all confusing.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (NetBSD)
-----END PGP SIGNATURE-----