From: Andreas Dilger <adilger@sun.com>
To: Manuel Benitez <rickyb@google.com>
Cc: linux-ext4@vger.kernel.org
Subject: Re: Tool to view extent metadata
Date: Mon, 13 Jul 2009 13:27:15 -0600 [thread overview]
Message-ID: <20090713192715.GN12939@webber.adilger.int> (raw)
In-Reply-To: <23904f640907130803w20089c79md6f6ceef54ff8f8e@mail.gmail.com>
On Jul 13, 2009 08:03 -0700, Manuel Benitez wrote:
> Thank you for the reply. I wrote a program that uses FIEMAP to see
> what I could get from it. It gives the same information that you can
> extract from FIBMAP except that it is much more efficient (one ioctl
> call per extent rather than one call per block). Unfortunately, it
> does not give much insight into the structure of the metadata, so
> there is no way to tell how efficiently the metadata represents the
> file (depth of extent tree, number of internal and leaf nodes, etc.).
It would also be possible to extend the FIEMAP interface to return
metadata by adding a new FIEMAP_FLAG_METADATA and then have the
metadata "extents" be marked with a new FIEMAP_EXTENT_METADATA.
In my previous musings on this topic, I thought it would make sense
to have the "extent" of e.g. an index block be the the logical range
of the file that this index block covers. The inode itself might be
marked with FIEMAP_EXTENT_INODE|FIEMAP_EXTENT_METADATA and cover the
entire logical range of the file.
This would essentially allow the caller to generate a tree of the
metadata by heirarchical ordering of the extent ranges.
> On Thu, Jul 9, 2009 at 3:55 PM, Andreas Dilger<adilger@sun.com> wrote:
> > On Jul 09, 2009 15:17 -0700, Manuel Benitez wrote:
> >> I'm currently evaluating the ext4 allocator and one thing I've come
> >> across is the lack of a tool that displays the exact structure of the
> >> extents making up a file. I've found plenty of tools that will tell me
> >> how many contiguous segments a file contains, but nothing so far to
> >> let me see the actual makeup of the extents that map the inode to the
> >> blocks that comprise the file. Have I just missed something obvious,
> >> or would this be something worth me spending some time doing?
> >>
> >> If so, one option would be to either modify the stat command or add a
> >> similar command in debugfs to show the extents from the roots through
> >> the root down to the leafs. Anyone have preferences or opinions?
> >
> > The "filefrag" tool in recent e2fsprogs should provide such information,
> > using the FIEMAP ioctl to extract extent information from the kernel.
Cheers, Andreas
--
Andreas Dilger
Sr. Staff Engineer, Lustre Group
Sun Microsystems of Canada, Inc.
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2009-07-13 19:27 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-09 22:17 Tool to view extent metadata Manuel Benitez
2009-07-09 22:55 ` Andreas Dilger
2009-07-13 15:03 ` Manuel Benitez
2009-07-13 15:28 ` Eric Sandeen
2009-07-13 19:27 ` Andreas Dilger [this message]
2009-07-10 5:19 ` Aneesh Kumar K.V
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=20090713192715.GN12939@webber.adilger.int \
--to=adilger@sun.com \
--cc=linux-ext4@vger.kernel.org \
--cc=rickyb@google.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).