From: Qu Wenruo <wqu@suse.com>
To: linux-btrfs@vger.kernel.org
Subject: [PATCH v2 0/4] btrfs-progs: check: add the ability to repair extent item generation corruption
Date: Tue, 11 Aug 2020 19:44:47 +0800 [thread overview]
Message-ID: <20200811114451.28862-1-wqu@suse.com> (raw)
Although we have introduced the check ability to detect bad extent item
generation, there is no repair ability.
I thought it would be rare to hit, but real world cases prove I'm a
total idiot.
So this patchset will add the ability to repair, for both lowmem mode
and original mode, along with enhanced test images.
There is also a bug fix for original mode, which fails to detect such
problem if it's a tree block.
Changelog:
v2:
- Fix a type in the subject of the 4th patch
- Fix a bracket for for a logical and and bit and
The old code is fine and bit and has higher priority, but
the bracket is intended to make that higher priority more obvious.
Qu Wenruo (4):
btrfs-progs: check/lowmem: add the ability to repair extent item
generation
btrfs-progs: check/original: don't reset extent generation for
check_block()
btrfs-progs: check/original: add the ability to repair extent item
generation
btrfs-progs: tests/fsck: enhance invalid extent item generation test
cases
check/main.c | 77 ++++++++++++++-
check/mode-common.c | 59 ++++++++++++
check/mode-common.h | 3 +
check/mode-lowmem.c | 89 ++++++++++++++++--
...xz => bad_extent_item_gen_for_data.img.xz} | Bin
.../bad_extent_item_gen_for_tree_block.img.xz | Bin 0 -> 1804 bytes
.../test.sh | 19 ----
7 files changed, 216 insertions(+), 31 deletions(-)
rename tests/fsck-tests/044-invalid-extent-item-generation/{bad_extent_item_gen.img.xz => bad_extent_item_gen_for_data.img.xz} (100%)
create mode 100644 tests/fsck-tests/044-invalid-extent-item-generation/bad_extent_item_gen_for_tree_block.img.xz
delete mode 100755 tests/fsck-tests/044-invalid-extent-item-generation/test.sh
--
2.28.0
next reply other threads:[~2020-08-11 11:44 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-11 11:44 Qu Wenruo [this message]
2020-08-11 11:44 ` [PATCH v2 1/4] btrfs-progs: check/lowmem: add the ability to repair extent item generation Qu Wenruo
2020-08-11 11:44 ` [PATCH v2 2/4] btrfs-progs: check/original: don't reset extent generation for check_block() Qu Wenruo
2020-08-11 11:44 ` [PATCH v2 3/4] btrfs-progs: check/original: add the ability to repair extent item generation Qu Wenruo
2020-08-11 11:44 ` [PATCH v2 4/4] btrfs-progs: tests/fsck: enhance invalid extent item generation test cases Qu Wenruo
2020-12-01 17:45 ` [PATCH v2 0/4] btrfs-progs: check: add the ability to repair extent item generation corruption David Sterba
-- strict thread matches above, loose matches on Subject: below --
2020-08-11 11:41 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=20200811114451.28862-1-wqu@suse.com \
--to=wqu@suse.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox