diff options
| author | Stefan Hajnoczi <stefanha@redhat.com> | 2025-07-18 14:10:02 -0400 |
|---|---|---|
| committer | Stefan Hajnoczi <stefanha@redhat.com> | 2025-07-18 14:10:02 -0400 |
| commit | e82989544e38062beeeaad88c175afbeed0400f8 (patch) | |
| tree | 5a7e8c8bbd04acf548c2d2da90a3b85237917b67 /target/i386/cpu.c | |
| parent | 3656e761bcdd207b7759cdcd608212d2a6f9c12d (diff) | |
| parent | f64832033d1262983bfe759669b4f65080f760dc (diff) | |
| download | focaccia-qemu-e82989544e38062beeeaad88c175afbeed0400f8.tar.gz focaccia-qemu-e82989544e38062beeeaad88c175afbeed0400f8.zip | |
Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging
* target/i386: bugfixes * regenerate meson-buildoptions.sh # -----BEGIN PGP SIGNATURE----- # # iQFIBAABCgAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmh5FGsUHHBib256aW5p # QHJlZGhhdC5jb20ACgkQv/vSX3jHroN8LQf/bUbOs4rNMO8SM5j0l8z3AzYZzoI+ # fhJYsvg1mKRg9A+bB1zhb6pKgANRir5s9DQw1BhDkRVvIUDSloefl/aUTP8WYbho # TfS1f3BDv1nvR9EiPHSIBJx5bN+by1rOjxZTa+m1tFT5rpTQu5mV/RjKtl1Pri3r # V6W0zxBUhj4TG0cgiX+yIJSB4lr2tjMVMVI82ggkKaYI+1cyJGuPiMydmlF0kz1o # vEZDF0KAonBZgGtYQWtTbB8Fj3bLUg8YlQOyXijsRi9xE/gZ6FKHkOHpgmWEz9is # zb6q5rqBT8opo63/NCtSTK4vyTRAoLVZ6ZzFxH5GoRKo28SctKTd5/BwWA== # =Z7qn # -----END PGP SIGNATURE----- # gpg: Signature made Thu 17 Jul 2025 11:19:07 EDT # gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83 # gpg: issuer "pbonzini@redhat.com" # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full] # gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full] # Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1 # Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83 * tag 'for-upstream' of https://gitlab.com/bonzini/qemu: i386/tdx: Remove the redundant qemu_mutex_init(&tdx->lock) i386/cpu: Cleanup host_cpu_max_instance_init() target/i386: tdx: fix locking for interrupt injection meson: re-generate scripts/meson-buildoptions.sh to fix IGVM entry i386/cpu: Move x86_ext_save_areas[] initialization to .instance_init target/i386: do not expose ARCH_CAPABILITIES on AMD CPU Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'target/i386/cpu.c')
| -rw-r--r-- | target/i386/cpu.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/target/i386/cpu.c b/target/i386/cpu.c index da7d8dca63..251d5760a0 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -9620,6 +9620,16 @@ static void x86_cpu_register_feature_bit_props(X86CPUClass *xcc, static void x86_cpu_post_initfn(Object *obj) { +#ifndef CONFIG_USER_ONLY + if (current_machine && current_machine->cgs) { + x86_confidential_guest_cpu_instance_init( + X86_CONFIDENTIAL_GUEST(current_machine->cgs), (CPU(obj))); + } +#endif +} + +static void x86_cpu_init_xsave(void) +{ static bool first = true; uint64_t supported_xcr0; int i; @@ -9639,13 +9649,6 @@ static void x86_cpu_post_initfn(Object *obj) } } } - -#ifndef CONFIG_USER_ONLY - if (current_machine && current_machine->cgs) { - x86_confidential_guest_cpu_instance_init( - X86_CONFIDENTIAL_GUEST(current_machine->cgs), (CPU(obj))); - } -#endif } static void x86_cpu_init_default_topo(X86CPU *cpu) @@ -9715,6 +9718,11 @@ static void x86_cpu_initfn(Object *obj) x86_cpu_load_model(cpu, xcc->model); } + /* + * accel's cpu_instance_init may have the xsave check, + * so x86_ext_save_areas[] must be initialized before this. + */ + x86_cpu_init_xsave(); accel_cpu_instance_init(CPU(obj)); } |