qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Gavin Shan <gshan@redhat.com>
To: Igor Mammedov <imammedo@redhat.com>
Cc: qemu-arm@nongnu.org, qemu-devel@nongnu.org, mst@redhat.com,
	ani@anisinha.ca, drjones@redhat.com, wangyanan55@huawei.com,
	Jonathan.Cameron@Huawei.com, peter.maydell@linaro.org,
	berrange@redhat.com, thuth@redhat.com, eduardo@habkost.net,
	lvivier@redhat.com, zhenyzha@redhat.com, shan.gavin@gmail.com
Subject: Re: [PATCH 0/3] hw/acpi/aml-build: Fix {socket, cluster, core} IDs in PPTT
Date: Thu, 26 May 2022 22:41:50 +0800	[thread overview]
Message-ID: <d0d3cc27-0f28-4be1-ddcd-c6b1ae6a3520@redhat.com> (raw)
In-Reply-To: <20220526142712.3bab443c@redhat.com>

On 5/26/22 8:27 PM, Igor Mammedov wrote:
> On Thu, 26 May 2022 19:37:47 +0800
> Gavin Shan <gshan@redhat.com> wrote:
>>
>> On 5/18/22 5:21 PM, Gavin Shan wrote:
>>> The {socket, cluster, core} IDs detected from Linux guest aren't
>>> matching with what have been provided in PPTT. The flag used for
>>> 'ACPI Processor ID valid' is missed for {socket, cluster, core}
>>> nodes. In this case, Linux guest takes the offset between the
>>> node and PPTT header as the corresponding IDs, as the following
>>> logs show.
>>>
>>>
>>>     /home/gavin/sandbox/qemu.main/build/qemu-system-aarch64    \
>>>     -accel kvm -machine virt,gic-version=host -cpu host       \
>>>     -smp 8,sockets=2,clusters=2,cores=2,threads=1
>>>       :
>>>       
>>>     # cd /sys/devices/system/cpu
>>>     # for i in `seq 0 15`; do cat cpu$i/topology/physical_package_id; done
>>>       36  36  36  36  36  36  36  36
>>>       336 336 336 336 336 336 336 336
>>>     # for i in `seq 0 15`; do cat cpu$i/topology/cluster_id; done
>>>       56  56  56  56  196 196 196 196
>>>       356 356 356 356 496 496 496 496
>>>     # for i in `seq 0 15`; do cat cpu$i/topology/core_id; done
>>>       76  76  136 136 216 216 276 276
>>>       376 376 436 436 516 516 576 576
>>>
>>> This fixes the issue by setting 'ACPI Processor ID valid' flag for
>>> {socket, cluster, core} nodes. With this applied, the IDs are exactly
>>> what have been provided in PPTT. I also checked the PPTT table on my
>>> host, where the 'ACPI Processor ID valid' is set for cluster/core nodes,
>>> but missed from socket nodes.
>>>
>>>     host# pwd
>>>     /sys/devices/system/cpu
>>>     host# cat cpu0/topology/physical_package_id; \
>>>           cat cpu0/topology/cluster_id;          \
>>>           cat cpu0/topology/core_id
>>>     36 0 0
>>>
>>> Gavin Shan (3):
>>>     tests/acpi/virt: Allow PPTT ACPI table changes
>>>     hw/acpi/aml-build: Fix {socket, cluster, core} IDs in PPTT
>>>     tests/acpi/virt: Update PPTT ACPI table
>>>
>>>    hw/acpi/aml-build.c       |   9 ++++++---
>>>    tests/data/acpi/virt/PPTT | Bin 96 -> 96 bytes
>>>    2 files changed, 6 insertions(+), 3 deletions(-)
>>>    
>>
>> Could you help to review this tiny series? Thanks in advance.
> done, so far I'm not convinced that it's QEMU's fault. see comment on 2/3
> 

Thanks, Igor. I just replied. Lets discuss this through in the loop
of PATCH[2/3].

Thanks,
Gavin



      reply	other threads:[~2022-05-26 14:43 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-18  9:21 [PATCH 0/3] hw/acpi/aml-build: Fix {socket, cluster, core} IDs in PPTT Gavin Shan
2022-05-18  9:21 ` [PATCH 1/3] tests/acpi/virt: Allow PPTT ACPI table changes Gavin Shan
2022-05-18  9:21 ` [PATCH 2/3] hw/acpi/aml-build: Fix {socket, cluster, core} IDs in PPTT Gavin Shan
2022-05-26 12:25   ` Igor Mammedov
2022-05-26 14:40     ` Gavin Shan
2022-06-09 16:00       ` Igor Mammedov
2022-06-13  9:11         ` Gavin Shan
2022-05-18  9:21 ` [PATCH 3/3] tests/acpi/virt: Update PPTT ACPI table Gavin Shan
2022-05-18 15:42 ` [PATCH 0/3] hw/acpi/aml-build: Fix {socket, cluster, core} IDs in PPTT Andrew Jones
2022-05-26 11:37 ` Gavin Shan
2022-05-26 12:27   ` Igor Mammedov
2022-05-26 14:41     ` Gavin Shan [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d0d3cc27-0f28-4be1-ddcd-c6b1ae6a3520@redhat.com \
    --to=gshan@redhat.com \
    --cc=Jonathan.Cameron@Huawei.com \
    --cc=ani@anisinha.ca \
    --cc=berrange@redhat.com \
    --cc=drjones@redhat.com \
    --cc=eduardo@habkost.net \
    --cc=imammedo@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=mst@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=shan.gavin@gmail.com \
    --cc=thuth@redhat.com \
    --cc=wangyanan55@huawei.com \
    --cc=zhenyzha@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).