From: "Austin S. Hemmelgarn" <ahferroin7@gmail.com>
To: Christoph Anton Mitterer <calestyo@scientia.net>,
kreijack@inwind.it, Qu Wenruo <quwenruo@cn.fujitsu.com>,
Zygo Blaxell <ce3g8jdj@umail.furryterror.org>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: [PATCH] btrfs: raid56: Use correct stolen pages to calculate P/Q
Date: Mon, 28 Nov 2016 14:39:31 -0500 [thread overview]
Message-ID: <56437dde-944a-52dd-146d-d94824ed408e@gmail.com> (raw)
In-Reply-To: <1480359711.6747.13.camel@scientia.net>
On 2016-11-28 14:01, Christoph Anton Mitterer wrote:
> On Mon, 2016-11-28 at 19:45 +0100, Goffredo Baroncelli wrote:
>> I am understanding that the status of RAID5/6 code is so badly
> Just some random thought:
>
> If the code for raid56 is really as bad as it's often claimed (I
> haven't read it, to be honest) .... could it perhaps make sense to
> consider to start it from scratch? And/or merge it with a more generic
> approach that allows n-way-parity RAIDs (I think such patch was posted
> hear some year(s) ago).
Such a suggestion for higher order parity support was made some time ago
(at least a year and a half I believe, probably more). It was at the
time stated that it was planned after n-way replication and raid5/6.
Personally I feel that sort of road-map is misguided, as all three are
functionally interdependent as the original proposal had suggested, and
I'm also of the opinion that the raid5/6 code probably should be redone
from scratch (I wasn't the one who wrote it, and can't contribute much
more than some attempts at testing as a third-party, so I obviously
can't make that decision myself). Doing so would likely make it much
easier to implement higher order parity (and arbitrary
striping/replication, which is something I'm _very_ interested in). The
existing code isn't bad in a stylistic or even traditional coding sense,
but makes a significant number of poor choices in the high-level side of
things (all the issues with parity for example). If we just want
working raid5/6, then working on the existing implementation is fine.
If we want support for arbitrary combinations of
striping/replication/parity (which would be a killer feature and
something that BTRFS could actually say nothing else has), then
rewriting from scratch is probably easier because of some of the
low-level design choices made in the raid5/6 code.
Part of the problem though is that there are more admins and support
focused people than coders involved. In my case I very much do not have
the expertise to work on kernel code beyond tweaking constants and
twiddling default values for things (I'm technically a programmer, but
90% of the work I do is sysops type stuff written in a mix of sh,
Python, and about 7 different data serialization formats).
next prev parent reply other threads:[~2016-11-28 19:39 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-21 8:50 [PATCH] btrfs: raid56: Use correct stolen pages to calculate P/Q Qu Wenruo
2016-11-21 18:48 ` Goffredo Baroncelli
2016-11-22 0:28 ` Qu Wenruo
2016-11-22 18:02 ` Goffredo Baroncelli
2016-11-25 4:31 ` Zygo Blaxell
2016-11-25 4:40 ` Gareth Pye
2016-11-25 5:07 ` Zygo Blaxell
2016-11-26 13:12 ` Goffredo Baroncelli
2016-11-26 18:54 ` Zygo Blaxell
2016-11-26 23:16 ` Goffredo Baroncelli
2016-11-27 16:53 ` Zygo Blaxell
2016-11-28 0:40 ` Qu Wenruo
2016-11-28 18:45 ` Goffredo Baroncelli
2016-11-28 19:01 ` Christoph Anton Mitterer
2016-11-28 19:39 ` Austin S. Hemmelgarn [this message]
2016-11-28 3:37 ` Christoph Anton Mitterer
2016-11-28 3:53 ` Andrei Borzenkov
2016-11-28 4:01 ` Christoph Anton Mitterer
2016-11-28 18:32 ` Goffredo Baroncelli
2016-11-28 19:00 ` Christoph Anton Mitterer
2016-11-28 21:48 ` Zygo Blaxell
2016-11-29 1:52 ` Christoph Anton Mitterer
2016-11-29 3:19 ` Zygo Blaxell
2016-11-29 7:35 ` Adam Borowski
2016-11-29 14:24 ` Christoph Anton Mitterer
2016-11-22 18:58 ` Chris Mason
2016-11-23 0:26 ` Qu Wenruo
2016-11-26 17:18 ` Chris Mason
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=56437dde-944a-52dd-146d-d94824ed408e@gmail.com \
--to=ahferroin7@gmail.com \
--cc=calestyo@scientia.net \
--cc=ce3g8jdj@umail.furryterror.org \
--cc=kreijack@inwind.it \
--cc=linux-btrfs@vger.kernel.org \
--cc=quwenruo@cn.fujitsu.com \
/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).