On Wed, Apr 15, 2015 at 10:47:54PM +0200, Jan Kara wrote: > Yeah, the credit estimate in ext4_symlink(): > credits = 4 + EXT4_MAXQUOTAS_INIT_BLOCKS(dir->i_sb) + EXT4_XATTR_TRANS_BLOCKS; > is just too pessimistic. Actually what we need for long symlinks is only > credits for inode creation + addition to orphan list (so 4 + > EXT4_MAXQUOTAS_TRANS_BLOCKS -- sb, gdt, bitmap, inode). Thanks, I just wanted to check with you before I fixed this, since we didn't have anything explicitly documenting what EXT4_MAXQUOAS_INIT_BLOCKS did (which I'll fix as well while I'm at it), and I didn't want to make anything assumptions that might come back and bite us later. Of course, the fact that ext4_symlinks was using way more credits than ext4_mknod made it clear something was buggy, and I couldn't imagine any circumstances why creating a long symlink (or more correctly, only the first part of creatinga long symlink) would require modifying 156 metadata blocks! :-) - Ted -- 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