On 6/5/24 20:45, Zhao Liu wrote:
@@ -1710,7 +1710,9 @@ void sev_es_set_reset_vector(CPUState *cpu)
  {
      X86CPU *x86;
      CPUX86State *env;
-    SevCommonState *sev_common = SEV_COMMON(MACHINE(qdev_get_machine())->cgs);
+    ConfidentialGuestSupport *cgs = MACHINE(qdev_get_machine())->cgs;
+    SevCommonState *sev_common = SEV_COMMON(
+        object_dynamic_cast(OBJECT(cgs), TYPE_SEV_COMMON));

SEV_COMMON(object_dynamic_cast()) looks to be twice cast, we can just
force to do conversion with pointer type:

(SevCommonState *) object_dynamic_cast(OBJECT(cgs), TYPE_SEV_COMMON)

You don't need the explicit cast either, since C auto-converts from void*.

  sev_common = object_dynamic_cast(OBJECT(cgs), TYPE_SEV_COMMON);


r~

Reply via email to