Update growpart with upstream

pull/89/head
Vlastimil Holer 7 years ago
parent 41cc2d9075
commit d2cd1be047
No known key found for this signature in database
GPG Key ID: EB549BADEFD07C53

@ -63,9 +63,9 @@ cleanup() {
if [ -n "${RESTORE_FUNC}" ]; then
error "***** WARNING: Resize failed, attempting to revert ******"
if ${RESTORE_FUNC} ; then
error "***** Appears to have gone OK ****"
error "***** Restore appears to have gone OK ****"
else
error "***** FAILED! ******"
error "***** Restore FAILED! ******"
if [ -n "${RESTORE_HUMAN}" -a -f "${RESTORE_HUMAN}" ]; then
error "**** original table looked like: ****"
cat "${RESTORE_HUMAN}" 1>&2
@ -164,9 +164,16 @@ sfdisk_worked_but_blkrrpart_failed() {
# exit code found was just 1, but dont insist on that
#[ $ret -eq 1 ] || return 1
# Successfully wrote the new partition table
grep -qi "Success.* wrote.* new.* partition" "$output" &&
if grep -qi "Success.* wrote.* new.* partition" "$output"; then
grep -qi "BLKRRPART: Device or resource busy" "$output"
return
return
# The partition table has been altered.
elif grep -qi "The.* part.* table.* has.* been.* altered" "$output"; then
# Re-reading the partition table failed
grep -qi "Re-reading.* partition.* table.* failed" "$output"
return
fi
return $ret
}
get_sfdisk_version() {
@ -337,7 +344,10 @@ resize_sfdisk() {
[ $ret -eq 0 ] || RESTORE_FUNC="${restore_func}"
if [ $ret -eq 0 ]; then
:
debug 1 "resize of ${DISK} returned 0."
if [ $VERBOSITY -gt 2 ]; then
sed 's,^,| ,' "${change_out}" 1>&2
fi
elif $PT_UPDATE &&
sfdisk_worked_but_blkrrpart_failed "$ret" "${change_out}"; then
# if the command failed, but it looks like only because
@ -624,7 +634,7 @@ pt_update() {
fi
# partx only works on block devices (do not run on file)
[ -b "$dev" ] || return 0
partx --update "$part" "$dev"
partx --update --nr "$part" "$dev"
}
has_cmd() {
@ -771,7 +781,7 @@ trap cleanup 0 # EXIT - some shells may not like 'EXIT' but are ok with 0
get_table_format "$DISK" || fail
format=$_RET
get_resizer "$format" "$resizer" ||
fail "failed to get a resizer for id '$id'"
fail "failed to get a resizer for id '$id'"
resizer=$_RET
debug 1 "resizing $PART on $DISK using $resizer"

Loading…
Cancel
Save