Index: uspace/lib/ext4/libext4_directory.c
===================================================================
--- uspace/lib/ext4/libext4_directory.c	(revision 1d68621f5d08a671b1dcaeb82325a6ff06f853a2)
+++ uspace/lib/ext4/libext4_directory.c	(revision 41998ec18171bdb3f8e12bb918218cc0160b90ae)
@@ -268,4 +268,8 @@
 	uint64_t inode_size = ext4_inode_get_size(fs->superblock, inode_ref->inode);
 	uint32_t block_size = ext4_superblock_get_block_size(fs->superblock);
+
+	assert(inode_size % block_size == 0);
+
+	// Logical blocks are numbered from 0
 	uint32_t new_block_idx = inode_size / block_size;
 
@@ -282,6 +286,5 @@
 	}
 
-	inode_size += block_size;
-	ext4_inode_set_size(inode_ref->inode, inode_size);
+	ext4_inode_set_size(inode_ref->inode, inode_size + block_size);
 
 	inode_ref->dirty = true;
