[SeaBIOS] [PATCH v3 1/3] paravirt: disable legacy bios tables in case of more than 255 CPUs
Paolo Bonzini
pbonzini at redhat.com
Mon Aug 8 12:12:58 CEST 2016
On 07/08/2016 07:57, Michael S. Tsirkin wrote:
> On Fri, Aug 05, 2016 at 12:47:27PM +0200, Igor Mammedov wrote:
>> MPTable doesn't support more than 255 CPUs and
>> QEMU supplies an alternative MADT table which
>> guest will use instead of it. So do not install
>> legacy tables if more than 254 CPUs are provided
>>
>> Signed-off-by: Igor Mammedov <imammedo at redhat.com>
>
> Acked-by: Michael S. Tsirkin <mst at redhat.com>
>
> In fact, should we disable these when loading
> acpi from guest?
Old guests (and guests with no ACPI support) still require these tables.
I think RHEL3 (which has a 2.4.x kernel) was one.
Paolo
>
>> ---
>> src/fw/paravirt.c | 6 ++++--
>> 1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/fw/paravirt.c b/src/fw/paravirt.c
>> index 73a08f0..33a471b 100644
>> --- a/src/fw/paravirt.c
>> +++ b/src/fw/paravirt.c
>> @@ -164,8 +164,10 @@ qemu_platform_setup(void)
>> smp_setup();
>>
>> // Create bios tables
>> - pirtable_setup();
>> - mptable_setup();
>> + if (MaxCountCPUs <= 255) {
>> + pirtable_setup();
>> + mptable_setup();
>> + }
>> smbios_setup();
>>
>> if (CONFIG_FW_ROMFILE_LOAD) {
>> --
>> 2.7.4
More information about the SeaBIOS
mailing list