qga: unset frozen state if no mount points are frozen
If we set mountpoints to qmp_guest_fsfreeze_freeze_list, we may got nothing to freeze as all mountpoints are not valid. So call ga_unset_frozen in this senario. Also, if we return 0 frozen fs, there is no need to call guest-fsfreeze-thaw. Cc: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Chen Hanxiao <chenhanxiao@gmail.com> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
This commit is contained in:
parent
b07cd3e748
commit
65650f0182
|
@ -1274,6 +1274,12 @@ int64_t qmp_guest_fsfreeze_freeze_list(bool has_mountpoints,
|
||||||
}
|
}
|
||||||
|
|
||||||
free_fs_mount_list(&mounts);
|
free_fs_mount_list(&mounts);
|
||||||
|
/* We may not issue any FIFREEZE here.
|
||||||
|
* Just unset ga_state here and ready for the next call.
|
||||||
|
*/
|
||||||
|
if (i == 0) {
|
||||||
|
ga_unset_frozen(ga_state);
|
||||||
|
}
|
||||||
return i;
|
return i;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
|
|
|
@ -435,7 +435,9 @@
|
||||||
# for up to 10 seconds by VSS.
|
# for up to 10 seconds by VSS.
|
||||||
#
|
#
|
||||||
# Returns: Number of file systems currently frozen. On error, all filesystems
|
# Returns: Number of file systems currently frozen. On error, all filesystems
|
||||||
# will be thawed.
|
# will be thawed. If no filesystems are frozen as a result of this call,
|
||||||
|
# then @guest-fsfreeze-status will remain "thawed" and calling
|
||||||
|
# @guest-fsfreeze-thaw is not necessary.
|
||||||
#
|
#
|
||||||
# Since: 0.15.0
|
# Since: 0.15.0
|
||||||
##
|
##
|
||||||
|
|
Loading…
Reference in New Issue