Skip to content

dm raid: fix redundancy check and avoid frozen raid recovery

Heinz Mauelshagen dm-devel 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest5 patches 0 repliesNew

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/5dm raid: validate current raid sets redundancydrivers/md/dm-raid.c+6 -10 replies
2/5dm raid: avoid keeping raid set frozen altogetherDocumentation/device-mapper/dm-raid.txt drivers/md/dm-raid.c+71 -390 replies
3/5dm raid: ensure 'a' chars during reshapedrivers/md/dm-raid.c+9 -00 replies
4/5dm raid: simplify rs_get_progress()drivers/md/dm-raid.c+3 -200 replies
5/5dm raid: use rs_is_raid*() / commentdrivers/md/dm-raid.c+9 -110 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/5] dm raid: fix redundancy check and avoid frozen raid recovery

Patch 1 fixes validate_raid_redundancy() to check the current raid set level as stored in the superblock rather than the constructor requested one. In case of a raid0 to raid10 conversion, the related flaw caused a raid10 check on the given raid0 raid set leading to a divide error.

Patch 2 hardens raid resync/recover/reshape by retrieving any current related offsets from the active, uspended mapping thus avoiding frozen raid recovery across reloads altogether.

Patch 3 ensures 'a' chars during reshaping.

Patch 4 + 5 add simplification and cleanup without functional change.

This series presumes
https://www.redhat.com/archives/dm-devel/2017-December/msg00012.html
or
linux-dm.git, revision-range fbc7c07ec23c..b84cf26924cf respectively.

Heinz Mauelshagen (5):
dm raid: validate current raid sets redundancy dm raid: avoid keeping raid set frozen altogether dm raid: ensure 'a' chars during reshape dm raid: simplify rs_get_progress()
dm raid: use rs_is_raid*() / comment

 Documentation/device-mapper/dm-raid.txt |   1 +
 drivers/md/dm-raid.c                    | 168 ++++++++++++++++++--------------
 2 files changed, 98 insertions(+), 71 deletions(-)
Signature · 1 line
2.13.6