On Thu, Jul 24, 2014 at 10:22:51AM -0400, Brian Foster wrote: > Inodes are always allocated in chunks of 64 and thus the loop in > xfs_inobt_insert() is unnecessary. I don't believe this is true. The number of inodes allocated at once is: mp->m_ialloc_inos = (int)MAX((__uint16_t)XFS_INODES_PER_CHUNK, sbp->sb_inopblock); So when the block size is, say, 64k, the number of 512 byte inodes allocated at once is 128. i.e. 2 chunks. Hence xfs_inobt_insert() can be called with a inode could of > 64 and therefore the loop is still necessary... And, indeed, we might want to increase the allocation size in future to do entire stripe units or stripe widths of inodes at once: http://xfs.org/index.php/Improving_inode_Caching#Contiguous_Inode_Allocation This also means a loop would be required -somewhere-... Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs