migrate: Fix bounds check for migration parameters in migration.c
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 <ashijeetacharya@gmail.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
This commit is contained in:
		
							parent
							
								
									7f375e0446
								
							
						
					
					
						commit
						091ecc8b69
					
				@ -796,6 +796,7 @@ void qmp_migrate_set_parameters(MigrationParameters *params, Error **errp)
 | 
				
			|||||||
        error_setg(errp, QERR_INVALID_PARAMETER_VALUE,
 | 
					        error_setg(errp, QERR_INVALID_PARAMETER_VALUE,
 | 
				
			||||||
                   "cpu_throttle_initial",
 | 
					                   "cpu_throttle_initial",
 | 
				
			||||||
                   "an integer in the range of 1 to 99");
 | 
					                   "an integer in the range of 1 to 99");
 | 
				
			||||||
 | 
					        return;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    if (params->has_cpu_throttle_increment &&
 | 
					    if (params->has_cpu_throttle_increment &&
 | 
				
			||||||
        (params->cpu_throttle_increment < 1 ||
 | 
					        (params->cpu_throttle_increment < 1 ||
 | 
				
			||||||
@ -803,6 +804,7 @@ void qmp_migrate_set_parameters(MigrationParameters *params, Error **errp)
 | 
				
			|||||||
        error_setg(errp, QERR_INVALID_PARAMETER_VALUE,
 | 
					        error_setg(errp, QERR_INVALID_PARAMETER_VALUE,
 | 
				
			||||||
                   "cpu_throttle_increment",
 | 
					                   "cpu_throttle_increment",
 | 
				
			||||||
                   "an integer in the range of 1 to 99");
 | 
					                   "an integer in the range of 1 to 99");
 | 
				
			||||||
 | 
					        return;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (params->has_compress_level) {
 | 
					    if (params->has_compress_level) {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user