On Mon, 8 Dec 2008 17:12:41 -0500 Theodore Tso <tytso@xxxxxxx> wrote: > Actually, if all popular architectures had a hardware-implemented > atomic_t, I wonder how much ext4 really needs the percpu counter, > especially given ext4's multiblock allocator; with ext3, given that > each block allocation required taking a per-filesystem spin lock, > optimizing away that spinlock was far more important for improving > ext3's scalability. But with the multiblock allocator, it may that > we're going through a lot more effort than what is truly necessary. I expect that the performance numbers for the percpu counters in the superblock are buried away in the historical git changelogs somewhere. I don't recall how much difference it made. An atomic_inc() of an fs-wide counter will have similar cost to spin_lock() of an fs-wide lock. If the multiblock allocator can avoid doing one atomic_inc() for each block and can instead do atomic_add(large_value, &counter) then yes, I'm sure that an fs-wide atomic_long_t would be OK. Of course, similar changes should be made in trucate, etc. -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html