From: David Sterba <dsterba@suse.cz>
To: Christoph Anton Mitterer <calestyo@scientia.net>
Cc: Sanidhya Solanki <jpage.lkml@gmail.com>, linux-btrfs@vger.kernel.org
Subject: Re: [PATCH] BTRFS: Adds an option to select RAID Stripe size
Date: Tue, 29 Dec 2015 19:06:44 +0100 [thread overview]
Message-ID: <20151229180643.GD4227@twin.jikos.cz> (raw)
In-Reply-To: <1451363188.7094.23.camel@scientia.net>
On Tue, Dec 29, 2015 at 05:26:28AM +0100, Christoph Anton Mitterer wrote:
> On Mon, 2015-12-28 at 19:03 -0500, Sanidhya Solanki wrote:
> > That sounds like an absolutely ghastly idea.
> *G* and it probably is ;)
>
>
> > Lots of potential for
> > mistakes and potential data loss. I take up the offer to implement
> > such a feature.
> > Only question is should it be in-place replacement or replace out to
> > another disk or storage type. Will wait for comments on that question
> > before implementing.
> I guess you really should have a decent discussion with some of the
> core btrfs developers (which I am not) before doing any efforts on this
> (and possibly wasting great amounts of work).
>
> I spoke largely from the user/admin side,... running a quite big
> storage Tier-2, we did many IO benchmarks over time (with different
> hardware RAID controllers) and also as our IO patterns changed over
> time...
> The result was that our preferred RAID chunk sizes changed over
> time,...
>
> Being able to to an online conversion (i.e. on the mounted fs) would be
> nice of course (from the sysadmin's side of view)
In theory this is possible with current on-disk data structures. The
stripe length is property of btrfs_chunk and changing it should be
possible the same way we do other raid transformations. The
implementation might be tricky at some places, but basically boils down
to the "read-" and "write-" stripe size. Reading chunks would always
respect the stored size, writing new data would use eg. the
superblock->stripesize or other value provided by the user.
> but even if that
> doesn't seem feasible an offline conversion may be useful (one simply
> may not have enough space left elsewhere to move the data of and create
> a new fs with different RAID chunk size from scratch)
Currently the userspace tools are not capable of the balance/relocation
functionality equivalent.
> Both open of course many questions (how to deal with crashes, etc.)...
> maybe having a look at how mdadm handles similar problems could be
> worth.
The crash consistency should remain, other than that we'd have to
enhance the balance filters to process only the unconverted chunks to
continue.
next prev parent reply other threads:[~2015-12-29 18:08 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-28 12:24 [PATCH] BTRFS: Adds an option to select RAID Stripe size Sanidhya Solanki
2015-12-28 22:19 ` Christoph Anton Mitterer
2015-12-28 20:38 ` Sanidhya Solanki
2015-12-29 1:21 ` Christoph Anton Mitterer
2015-12-28 21:43 ` Sanidhya Solanki
2015-12-29 3:42 ` Christoph Anton Mitterer
2015-12-29 0:03 ` Sanidhya Solanki
2015-12-29 4:26 ` Christoph Anton Mitterer
2015-12-29 1:31 ` Sanidhya Solanki
2015-12-29 6:03 ` Christoph Anton Mitterer
2015-12-29 2:23 ` Sanidhya Solanki
2015-12-29 15:32 ` Christoph Anton Mitterer
2015-12-29 16:44 ` Duncan
2015-12-30 2:56 ` Christoph Anton Mitterer
2015-12-29 18:06 ` David Sterba [this message]
2015-12-30 20:00 ` Christoph Anton Mitterer
2015-12-30 21:02 ` Duncan
2015-12-30 21:13 ` Christoph Anton Mitterer
2016-01-02 11:52 ` Sanidhya Solanki
2016-01-03 1:37 ` Qu Wenruo
2016-01-03 2:26 ` Christoph Anton Mitterer
2016-01-05 10:44 ` David Sterba
2016-01-05 18:48 ` Christoph Anton Mitterer
2016-01-10 3:11 ` Sanidhya Solanki
2016-01-11 1:29 ` Qu Wenruo
2016-01-11 15:43 ` Christoph Anton Mitterer
2016-01-11 11:49 ` Sanidhya Solanki
2016-01-11 15:57 ` Christoph Anton Mitterer
2016-01-11 16:01 ` Hugo Mills
2016-01-12 12:23 ` Austin S. Hemmelgarn
2016-01-12 12:07 ` Sanidhya Solanki
2015-12-29 13:39 ` David Sterba
2015-12-29 11:15 ` Sanidhya Solanki
2015-12-29 17:06 ` David Sterba
2015-12-29 21:32 ` Sanidhya Solanki
2015-12-30 6:39 ` Sanidhya Solanki
2015-12-30 11:59 ` Qu Wenruo
2015-12-30 9:54 ` Sanidhya Solanki
2015-12-30 14:10 ` Qu Wenruo
2015-12-30 11:15 ` Sanidhya Solanki
2015-12-30 15:58 ` David Sterba
2015-12-30 21:19 ` Sanidhya Solanki
2015-12-30 16:17 ` David Sterba
2015-12-30 21:21 ` Sanidhya Solanki
2016-01-05 10:33 ` David Sterba
2015-12-31 0:46 ` Qu Wenruo
2016-01-05 10:16 ` David Sterba
2015-12-30 19:48 ` Christoph Anton Mitterer
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=20151229180643.GD4227@twin.jikos.cz \
--to=dsterba@suse.cz \
--cc=calestyo@scientia.net \
--cc=jpage.lkml@gmail.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;
as well as URLs for NNTP newsgroup(s).