public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
From: WenRuo Qu <wqu@suse.com>
To: "linux-btrfs@vger.kernel.org" <linux-btrfs@vger.kernel.org>
Cc: WenRuo Qu <wqu@suse.com>
Subject: [PATCH v2 00/14] btrfs-progs: image: Enhance and bug fixes
Date: Tue, 2 Jul 2019 10:07:10 +0000	[thread overview]
Message-ID: <20190702100650.2746-1-wqu@suse.com> (raw)

This patchset is based on v5.1.1 tag.

With this update, the patchset has the following features:
- various small fixes and enhancements for btrfs-image
  * Fix an indent misalign
  * Fix an access-beyond-boundary bug
  * Fix a confusing error message due to unpopulated errno
  * Output error message for chunk tree build error
  * Use SZ_* to replace intermediate number
  * Verify superblock before restore

- btrfs-image dump support 
  This introduce a new option -d to dump data.
  Due to item size limit, we have to enlarge the existing limit from
  256K (enough for tree blocks, but not enough for free space cache) to
  256M.
  This change will cause incompatibility, thus we have to introduce a
  new magic as version. While keeping all other on-disk format the same.

- Reduce memory usage for both compressed and uncompressed images
  Originally for compressed extents, we will use 4 * max_pending_size as
  output buffer, which can be 1G for 256M newer limit.

  Change it to use at most 512K for compressed extent output buf, and
  also use 512K fixed buffer size for uncompressed extent.

- btrfs-image restore optimization
  This will speed up chunk item search during restore.

Changelog:
v2:
- New small fixes:
  * Fix a confusing error message due to unpopulated errno
  * Output error message for chunk tree build error
  
- Fix a regression of previous version
  Patch "btrfs-progs: image: Rework how we search chunk tree blocks"
  deleted a "ret = 0" line which could cause false early exit.

- Reduce memory usage for data dump

Qu Wenruo (14):
  btrfs-progs: image: Use SZ_* to replace intermediate size
  btrfs-progs: image: Fix an indent misalign
  btrfs-progs: image: Fix an access-beyond-boundary bug when there are
    32 online CPUs
  btrfs-progs: image: Verify the superblock before restore
  btrfs-progs: image: Introduce framework for more dump versions
  btrfs-progs: image: Introduce -d option to dump data
  btrfs-progs: image: Allow restore to record system chunk ranges for
    later usage
  btrfs-progs: image: Introduce helper to determine if a tree block is
    in the range of system chunks
  btrfs-progs: image: Rework how we search chunk tree blocks
  btrfs-progs: image: Reduce memory requirement for decompression
  btrfs-progs: image: Don't waste memory when we're just extracting
    super block
  btrfs-progs: image: Reduce memory usage for chunk tree search
  btrfs-progs: image: Output error message for chunk tree build error
  btrfs-progs: image: Fix error output to show correct return value

 disk-io.c        |   6 +-
 disk-io.h        |   1 +
 image/main.c     | 874 +++++++++++++++++++++++++++++++++++------------
 image/metadump.h |  15 +-
 4 files changed, 666 insertions(+), 230 deletions(-)

-- 
2.22.0


             reply	other threads:[~2019-07-02 10:25 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-02 10:07 WenRuo Qu [this message]
2019-07-02 10:07 ` [PATCH v2 01/14] btrfs-progs: image: Use SZ_* to replace intermediate size WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 02/14] btrfs-progs: image: Fix an indent misalign WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 03/14] btrfs-progs: image: Fix an access-beyond-boundary bug when there are 32 online CPUs WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 04/14] btrfs-progs: image: Verify the superblock before restore WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 05/14] btrfs-progs: image: Introduce framework for more dump versions WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 06/14] btrfs-progs: image: Introduce -d option to dump data WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 07/14] btrfs-progs: image: Allow restore to record system chunk ranges for later usage WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 08/14] btrfs-progs: image: Introduce helper to determine if a tree block is in the range of system chunks WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 09/14] btrfs-progs: image: Rework how we search chunk tree blocks WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 10/14] btrfs-progs: image: Reduce memory requirement for decompression WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 11/14] btrfs-progs: image: Don't waste memory when we're just extracting super block WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 12/14] btrfs-progs: image: Reduce memory usage for chunk tree search WenRuo Qu
2019-07-02 10:07 ` [PATCH v2 13/14] btrfs-progs: image: Output error message for chunk tree build error WenRuo Qu
2019-07-02 10:08 ` [PATCH v2 14/14] btrfs-progs: image: Fix error output to show correct return value WenRuo Qu
2019-07-04  2:13 ` [PATCH v2 00/14] btrfs-progs: image: Enhance and bug fixes Anand Jain
2019-07-04  2:54   ` 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=20190702100650.2746-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