This patch fixes the out-of-bounds check of migration parameters in qmp_migrate_set_parameters() for cpu-throttle-initial and cpu-throttle-increment by adding a return statement for both as they were broken since their introduction in 2.5 via commit 1626fee. Due to the missing return statements, parameters were getting set to out-of-bounds values despite the error.
Signed-off-by: Ashijeet Acharya <ashijeetacha...@gmail.com> Reviewed-by: Eric Blake <ebl...@redhat.com> --- Changes in v4: -Fix the typo in commit message -Include the commit id which caused the regression --- migration/migration.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/migration/migration.c b/migration/migration.c index 9b4aa55..cd8334c 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -805,6 +805,7 @@ void qmp_migrate_set_parameters(MigrationParameters *params, Error **errp) error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "cpu_throttle_initial", "an integer in the range of 1 to 99"); + return; } if (params->has_cpu_throttle_increment && (params->cpu_throttle_increment < 1 || @@ -812,6 +813,7 @@ void qmp_migrate_set_parameters(MigrationParameters *params, Error **errp) error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "cpu_throttle_increment", "an integer in the range of 1 to 99"); + return; } if (params->has_max_bandwidth && (params->max_bandwidth < 0 || params->max_bandwidth > SIZE_MAX)) { -- 2.6.2