qemu-trivial
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-trivial] [Qemu-devel] [PATCH] vl: remove (max_cpus > 255) chec


From: Alexey Kardashevskiy
Subject: Re: [Qemu-trivial] [Qemu-devel] [PATCH] vl: remove (max_cpus > 255) check from smp_parse
Date: Tue, 03 Dec 2013 10:03:33 +1100
User-agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.1

On 12/03/2013 09:09 AM, Andreas Färber wrote:
> Am 02.12.2013 18:06, schrieb Michael Tokarev:
>> 25.11.2013 07:39, Alexey Kardashevskiy wrote:
>>> Since modern POWER7/POWER8 chips can have more that 256 CPU threads
>>> (>2000 actually), remove this check from smp_parse.
>>>
>>> The CPUs number is still checked against machine->max_cpus and this check
>>> should be enough not to break other archs.
> 
> "should be" is not exactly the highest level of confidence for a
> "trivial" patch... :/
> 
>> []
>>> -    if (max_cpus > 255) {
>>> -        fprintf(stderr, "Unsupported number of maxcpus\n");
>>> -        exit(1);
>>> -    }
> 
> I believe Eduardo touched that code last for NUMA, so let's CC him.
> 
>> I don't know whenever this is actually safe.  Do we have any static arrays
>> of size 255 somewhere, which will be overflowed without this check? :)
> 
> s390 has the ipi_states[] array, but not fixed to that size.

s390 machines have QemuMachine::max_cpus == 255.


> x86 APIC IDs I think have or had a limitation to 255 rather than 16-bit?
> Igor?
> 
> Alexey, did you actually check that, e.g., x86 machines don't break with
> 256 or 257 CPUs now?

PC_DEFAULT_MACHINE_OPTIONS sets it to 255. And I cannot find any machine
which would not define max_cpus, have I missed any?



-- 
Alexey



reply via email to

[Prev in Thread] Current Thread [Next in Thread]