All of lore.kernel.org
 help / color / mirror / Atom feed
From: Darren Hart <dvhart@infradead.org>
To: Theodore Ts'o <tytso@mit.edu>
Cc: Andreas Dilger <adilger@dilger.ca>,
	linux-ext4 <linux-ext4@vger.kernel.org>
Subject: Re: [e2fsprogs] initdir: Writing inode after the initial write?
Date: Tue, 04 Dec 2012 09:46:06 -0800	[thread overview]
Message-ID: <50BE36DE.6030300@infradead.org> (raw)
In-Reply-To: <20121204152231.GG29083@thunk.org>



On 12/04/2012 07:22 AM, Theodore Ts'o wrote:
> 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.....
> 


I think what I'm reading here is that if you care about having a
filesystem that makes hardware specific optimizations, you're better off
mounting the device and copying the filesystem over. In that case, plan
on needing root access.


> 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.

Great, sounds like this approach is still viable. Thanks Ted!

--
Darren Hart
Intel Open Source Technology Center
Yocto Project - Technical Lead - Linux Kernel

  reply	other threads:[~2012-12-04 17:46 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-01  2:13 [e2fsprogs] initdir: Writing inode after the initial write? Darren Hart
2012-12-01  4:23 ` Andreas Dilger
2012-12-01  5:08   ` Darren Hart
2012-12-01 19:31     ` Andreas Dilger
2012-12-03 19:46       ` Darren Hart
2012-12-04 10:45         ` Yongqiang Yang
2012-12-04 17:42           ` Darren Hart
2012-12-04 10:59         ` Andreas Dilger
2012-12-04 17:43           ` Darren Hart
2012-12-04 19:08             ` Theodore Ts'o
2012-12-04 19:40               ` Darren Hart
2012-12-04 20:00                 ` Theodore Ts'o
2012-12-04 20:10                   ` Darren Hart
2012-12-04 20:36                     ` Theodore Ts'o
2012-12-04 15:22         ` Theodore Ts'o
2012-12-04 17:46           ` Darren Hart [this message]
2012-12-04 19:24             ` Theodore Ts'o

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50BE36DE.6030300@infradead.org \
    --to=dvhart@infradead.org \
    --cc=adilger@dilger.ca \
    --cc=linux-ext4@vger.kernel.org \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.