[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 31/63] hw/i386/acpi: Set PCAT_COMPAT bit only when pic is not disa
From: |
Paolo Bonzini |
Subject: |
[PULL 31/63] hw/i386/acpi: Set PCAT_COMPAT bit only when pic is not disabled |
Date: |
Tue, 23 Apr 2024 17:09:19 +0200 |
From: Xiaoyao Li <xiaoyao.li@intel.com>
A value 1 of PCAT_COMPAT (bit 0) of MADT.Flags indicates that the system
also has a PC-AT-compatible dual-8259 setup, i.e., the PIC. When PIC
is not enabled (pic=off) for x86 machine, the PCAT_COMPAT bit needs to
be cleared. The PIC probe should then print:
[ 0.155970] Using NULL legacy PIC
However, no such log printed in guest kernel unless PCAT_COMPAT is
cleared.
Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com>
Message-ID: <20240403145953.3082491-1-xiaoyao.li@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
hw/i386/acpi-common.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/hw/i386/acpi-common.c b/hw/i386/acpi-common.c
index 20f19269da4..0cc2919bb85 100644
--- a/hw/i386/acpi-common.c
+++ b/hw/i386/acpi-common.c
@@ -107,7 +107,9 @@ void acpi_build_madt(GArray *table_data, BIOSLinker *linker,
acpi_table_begin(&table, table_data);
/* Local APIC Address */
build_append_int_noprefix(table_data, APIC_DEFAULT_ADDRESS, 4);
- build_append_int_noprefix(table_data, 1 /* PCAT_COMPAT */, 4); /* Flags */
+ /* Flags. bit 0: PCAT_COMPAT */
+ build_append_int_noprefix(table_data,
+ x86ms->pic != ON_OFF_AUTO_OFF ? 1 : 0 , 4);
for (i = 0; i < apic_ids->len; i++) {
pc_madt_cpu_entry(i, apic_ids, table_data, false);
--
2.44.0
- [PULL 37/63] scripts/update-linux-headers: Add bits.h to file imports, (continued)
- [PULL 37/63] scripts/update-linux-headers: Add bits.h to file imports, Paolo Bonzini, 2024/04/23
- [PULL 44/63] target/i386: SEV: use KVM_SEV_INIT2 if possible, Paolo Bonzini, 2024/04/23
- [PULL 45/63] i386/sev: Add 'legacy-vm-type' parameter for SEV guest objects, Paolo Bonzini, 2024/04/23
- [PULL 46/63] hw/i386/sev: Use legacy SEV VM types for older machine types, Paolo Bonzini, 2024/04/23
- [PULL 50/63] kvm: Enable KVM_SET_USER_MEMORY_REGION2 for memslot, Paolo Bonzini, 2024/04/23
- [PULL 49/63] RAMBlock: Add support of KVM private guest memfd, Paolo Bonzini, 2024/04/23
- [PULL 51/63] kvm/memory: Make memory type private by default if it has guest memfd backend, Paolo Bonzini, 2024/04/23
- [PULL 62/63] pythondeps.toml: warn about updates needed to docs/requirements.txt, Paolo Bonzini, 2024/04/23
- [PULL 52/63] HostMem: Add mechanism to opt in kvm guest memfd via MachineState, Paolo Bonzini, 2024/04/23
- [PULL 57/63] kvm/tdx: Ignore memory conversion to shared of unassigned region, Paolo Bonzini, 2024/04/23
- [PULL 31/63] hw/i386/acpi: Set PCAT_COMPAT bit only when pic is not disabled,
Paolo Bonzini <=
- [PULL 40/63] KVM: track whether guest state is encrypted, Paolo Bonzini, 2024/04/23
- [PULL 47/63] trace/kvm: Split address space and slot id in trace_kvm_set_user_memory(), Paolo Bonzini, 2024/04/23
- [PULL 18/63] stubs: move monitor_fdsets_cleanup with other fdset stubs, Paolo Bonzini, 2024/04/23
- [PULL 16/63] stubs: split record/replay stubs further, Paolo Bonzini, 2024/04/23
- [PULL 26/63] target/i386: Introduce Icelake-Server-v7 to enable TSX, Paolo Bonzini, 2024/04/23
- [PULL 28/63] target/i386: Export RFDS bit to guests, Paolo Bonzini, 2024/04/23
- [PULL 35/63] s390: Switch to use confidential_guest_kvm_init(), Paolo Bonzini, 2024/04/23
- [PULL 43/63] target/i386: Implement mc->kvm_type() to get VM type, Paolo Bonzini, 2024/04/23
- [PULL 61/63] accel/tcg/icount-common: Consolidate the use of warn_report_once(), Paolo Bonzini, 2024/04/23