arm: remove remaining cannot_destroy_with_object_finalize_yet
With commitce5b1bbf62("exec: move cpu_exec_init() calls to realize functions"), we can now remove all the remaining cannot_destroy_with_object_finalize_yet as unsafe references have been moved to cpu_exec_realizefn(). (tested with QOM command provided by commit4c315c27). Suggested-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Laurent Vivier <lvivier@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20170414083717.13641-2-lvivier@redhat.com> Acked-by: Alistair Francis <alistair.francis@xilinx.com> Acked-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Markus Armbruster <armbru@redhat.com>
This commit is contained in:
		
							parent
							
								
									359c41abe3
								
							
						
					
					
						commit
						53d6e53189
					
				| 
						 | 
				
			
			@ -118,12 +118,6 @@ static void aw_a10_class_init(ObjectClass *oc, void *data)
 | 
			
		|||
    DeviceClass *dc = DEVICE_CLASS(oc);
 | 
			
		||||
 | 
			
		||||
    dc->realize = aw_a10_realize;
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Reason: creates an ARM CPU, thus use after free(), see
 | 
			
		||||
     * arm_cpu_class_init()
 | 
			
		||||
     */
 | 
			
		||||
    dc->cannot_destroy_with_object_finalize_yet = true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static const TypeInfo aw_a10_type_info = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -160,12 +160,6 @@ static void bcm2836_class_init(ObjectClass *oc, void *data)
 | 
			
		|||
 | 
			
		||||
    dc->props = bcm2836_props;
 | 
			
		||||
    dc->realize = bcm2836_realize;
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Reason: creates an ARM CPU, thus use after free(), see
 | 
			
		||||
     * arm_cpu_class_init()
 | 
			
		||||
     */
 | 
			
		||||
    dc->cannot_destroy_with_object_finalize_yet = true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static const TypeInfo bcm2836_type_info = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -101,12 +101,6 @@ static void digic_class_init(ObjectClass *oc, void *data)
 | 
			
		|||
    DeviceClass *dc = DEVICE_CLASS(oc);
 | 
			
		||||
 | 
			
		||||
    dc->realize = digic_realize;
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Reason: creates an ARM CPU, thus use after free(), see
 | 
			
		||||
     * arm_cpu_class_init()
 | 
			
		||||
     */
 | 
			
		||||
    dc->cannot_destroy_with_object_finalize_yet = true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static const TypeInfo digic_type_info = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -290,11 +290,6 @@ static void fsl_imx25_class_init(ObjectClass *oc, void *data)
 | 
			
		|||
 | 
			
		||||
    dc->realize = fsl_imx25_realize;
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Reason: creates an ARM CPU, thus use after free(), see
 | 
			
		||||
     * arm_cpu_class_init()
 | 
			
		||||
     */
 | 
			
		||||
    dc->cannot_destroy_with_object_finalize_yet = true;
 | 
			
		||||
    dc->desc = "i.MX25 SOC";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -262,11 +262,6 @@ static void fsl_imx31_class_init(ObjectClass *oc, void *data)
 | 
			
		|||
 | 
			
		||||
    dc->realize = fsl_imx31_realize;
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Reason: creates an ARM CPU, thus use after free(), see
 | 
			
		||||
     * arm_cpu_class_init()
 | 
			
		||||
     */
 | 
			
		||||
    dc->cannot_destroy_with_object_finalize_yet = true;
 | 
			
		||||
    dc->desc = "i.MX31 SOC";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -442,11 +442,6 @@ static void fsl_imx6_class_init(ObjectClass *oc, void *data)
 | 
			
		|||
 | 
			
		||||
    dc->realize = fsl_imx6_realize;
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Reason: creates an ARM CPU, thus use after free(), see
 | 
			
		||||
     * arm_cpu_class_init()
 | 
			
		||||
     */
 | 
			
		||||
    dc->cannot_destroy_with_object_finalize_yet = true;
 | 
			
		||||
    dc->desc = "i.MX6 SOC";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -439,12 +439,6 @@ static void xlnx_zynqmp_class_init(ObjectClass *oc, void *data)
 | 
			
		|||
 | 
			
		||||
    dc->props = xlnx_zynqmp_props;
 | 
			
		||||
    dc->realize = xlnx_zynqmp_realize;
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Reason: creates an ARM CPU, thus use after free(), see
 | 
			
		||||
     * arm_cpu_class_init()
 | 
			
		||||
     */
 | 
			
		||||
    dc->cannot_destroy_with_object_finalize_yet = true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static const TypeInfo xlnx_zynqmp_type_info = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue