All of lore.kernel.org
 help / color / mirror / Atom feed
From: Qu Wenruo <quwenruo@cn.fujitsu.com>
To: linux-btrfs@vger.kernel.org
Cc: dsterba@suse.cz
Subject: [PATCH 0/5] btrfs-find-root enhancement for chunk tree corrupted fs
Date: Mon, 22 Feb 2016 14:59:52 +0800	[thread overview]
Message-ID: <1456124397-21403-1-git-send-email-quwenruo@cn.fujitsu.com> (raw)

Before this patchset, btrfs-find-root needs valid chunk tree from the
fs.
However for chunk root corrupted case, btrfs-find-root is of no use due
to above limitation.

This patchset will allow open_ctree_fs_info() to return a fs_info
without any valid tree root, but system chunk map from superblock only.
And modify btrfs-find-root along with some infrastructure to do chunk
root search.

Also fix an old bug where btrfs-find-root will always skip the first
chunk, with its corresponding regression test.

This also provides the basis for later "btrfsck --chunk-root" and faster
chunk-recovery enhancement.

Qu Wenruo (5):
  btrfs: volume: Fix a bug causing btrfs-find-root to skip first chunk
  btrfs: Allow open_ctree to return fs_info even chunk tree is corrupted
  btrfs: Add support for tree block operations on fs_info without roots.
  btrfs: find-root: Allow btrfs-find-root to search chunk root even
    chunk     root is corrupted
  btrfs: misc-test: Add regression test for find-root gives empty result

 btrfs-corrupt-block.c                              |   2 +-
 btrfs-find-root.c                                  |  17 ++--
 ctree.h                                            |   1 +
 disk-io.c                                          |  99 +++++++++++++--------
 disk-io.h                                          |  35 ++++++--
 extent-tree.c                                      |   3 +-
 find-root.c                                        |  10 +--
 find-root.h                                        |   2 +-
 .../first_meta_chunk.btrfs-image                   | Bin 0 -> 4096 bytes
 tests/misc-tests/012-find-root-no-result/test.sh   |  20 +++++
 volumes.c                                          |  20 +++--
 11 files changed, 147 insertions(+), 62 deletions(-)
 create mode 100644 tests/misc-tests/012-find-root-no-result/first_meta_chunk.btrfs-image
 create mode 100644 tests/misc-tests/012-find-root-no-result/test.sh

-- 
2.7.1




             reply	other threads:[~2016-02-22  7:02 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-22  6:59 Qu Wenruo [this message]
2016-02-22  6:59 ` [PATCH 1/5] btrfs-progs: volume: Fix a bug causing btrfs-find-root to skip first chunk Qu Wenruo
2016-02-22  6:59 ` [PATCH 2/5] btrfs-progs: Allow open_ctree to return fs_info even chunk tree is corrupted Qu Wenruo
2016-02-22  6:59 ` [PATCH 3/5] btrfs-progs: Add support for tree block operations on fs_info without roots Qu Wenruo
2016-02-22  6:59 ` [PATCH 4/5] btrfs-progs: find-root: Allow btrfs-find-root to search chunk root even chunk root is corrupted Qu Wenruo
2016-02-22  6:59 ` [PATCH 5/5] btrfs-progs: misc-test: Add regression test for find-root gives empty result Qu Wenruo
2016-02-24 12:10   ` David Sterba
2016-02-25  0:36     ` Qu Wenruo
2016-02-22  7:24 ` [PATCH 0/5] btrfs-find-root enhancement for chunk tree corrupted fs Qu Wenruo
2016-02-24 12:38 ` David Sterba
2016-02-25  0:37   ` Qu Wenruo

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=1456124397-21403-1-git-send-email-quwenruo@cn.fujitsu.com \
    --to=quwenruo@cn.fujitsu.com \
    --cc=dsterba@suse.cz \
    --cc=linux-btrfs@vger.kernel.org \
    /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.