On Mon, Jun 10, 2019 at 12:42:26PM +0000, Hugo Mills wrote:
>    Hi, David,
> 
> On Mon, Jun 10, 2019 at 02:29:40PM +0200, David Sterba wrote:
> > this patchset brings the RAID1 with 3 and 4 copies as a separate
> > feature as outlined in V1
> > (https://lore.kernel.org/linux-btrfs/cover.1531503452.git.dste...@suse.com/).
> [...]
> > Compatibility
> > ~~~~~~~~~~~~~
> > 
> > The new block group types cost an incompatibility bit, so old kernel
> > will refuse to mount filesystem with RAID1C3 feature, ie. any chunk on
> > the filesystem with the new type.
> > 
> > To upgrade existing filesystems use the balance filters eg. from RAID6
> > 
> >   $ btrfs balance start -mconvert=raid1c3 /path
> [...]
> 
>    If I do:
> 
> $ btrfs balance start -mprofiles=raid13c,convert=raid1 \
>                       -dprofiles=raid13c,convert=raid6 /path
> 
> will that clear the incompatibility bit?

No the bit will stay, even though there are no chunks of the raid1c3
type. Same for raid5/6.

Dropping the bit would need an extra pass trough all chunks after
balance, which is feasible and I don't see usability surprises. That you
ask means that the current behaviour is probably opposite to what users
expect.

> (I'm not sure if profiles= and convert= work together, but let's
> assume that they do for the purposes of this question).

Yes they work together.

Reply via email to