Re: [e2fsprogs] initdir: Writing inode after the initial write?

Theodore Ts'o
2012-12-04T15:22:36Z

On Mon, Dec 03, 2012 at 11:46:07AM -0800, Darren Hart wrote:
> > Maybe Ted can confirm whether that is true or not. At least I recall
> > that the block allocator inside libext2fs was horrible, and creating
> > large files was problematic.
>
> Ted, can you confirm?

The block allocator inside libext2fs is primitive; it will find the
first free block and use it. It should be OK for populating large
flash devices for file system images stored on flash devices (where
seeks don't matter so block group placement isn't a big deal), and
especially for fixed root file system images which are mounted
read-only and which tend to be updated only once in a while (i.e., in
the cases of Android system updates), and so you don't really care
about aligning file writes to eMMC erase blocks.

It could certainly be made better, and for people who were trying to
use libext2fs with FUSE targetting hard drives, there are ample
opportunities for improvements.....

Creating large files shouldn't be a problem (unless what you mean is
ext4 huge files ala the huge file feature where the number of 512
blocks exceeds 2**32, in which case you should probably test that case
if you care about it), and it certainly will create extents-based
files.

Regards,

- Ted