Tux3 Gets Harshly Criticized Over Code Quality

Written by Michael Larabel in Linux Kernel on 19 May 2014 at 11:15 AM EDT. 20 Comments
LINUX KERNEL
On Friday the Tux3 file-system was called for review and offered to the mainline Linux kernel. Tux3 has been under development for more than six years but it seems that even after all this time and improvements, the code quality still isn't the best and the work is being scrutinized.

XFS developer Dave Chinner came out Sunday afternoon criticizing the Tux3 code. Dave began, "I had a quick look at the code. This is not a code review - it's a message to tell everyone else not to waste their time looking at the code right now..."
The code is a dog's breakfast of #ifdef hackery, stuff that doesn't work (lots of code surrounded by "#if 0"), there's "#if __KERNEL__ ... #else .... #endif" all through the code, etc. The "declarations within code" stuff is just horrible - it's not even used consistently so it just looks like laziness to me. [In other words], the code is an ugly mess and needs a serious amount of cleanup work.

There's also several kernel hacks within the code. One of the long talked about features was also the Tux3 built-in snapshotting capability that's supposed to be superior to ZFS and Btrfs, but Chinner couldn't find any of that code, only some code comments about adding snapshots.


Dave concluded:
Tux3 is just a prototype of a standard journaling filesystem. The tux3 code is still missing large parts of it's intended core functionality and there is nothing to tell us when that might appear. It really appears to me that tux3 is where btrfs was 5-6 years ago - the core of an idea, but a long, long way from being feature complete or production ready. btrfs still doesn't handle ENOSPC well and given that tux3's is following the same development path (BUG on ENOSPC) it doesn't fill me with any confidence that tux3 is going to turn out any better than btrfs in 5 years time.

Really, I don't see how you plan to bring tux3 to be feature complete and production ready in less than 2-3 years. The current code is barely functional at this point and there's still questions that haven't been answered about whether core tux3 functionality can even be made to work properly, let alone integrated effectively.

IMO, it's a waste of time right now asking anyone to review this code for inclusion until it has been cleaned up, the core infrastructure problems have been solved and the core filesystem code is much closer to feature complete.....

Lead Tux3 developer Daniel Phillips has yet to respond to these critical comments. For what it's worth, it was also Dave Chinner in 2012 who was taking shots at EXT4 and Btrfs.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week