[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] docs/system/cpu-hotplug: Update example's socket-id/core-id
From: |
Peter Maydell |
Subject: |
Re: [PATCH] docs/system/cpu-hotplug: Update example's socket-id/core-id |
Date: |
Tue, 10 Sep 2024 10:38:42 +0100 |
On Tue, 10 Sept 2024 at 10:03, Igor Mammedov <imammedo@redhat.com> wrote:
>
> On Mon, 19 Aug 2024 15:43:03 +0100
> Peter Maydell <peter.maydell@linaro.org> wrote:
>
> > At some point the way we allocate socket-id and core-id to CPUs
> > by default changed; update the example of how to do CPU hotplug
> > and unplug so the example commands work again. The differences
> > in the sample input and output are:
> > * the second CPU is now socket-id=0 core-id=1,
> > not socket-id=1 core-id=0
> > * the order of fields from the qmp_shell is different (it seems
> > to now always be in alphabetical order)
> >
> > Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> > ---
> > I noticed this while I was playing around with vcpu hotplug trying to
> > demonstrate a memory leak I want to fix...
> >
> > docs/system/cpu-hotplug.rst | 54 ++++++++++++++++++-------------------
> > 1 file changed, 26 insertions(+), 28 deletions(-)
> >
> > diff --git a/docs/system/cpu-hotplug.rst b/docs/system/cpu-hotplug.rst
> > index 015ce2b6ec3..443ff226b90 100644
> > --- a/docs/system/cpu-hotplug.rst
> > +++ b/docs/system/cpu-hotplug.rst
> > @@ -33,23 +33,23 @@ vCPU hotplug
> > {
> > "return": [
> > {
> > - "type": "IvyBridge-IBRS-x86_64-cpu",
> > - "vcpus-count": 1,
> > "props": {
> > - "socket-id": 1,
> > - "core-id": 0,
> > + "core-id": 1,
> > + "socket-id": 0,
> > "thread-id": 0
> > - }
> > + },
> > + "type": "IvyBridge-IBRS-x86_64-cpu",
> > + "vcpus-count": 1
> > },
> > {
> > + "props": {
> > + "core-id": 0,
> > + "socket-id": 0,
> > + "thread-id": 0
> > + },
> > "qom-path": "/machine/unattached/device[0]",
> > "type": "IvyBridge-IBRS-x86_64-cpu",
> > - "vcpus-count": 1,
> > - "props": {
> > - "socket-id": 0,
> > - "core-id": 0,
> > - "thread-id": 0
> > - }
> > + "vcpus-count": 1
> > }
> > ]
> > }
> > @@ -58,18 +58,18 @@ vCPU hotplug
> > (4) The ``query-hotpluggable-cpus`` command returns an object for CPUs
> > that are present (containing a "qom-path" member) or which may be
> > hot-plugged (no "qom-path" member). From its output in step (3), we
> > - can see that ``IvyBridge-IBRS-x86_64-cpu`` is present in socket 0,
> > - while hot-plugging a CPU into socket 1 requires passing the listed
> > + can see that ``IvyBridge-IBRS-x86_64-cpu`` is present in socket 0 core
> > 0,
> > + while hot-plugging a CPU into socket 0 core 1 requires passing the
> > listed
> > properties to QMP ``device_add``::
> >
>
> > (QEMU) device_add id=cpu-2 driver=IvyBridge-IBRS-x86_64-cpu
> > socket-id=1 core-id=0 thread-id=0
>
> > {
> > "execute": "device_add",
> > "arguments": {
> > - "socket-id": 1,
> > + "core-id": 1,
> > "driver": "IvyBridge-IBRS-x86_64-cpu",
> > "id": "cpu-2",
> > - "core-id": 0,
> > + "socket-id": 0,
> > "thread-id": 0
>
> after above changes device_add doesn't match comment nor 'execute' output
Oops, yes. The device_add line should be changed too
("socket-id=0 core-id=1 thread-id=0").
>
> > }
> > }
> > @@ -83,34 +83,32 @@ vCPU hotplug
> >
> > (QEMU) query-cpus-fast
> > {
> > - "execute": "query-cpus-fast",
> > "arguments": {}
> > + "execute": "query-cpus-fast",
> > }
> > {
> > "return": [
> > {
> > - "qom-path": "/machine/unattached/device[0]",
> > - "target": "x86_64",
> > - "thread-id": 11534,
> > "cpu-index": 0,
> > "props": {
> > - "socket-id": 0,
> > "core-id": 0,
> > + "socket-id": 0,
> > "thread-id": 0
> > },
> > - "arch": "x86"
> > + "qom-path": "/machine/unattached/device[0]",
> > + "target": "x86_64",
> > + "thread-id": 28957
> > },
> > {
> > - "qom-path": "/machine/peripheral/cpu-2",
> > - "target": "x86_64",
> > - "thread-id": 12106,
> > "cpu-index": 1,
> > "props": {
> > - "socket-id": 1,
> > - "core-id": 0,
> > + "core-id": 1,
> > + "socket-id": 0,
> > "thread-id": 0
> > },
> > - "arch": "x86"
> > + "qom-path": "/machine/peripheral/cpu-2",
> > + "target": "x86_64",
> > + "thread-id": 29095
> > }
>
> beside reordering, which seems fine, this hunk also introduces target change
> perhaps a separate patch for that?
What target change? It all says "target": "x86_64" both before
and after.
thanks
-- PMM