[Ocfs2-tools-devel] [PATCH] o2image: dx_dirs support
Wengang Wang
wen.gang.wang at oracle.com
Wed May 19 20:49:41 PDT 2010
On 10-05-20 11:51, Coly Li wrote:
>
>
> On 05/20/2010 10:20 AM, Mark Fasheh Wrote:
> > O2image wasn't picking up the entire dx_tree. This adds detection of an
> > indexed dir to o2image so that it can traverse the tree in dx_root->dr_list
> > and record the meta data within.
> >
> > Signed-off-by: Mark Fasheh <mfasheh at suse.com>
> > ---
> > o2image/o2image.c | 33 ++++++++++++++++++++++++++++++++-
> > 1 files changed, 32 insertions(+), 1 deletions(-)
> >
> > diff --git a/o2image/o2image.c b/o2image/o2image.c
> [snip]
> > static errcode_t traverse_inode(ocfs2_filesys *ofs, uint64_t inode)
> > {
> > struct ocfs2_super_block *super;
> > @@ -234,9 +260,14 @@ static errcode_t traverse_inode(ocfs2_filesys *ofs, uint64_t inode)
> > ret = traverse_chains(ofs, &(di->id2.i_chain), dump_type);
> > else if (di->i_flags & OCFS2_DEALLOC_FL)
> > ret = mark_dealloc_bits(ofs, &(di->id2.i_dealloc));
> > - else
> > + else {
> > + if (S_ISDIR(di->i_mode) &&
> > + (di->i_dyn_features & OCFS2_INDEXED_DIR_FL)) {
> > + ret = traverse_dx_root(ofs, di->i_dx_root);
> > + }
>
> Hi Mark,
>
> How about call ocfs2_supports_indexed_dirs() before check di->i_dyn_features, like this,
> + else {
> + if (S_ISDIR(di->i_mode) &&
> + ocfs2_supports_indexed_dirs(super) &&
> + (di->i_dyn_features & OCFS2_INDEXED_DIR_FL)) {
> + ret = traverse_dx_root(ofs, di->i_dx_root);
> + }
Hi Coly,
If this can happen(I'm not sure), seems we shouldn't add the super
check.
indexed dir feature enabled when mkfs or tunefs;
then some indexed dirs created on disk;
indexed dir feature disabled by tunefs;
o2image;
regards,
wengang.
More information about the Ocfs2-tools-devel
mailing list