vl: exit if a bad property value is passed to -global
When passing '-global driver=host-powerpc64-cpu,property=compat,value=foo'
on the command line, without this patch, we get the following warning per
device (which means many lines if the guests has many cpus):
qemu-system-ppc64: Warning: can't apply global host-powerpc64-cpu.compat=foo:
    Invalid compatibility mode "foo"
... and QEMU continues execution, ignoring the property.
With this patch, we get a single line:
qemu-system-ppc64: can't apply global host-powerpc64-cpu.compat=foo:
    Invalid compatibility mode "foo"
... and QEMU exits.
The previous behavior is kept for hotplugged devices since we don't want
QEMU to exit when doing device_add.
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Greg Kurz <groug@kaod.org>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
			
			
This commit is contained in:
		
							parent
							
								
									b3443f43f4
								
							
						
					
					
						commit
						03f28efbbb
					
				
							
								
								
									
										1
									
								
								vl.c
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								vl.c
									
									
									
									
									
								
							@ -2922,6 +2922,7 @@ static int global_init_func(void *opaque, QemuOpts *opts, Error **errp)
 | 
				
			|||||||
    g->property = qemu_opt_get(opts, "property");
 | 
					    g->property = qemu_opt_get(opts, "property");
 | 
				
			||||||
    g->value    = qemu_opt_get(opts, "value");
 | 
					    g->value    = qemu_opt_get(opts, "value");
 | 
				
			||||||
    g->user_provided = true;
 | 
					    g->user_provided = true;
 | 
				
			||||||
 | 
					    g->errp = &error_fatal;
 | 
				
			||||||
    qdev_prop_register_global(g);
 | 
					    qdev_prop_register_global(g);
 | 
				
			||||||
    return 0;
 | 
					    return 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user