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

Re: [PATCH v4 09/17] xen/arm: introduce a helper to parse device tree NUMA distance map


  • To: Henry Wang <Henry.Wang@xxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Wed, 26 Apr 2023 09:12:18 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yMlC3koo35lzX30uCGzeg4nhB5M3NCgIdTaFQJUOAK0=; b=EyO69XKNFp0Y3B3dmlGTDP9Ghlo1mkyOdjKUz+92jGDy+IfLt6CwIemsqvYSHEwO0KOl9ylYPEA0W7kVQ86rCGY3tZv0wByAA8BxrFnYrhAKU7k9iYSCX0VTqJbkbjpB+5tU9y9c4KoTQKyTHltyR77NmrBbv+JymMnMHONON6qwYVt3152ZIsWHZlvsu12UoZSMljlr+ovm2vqQpShM2ghtWDFJ72hs+L3GH71raW4viHOaEvojA/Y3ezE72XJmkEfdN4iHZffgxtRjEDnY3GzOypsdv8A4tEHlT3PANVmopMeE1Ro6lTQ9TJHsZhqPStBnCD2ocd+fC2ybbPL/Gg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dDeCbMVupOIu9yGJzLKIYQqsWiN8TdenrQRnfrrdSI6A8QBAx2LMbDXiGQQgHUxzBqnzyYy3t8WmIYhCPnr9Ieqjzzrkw7r6qU2GGm7aX4/UWbtQa/JB4fwwjBkjlRZs+7aOwmPE2daOkvkCFeYT/rHRPJ0QtUCnqmQKrnC8tgCWynDJH0EoHg00QyIileA9K1zf0FjqftaHlZkOC0Cs3vClFfyEmksoviUSlU9E7gksDcjulS0ZfAnn/kwphWRJYsHRvgMKKFOTHEbMwUikAQBa4DBTPHATr1Z53Jc3Hguv2b/GsdaK5YKqrqEhJgpQ5wH4FAi3KjoKnlZrhGcfig==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: Wei Chen <Wei.Chen@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Bertrand Marquis <Bertrand.Marquis@xxxxxxx>
  • Delivery-date: Wed, 26 Apr 2023 07:12:26 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 26.04.2023 09:08, Henry Wang wrote:
> Hi Jan,
> 
>> -----Original Message-----
>> From: Jan Beulich <jbeulich@xxxxxxxx>
>> Subject: Re: [PATCH v4 09/17] xen/arm: introduce a helper to parse device
>> tree NUMA distance map
>>
>> On 26.04.2023 07:33, Henry Wang wrote:
>>>> -----Original Message-----
>>>> From: Jan Beulich <jbeulich@xxxxxxxx>
>>>>
>>>>> +        /* Get opposite way distance */
>>>>> +        opposite = __node_distance(to, from);
>>>>> +        /* The default value in node_distance_map is
>> NUMA_NO_DISTANCE
>>>> */
>>>>> +        if ( opposite == NUMA_NO_DISTANCE )
>>>>
>>>> And the matrix you're reading from can't hold NUMA_NO_DISTANCE
>> entries?
>>>> I ask because you don't check this above; you only check against
>>>> NUMA_LOCAL_DISTANCE.
>>>
>>> My understanding for the purpose of this part of code is to check if the
>> opposite
>>> way distance has already been set, so we need to compare the opposite
>> way
>>> distance with the default value NUMA_NO_DISTANCE here.
>>>
>>> Back to your question, I can see your point of the question. However I don't
>> think
>>> NUMA_NO_DISTANCE is a valid value to describe the node distance in the
>> device
>>> tree. This is because I hunted down the previous discussions and found [2]
>> about
>>> we should try to keep consistent between the value used in device tree and
>> ACPI
>>> tables. From the ACPI spec, 0xFF, i.e. NUMA_NO_DISTANCE means
>> unreachable.
>>> I think this is also the reason why NUMA_NO_DISTANCE can be used as the
>> default
>>> value of the distance map, otherwise we won't have any value to use.
>>
>> The [2] link you provided discusses NUMA_LOCAL_DISTANCE.
> 
> I inferred the discussion as "we should try to keep consistent between the 
> value
> used in device tree and ACPI tables". Maybe my inference is wrong.
> 
>> Looking at
>> Linux'es Documentation/devicetree/numa.txt, there's no mention of an
>> upper bound on the distance values. It only says that on the diagonal
>> entries should be 10 (i.e. matching ACPI, without really saying so).
> 
> I agree that the NUMA device tree binding is a little bit vague. So I cannot
> say the case that you provided is not valid. I would like to ask Arm 
> maintainers
> (putting them into To:) opinion on this as I think I am not the one to decide 
> the
> expected behavior on Arm.
> 
> Bertrand/Julien/Stefano: Would you please kindly share your opinion on which
> value should be used as the default value of the node distance map? Do you
> think reusing the "unreachable" distance, i.e. 0xFF, as the default node 
> distance
> is acceptable here? Thanks!

My suggestion would be to, rather than rejecting values >= 0xff, to saturate
at 0xfe, while keeping 0xff for NUMA_NO_DISTANCE (and overall keeping things
consistent with ACPI).

Jan



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.