[libvirt] [PATCH 4/7] qemu: Add monitor APIs to fetch CPUID data from QEMU
Jiri Denemark
jdenemar at redhat.com
Tue Jul 23 17:32:46 UTC 2013
On Tue, Jul 23, 2013 at 19:28:38 +0200, Jiri Denemark wrote:
> On Tue, Jul 23, 2013 at 17:32:42 +0100, Daniel Berrange wrote:
> > On Tue, Jul 23, 2013 at 06:11:33PM +0200, Jiri Denemark wrote:
> > > ---
> > > src/qemu/qemu_monitor.c | 21 +++
> > > src/qemu/qemu_monitor.h | 3 +
> > > src/qemu/qemu_monitor_json.c | 162 +++++++++++++++++++++
> > > src/qemu/qemu_monitor_json.h | 6 +
> > > tests/Makefile.am | 1 +
> > > .../qemumonitorjson-getcpu-empty.data | 2 +
> > > .../qemumonitorjson-getcpu-empty.json | 46 ++++++
> > > .../qemumonitorjson-getcpu-filtered.data | 4 +
> > > .../qemumonitorjson-getcpu-filtered.json | 46 ++++++
> > > .../qemumonitorjson-getcpu-full.data | 4 +
> > > .../qemumonitorjson-getcpu-full.json | 46 ++++++
> > > .../qemumonitorjson-getcpu-host.data | 5 +
> > > .../qemumonitorjson-getcpu-host.json | 45 ++++++
> > > tests/qemumonitorjsontest.c | 74 ++++++++++
> > > 14 files changed, 465 insertions(+)
> > > create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-empty.data
> > > create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-empty.json
> > > create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-filtered.data
> > > create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-filtered.json
> > > create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-full.data
> > > create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-full.json
> > > create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-host.data
> > > create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-getcpu-host.json
> >
> > ACK, though I believe the design of this monitor API is flawed
> > because it requires you to re-launch QEMU with different accel
> > args
>
> Not really, this can be used in tcg too. It's just when we want to get
> the data for "host" CPU, we need to enable kvm as tcg knows nothing
> about that CPU. Which makes sense as kvm (the kernel module) influences
> how the "host" CPU will look like.
However, you need to have a CPU to be able to ask for his properties
(which kinda makes sense too) and for that you also need a machine with
type != none. Which makes sense too, as the CPU may differ depending on
machine type (which, however, does not happen for "host" CPU).
Jirka
More information about the libvir-list
mailing list