On Jun 10, 2006 10:54 -0400, Jeff Garzik wrote: > Christoph Hellwig wrote: > >Alex mentioned a few times that the extents code just adds three if. > >I'm pretty sure that will not give you any regressions in the existing > >codebase. Can we concentrate on the more useful discussion topics now? > > Alex is off by an order of magnitude. I've re-read the 13-patch series, > and this is the result of the review: Thanks for at least looking at the code, which was the intention of posting the patches... It caused quite a few more ruffled feathers than we expected. > Three added in extent map support. As Christoph quoted Alex, "the extents code", which you confirm is 3 "ifs". > There are _five_ "if (new) .. else .." constructs added in JBD alone. Actually, 64-bit support in the JBD code was written by Zach Brown for OCFS, so I think they want this patch into the kernel regardless. It's relatively simple change though - all conditional on a single flag. > Twenty-seven (27) such constructs in 48-bit physical block support. Though there are really only 2 conditionals (in macros, one for read and one for write) that are used everywhere, so it's not as bad as it seems. > Two more in 48-bit ACL support. > > And finally, the superblock changes don't add any branches, like the > other code does, but it does double the endian conversion work that > -every- user must do, even if they don't use 48bit at all. These are all related to 48-bit filesystem support, not strictly extents. Much of the 48-bit code is dependent upon CONFIG_LBD or sizeof(ext3_fsblk_t), so if people have no desire to use large (2TB+) or larger (16TB+) filesystems these conditionals disappear at compile time. Cheers, Andreas -- Andreas Dilger Principal Software Engineer Cluster File Systems, Inc. - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html