lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <8310e1db-b874-fef1-2068-c8f049c38135@cn.fujitsu.com>
Date:   Wed, 2 May 2018 16:10:58 +0800
From:   Dou Liyang <douly.fnst@...fujitsu.com>
To:     Jan Beulich <JBeulich@...e.com>
CC:     <tglx@...utronix.de>, <linux-kernel@...r.kernel.org>
Subject: Re: recent patch "x86/acpi: Prevent X2APIC id 0xffffffff from being
 accounted"

Hi Jan,

At 05/02/2018 02:39 PM, Jan Beulich wrote:
>>>> On 02.05.18 at 03:56, <douly.fnst@...fujitsu.com> wrote:
>> At 04/27/2018 08:09 PM, Jan Beulich wrote:
>>> I'm afraid I don't understand: Limiting the number of disabled CPUs is
>>> certainly desirable when those can never be used, but why would you
>>> want to do this when they might later get hotplugged? I'm not aware
>>
>> Let's see the workflow of CPU hotplug:
>>
>>     1) get the CPU device info from ACPI namespace
>>        - it contains logical processor id
>>
>>     2) through the logical processor id, get the LACPI entry in MADT.
>>
>>     3) generate the CPU for kernel(will create a CPU id, can see by lscpu)
>>
>> Normally, there are no valid CPU devices in 1) which are mapped to
>> the LACPI entries(0xff or 0xffffffff).
>>
>> The actually number of hotplugged CPUs depends on CPU devices/processors
>> in ACPI namespace. The number calculated from MADT is the maximum
>> situation which can be cut and doesn't affect CPU hotplug. Don't worry
>> about it.
>>
>> Now, in ACPI-based system, Linux gets the number of possible CPUs by
>> MADT, We are going to use the ACPI namespace to make the number
>> accurate. But it is so hard, because it's so late to initialize the ACPI
>> namespace.
> 
> So are you envisioning a model when the number of disabled CPUs can be
> increased once the ACPI interpreter has been enabled? Otherwise the

Yes, good idea, but, As Thomas said:

   It needs to run _before_ setup_percpu() is invoked to
   scale everything correctly.

> maximum recorded during early boot may be too low with the changes in
> question. (And FTR, I agree this number may also be way too large without
> them, but it being too large is a resource efficiency problem, while it being
> too low is a functionality one.)

Too large number will waste vectors, and even cause bugs.

IMO, the number will just be more accurate by excluding 0xffffffff, it
only equal to, even be larger than the real number of possible CPUs.

> 
> Also, for background, besides wanting to clarify the correctness of these
> two changes, I'm also trying to understand whether we want to mirror
> them into the Xen hypervisor, which relies on the Dom0 kernel's ACPI
> interpreter (i.e. it can and does parse MADT, but can't and doesn't parse
> the ACPI name space). Hence late adjustment of the number of
> hotpluggable CPUs would be even more problematic in that environment.
> 

I am not familiar with Xen, I will consider that.

Thanks,

	dou

> Jan
> 
> 
> 
> 
> 


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ