[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 0/2][RFC] prebuild cpu QOM tree /machine/node/socket
From: |
Chen Fan |
Subject: |
[Qemu-devel] [PATCH 0/2][RFC] prebuild cpu QOM tree /machine/node/socket/core/thread/.. |
Date: |
Tue, 25 Feb 2014 17:07:30 +0800 |
Hi,
at present, after hotplug a discontinuous cpu id on source, then done
migration,
on target, it will fail to add the unoccupied cpu id which was skipped at
source,
this cause is on target Qemu prebuild CPU with continuous cpu_index. so after
migration, the cpu infrastructure bewteen source and target are different.
I suppose we could use apic_id as instance_id which was used at registering
vmstate
when create cpu. on target, we prebuild the specified cpu using QOM comand
line:
/machine/node/socket/core/thread, then migration, we could keep the same cpu
infrastructure on both side.
at first, I introduce a empty QOM tree /machine/node/socket/core/thread/,
then when
create cpu, link each created cpu into the tree. which idea was suggested by
Igor. thanks.
TODO:
1. add cpu "path" property which used for specifying the QOM path.
2. add -device cpu-foo.path supported.
3. then we could introduce hot-remove cpu probably.
I don't know wether this way is right or not. pls tell me. :)
Thanks,
Chen
Chen Fan (2):
qom: introduce cpu QOM hierarchy tree
/machine/node/socket/core/thread/cpu.
cpu: link each new cpu to QOM tree
/machine/node/socket/core/thread/cpu respectively.
hw/i386/pc.c | 40 ++++++++++++--
include/qom/node.h | 66 +++++++++++++++++++++++
qom/Makefile.objs | 2 +-
qom/node.c | 156 +++++++++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 259 insertions(+), 5 deletions(-)
create mode 100644 include/qom/node.h
create mode 100644 qom/node.c
--
1.8.1.4