From 1082f65d0b784e8f31cb340dbb4e2a07b6bd4625 Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Tue, 17 Nov 2020 16:26:46 -0500 Subject: fix alignment --- src/partvi | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/partvi b/src/partvi index 322b5ba..16e14b3 100755 --- a/src/partvi +++ b/src/partvi @@ -164,13 +164,22 @@ do else partuuid= fi - #stat -L --format="$part %s" "$part" $sudo losetup -L -f "$part" dev=$(losetup -j "$part" -O NAME --noheadings) devsz=$($sudo blockdev --getsz $dev) + + alignment_error=$((devsz % 2048)) + printf '%d %d linear %s 0\n' $start $devsz "$dev" >> "$map" start=$((start + devsz)) + if [ $alignment_error -gt 0 ] + then + devsz=$((2048 - alignment_error)) + printf '%d %d zero\n' $start $devsz >> "$map" + start=$((start + devsz)) + fi + done $sudo dmsetup -v create "$map_name" "$map" $sudo dmsetup remove "$map_name" -- cgit v1.2.3