Yay, another filesystem for Linux
That's a relief, because there weren't nearly enough of those.
Hewlett-Packard plans to make its Tru64 Unix Advanced File System available to the open source community. The tech giant said today that Linux can adopt AdvFS source code under version two of the open source General Public License (GPL). The file system was first developed in 1991 for business customers using Digital …
As already noted, more file systems can't hurt, can they?
But Tru64 also incorporated a huge amount of work in terms of realtime support, preemptible kernels, and the like, which also happened to help SMP scaling too. And what's the PeeCee industry getting all hyped up about at the moment? Better multicore performance (ie SMP).
C'mon HP, you know it makes cents.
16TiB max filesystem size, well that will run out real soon.
255 byte filename limits, seems rather short these days with UTF8 filenames and many filesystems support way more.
LVM features in the filesystem makes it pretty much not likely to ever make it into linux since linux expects filesystems and block device management to be independant. Adding and removing block devices, as well as doing snapshots is already done by LVM in linux for lots of filesystems, and isn't even supposed to be a filesystem level feature.
There is basically nothing of interest in this filesystem as far as linux is concerned in my opinion.
Linux is good so long as it's _only_ used for the server, GOD forbid should HP ever have to sell Linux on any of their laptops or desktop machines.
The Linux Foundation really shows it's colours here, basically it's an industry mouth piece with not so much detachment from the community as being completely different community. when they start interacting on more levels than just the server I'll put my trust in them.
This is a fast, efficient, rock solid filesystem, and the source code is very well documented and commented. If it's not imported lock stock and barrel into the Linux kernel, then there's an Aladin's cave useful algorithms and code examples that can be used to enhance existing Linux filesystems.
This is a real gift !
So as not to contradict their slogan, they're now essentially claiming to have developed AdvFS over a 16-year period in that press release. I'm sure the OSF/1 team at Digital, and the follow-on "Digital Unix" and "Compaq Tru64 Unix" team would be glad to hear that HP had done their work for them, if only they'd known at the time. Probably could have taken more of their vacation days. Either that, or the shadowy hand of HP somehow had control of both Digital and Compaq starting in the early 90's.
..is cos the current ones are all pretty poor when compared to commercial UNIX filesystems like VxFS, IBM JFS or Sun ZFS - so people keep attempting to write another better one...
AdvFS is a pretty good filesystem, albeit showing its age a little now - certainly better than what Linux currently has to offer. The interesting thing about this will be to see if it finally pushes Sun into releasing ZFS under GPL2
Mines the one with the flame retardant coating.
I don't know about ZFS. Don't some of the fundamentals of ZFS kinda go against the Linux filesystem design? Besides, it seems that even on Solaris, ZFS has some teething troubles. Anyway, has there been any word about further exploring XFS, which is already available for Linux?
But I think Lennart got it right a few posts earlier. Basically I can hardly contain my indifference.
XFS was brilliant as well (at least in the 90s when I used it on big SGI kit). That's been in Linux for ages so you can run it for free if you want to, but that doesn't mean anyone actually does.
Seriously it's very nice of these Tru64 guys, but there comes a point when too much choice actually dilutes the effort available. There are only so many engineers available to work for free, so the likelihood is that all that well-documented code and those juicy algorithms will just sit there doing nothing.
Not to mention that a lot of people, Andrew Morton included, are trying to put the brakes on kernel feature bloat so that they can actually fix some bugs.
Paris, because she knows there ain't no free lunch.
1/ It's a decent file system designed for clustering.
2/ As part of the above it is very tight with Oracle RAC, which would increase Linux's advantage in commercial markets.
3/ It doesn't have a big and nasty NetApp patent issue and court case like Sun's ZFS....
4/ It's not being released with a restrictive license like Sun's ZFS.
16TiB is the max supported (tested) filesystem size, not theoretical size
255 byte filenames (not absolute filenames) is bigger than anything I've ever used. Anything bigger than that is stupid.
AdvFS != LVM. It doesn't do RAID1 for example, nor does it slice up disks in any way. It takes either whole disks, or (BSD) partitions of disks, or logical disks presented by a Volume Manager or SAN and then combines them into a virtual disk pools (domains) which it then uses to host seperately mountable filesystems (aka filesets). You can grow or shrink space available to filesets by adding or removing virtual disks in the pool on the fly and while the filesets are in use.
Snapshots at the volume level are great if you have unused disk space to throw at it not already allocated to a filesystem. But AdvFS clone filesets are instant (seconds) and use existing free space already available in the pool. Actually clones start off very small and only grow as changes to the source f/s cause data blocks to be copied to the clone before being modified. In addition, you can freeze and unfreeze an AdvFS domain, so there's nothing stopping you from doing volume level snapshots if that's what floats your boat. It gives you the choice!
Lets make this very clear to anyone who hasn't read the press release properly. It isn't HP's main purpose to release this so it can be ported to Linux and join the filesystem stable. Though I'm sure that would please them just as much. The main purpose is for f/s developers to look at some of the cool features AdvFS has, and if they choose, to take the source and use it to either improve existing Linux filesystems, or create new ones. How, in anyone's world, can that be a bad thing?
HP rejected it (or gave up) trying to port it to HP-UX, that itself speaks volume about either relevance of AdvFS today or HP's credibility. Now they want to hurl it at Linux, hoping the Linux community will succeed in the dirty work in actually making it work. The BIG question is, did HP actually make it work on Linux, or they just released the code from TRU64 Unix under GPL2 and leaving the actual work to be done by the Linux folks. It sounds more like the later, which does confirm the fact that HP actually thinks that Linux folks are a lot cleverer than the group at home doing HP-UX (no offence intended). Why not just get rid of HP-UX altogether and just concentrate on Linux on integrity, it would actually elevate their status as the true Linux community leader. Transitive is their friend to make sure the legacy HP-UX apps would still run on top of Linux and Integrity.
As Tru64 grows older, it becomes harder to support with new programs. Thus we are migrating to Linux.
I have been waiting for a filesystem like AdvFS for Linux. It makes it so much easier to size disk use when all partitions share the available disk space in a given domain. This is a great space saver, which is nice in a SAN environment.
Want to add more space? Just add space to the File domain.
Want to keep partition space seperate? Just add File domains, and put one fileset in each domain.
It's a mature file system with a full set of diagnostics and rescue tools.
With raid and AdvFS I could be very happy.
Why do you want a BSD-licenced version when there is already a GPL version?
You can build GPL modules into the BSD kernel; you just can't legally distribute the result in any form except Source Code.
Since the only thing the BSD licence allows that the GPL does not is for you to take someone else's hard work that they intended to be for the benefit of all of humanity and then cage it up so that only *you* benefit from it, one should be highly suspicious of anyone who asks for BSD-licenced code.
I'm sure it is *technically* great, but that wasn't my point at all. Neither did I mention ZFS. I'm just saying - who's going to actually do the work?
If HP are going to throw engineers at it, that's a different matter - but it sure didn't read like that to me. Big lumps of software require big lumps of engineering effort, it's a fact of life.
NetBSD and FreeBSD (not sure about the other *BSDs) have a policy of keeping GPL code out of the kernel (specifically, GENERIC kernels for FreeBSD).
The BSD licence does *not* allow you to "cage up" someone else's hard work - it allows you to "cage up" your *own* hard work, if you so desire, when that work has been built on top of someone else's. What's suspicious about that?
RE: Phased-Out Auro
"....HP rejected it (or gave up) trying to port it to HP-UX,..." HP evaluated what Symantec/Veritas had to offer (at a price) and what advantage could be gained from porting bits of Tru64 such as AdvFS (free except the porting costs) and chose the former as it gave better functionality. You should know this as the vast majority of enterprise Slowaris implementations have long used Veritas due to the pathetic clustering and filesystem tools on offer from Sun.
"....hoping the Linux community will succeed in the dirty work in actually making it work...." Actually, it's been working very well for a long time, including being used as the base technology in Oracle RAC. Once again, your grasp of facts seems very weak.
"....Why not just get rid of HP-UX altogether and just concentrate on Linux on integrity...." Because HP still has a very healthy hp-ux market which is not shrinking as fast as Slowaris's. Also, HP can offer Integrity with four OS choices on the same server (six if you include Slowaris on Transitive and z/OS in PSI's emulator), unlike Sun which is a one-trick-pony, so whilst hp-ux still has a large advantage over Slowaris (check out them "lying people that know sh*t" at Gartner and their Magic Quadrants) HP will continue to sell hp-ux and convert Sun's Slowaris base onto a better UNIX. Transitive is only used to help old SPARC Slowaris customers move their apps unchanged to modern servers with a future. It's this lack of belief in Sun's ability to produce a future line of enterprise servers which is fueling the mass migration off SPARC Slowaris, and Open-in-a-closed-kinda-way Slowaris is just Sun's desperate attempt to save some proprietary revenue stream. I hope AdvFS is another tool that helps Linux eat even more Sun bizz, and I'm sure when it does then HP will benefit as the platform (it's that leading Linux server vendor thing, you see).
RE: Evil
Many HP lab staff have contributed to Linux so they might get involved in their free time, and I'm sure the old DEC/Compaq engineers will also be keen to help. But I don't expect HP will put any money on the table. HP may make free kit available through the DSPP program for commercial Linux developers, though. I'll be keen to see if any commercial Linux teams pick up AdvFS as it does offer a cheap option to paying for Veritas on Linux. I'd be especially keen to see if Oracle's Linux team do anything with it, and Red Hat. I'm not SuSE would be that fussed.
CNET have a good write up about this titled "The many lives of AdvFS". In it they answer the question: What file system project(s) could make use of AdvFS?
Their answer: "In the relatively near-term, ext4 is the next new file system that we're likely to see widely deployed on Linux. It's a largely incremental enhancement to the ubiquitous ext3 that focuses on larger file and file system sizes as well as various performance tweaks. Versions of ext4 are starting to appear in community releases such as Fedora 9. HP, among many others, has been involved in ext4 development, but AdvFS itself won't have a big impact here. Rather, it's Btrfs (pronounced "butter f s") with which HP is looking to hookup AdvFS."
Have to confess I've never heard of BTRFS before now, but it looks very cool (http://btrfs.wiki.kernel.org/index.php/Main_Page). It's actively being worked on by Oracle and is still early enough in its development cycle to benefit from an injection of AdvFS to implement some of the planned features. With both Oracle and HP working on this, it should shape up quite nicely in the next couple of years.
Actually Matt, if you download the source code and look in the README file in the advfs_gen2_src_v1 directory you can see that Compaq/HP completed the port of AdvFS to HP-UX. Reading elsewhere in docs it's also clear that not only did they port it, but they improved on it: hence the "generation 2" moniker. Here's the contents from the README:
"This directory includes the source code for a second generation implementation of AdvFS, including the kernel modules, commands and utilities.
This is the code that was ported to HP-UX. It is functionally complete and went through fairly extensive functional and stress testing. However, it should be considered beta quality and so you may spot bugs. It is recommended that you review the design documentation which is also available at this site as it will guide you through the major subsystems.
This code will not build on HP-UX because it requires a specialized build environment. HP-UX users are discouraged from attempting to build or use this code on HP-UX as it will not be supported by HP."
The lack of inclusion of AdvFS in HP-UX was not a technical one, it was a business decision. Veritas did not want AdvFS included in HP-UX, especially with the TruCluster CFS code rolled in as well. That would have killed their own product. I suspect they presented HP with a tasty business case that they just couldn't refuse.
Well when my home Linux desktop/server gets powercutted ext3 seems to recover its journal as part of the bootup without ever having to go into a long fsck self repair cycle, which is what ext2 used to do. I think someone calculated that when you go to multi TB disks you could have ended up with a fsck time after boot, or every X boots which would take upwards of an hour without journalling. That and the need to handle increasingly multi-core and SMP CPUs etc. Can't see development ending, and there aint no monopoly in Linux so we will see filesystem options for some time to come - though most Linux users won't notice because you accept the install program default unless you know why you need otherwise.
Interesting that all cameras and pen drives use ancient DOS based FAT, though for how long once people want to run multi-threading code on them without them grinding to a slow almost halt or have them blowing up ? It means you can go out and buy something that talks USB though and generally expect it to just work on Linux, which has to be a good thing.
I won't bother replying to Matt Bryant because he is so full of crap.
Back to the subject of discussion, it appears that HP actually made earnest effort to port AdvFS to HP-UX, and the much adorable TruCluster which actually people using Tru64 seem to prefer lot more over Veritas. Unfortunately, political issues aside, it's one thing to make code changes, and completely another thing to actually productize a complex filesystem and clustering products. Back during Compaq merger HP promised to fold these features into HP-UX, but they failed after more than 3 years of money and effort. There are conspiracy theories that Veritas offered them a better financial deal in terms of money and effort required to actually productize the code, the fact however remains that customers have to spend extra to get the Veritas software, in alternative to HP-UX itself having an integrated well engineered and truly admired clustered filesystem - basically shifting the burden the customers.
Anyway, as per the actual value of the AdvFS source release is concerned, by admission from HP's own engineers, it's unlikely AdvFS on Linux will ever be reality. They hope the ideas and the documentation and algorithms will provide insight into future development of enterprise grade filesystems in Linux (may be in 2011-2012). This is very different from Linux actually getting an enterprise ready filesystem. So the relevance of the source code release is actually 0 - sounds like, "Hey, if you are a geek and want to see how a great filesystem is supposed to be implemented, here have a look. You want it on Linux ? Sure, I can explain how it works here and there....you expect us to productize it on Linux ? Forget about it, we couldn't do it on our own Unix ? But be my guest"
All said, kudos to HP for making it free, I wonder why they didn't do it for TrueCluster also.