Statistics
| Branch: | Revision:

root / include @ c28fa5a0

# Date Author Comment
f100f0b3 10/31/2012 05:12 am Andreas Färber

cpus: Pass CPUState to run_on_cpu()

CPUArchState is no longer needed.

Move the declaration to include/qemu/cpu.h and add documentation.

Signed-off-by: Andreas Färber <>

9f09e18a 10/31/2012 05:12 am Andreas Färber

cpu: Move thread_id to CPUState

Signed-off-by: Andreas Färber <>

3993c6bd 10/31/2012 05:11 am Andreas Färber

cpus: Pass CPUState to [qemu_]cpu_has_work()

For target-mips also change the return type to bool.

Make include paths for cpu-qom.h consistent for alpha and unicore32.

Signed-off-by: Andreas Färber <>
[AF: Updated new target-openrisc function accordingly]...

c08d7424 10/31/2012 02:02 am Andreas Färber

cpus: Pass CPUState to qemu_cpu_kick()

CPUArchState is no longer needed there.

Signed-off-by: Andreas Färber <>

c64ca814 10/31/2012 02:02 am Andreas Färber

cpu: Move queued_work_{first,last} to CPUState

Signed-off-by: Andreas Färber <>

61a46217 10/31/2012 02:02 am Andreas Färber

cpu: Move created field to CPUState

Change its type to bool.

Signed-off-by: Andreas Färber <>

4fdeee7c 10/31/2012 02:02 am Andreas Färber

cpu: Move stop field to CPUState

Change its type to bool.

Signed-off-by: Andreas Färber <>

f324e766 10/31/2012 02:02 am Andreas Färber

cpu: Move stopped field to CPUState

Change its type to bool.

Signed-off-by: Andreas Färber <>

2fa45344 10/31/2012 02:02 am Andreas Färber

cpus: Pass CPUState to cpu_is_stopped()

CPUArchState is no longer needed there.

Also change the return type to bool.

Signed-off-by: Andreas Färber <>

f5c121b8 10/31/2012 02:02 am Andreas Färber

cpu: Move halt_cond to CPUState

Signed-off-by: Andreas Färber <>

60e82579 10/31/2012 02:02 am Andreas Färber

cpus: Pass CPUState to qemu_cpu_is_self()

Change return type to bool, move to include/qemu/cpu.h and
add documentation.

Signed-off-by: Andreas Färber <>
Reviewed-by: Igor Mammedov <>
[AF: Updated new caller qemu_in_vcpu_thread()]

ac839ccd 08/14/2012 12:02 am Anthony Liguori

Merge remote-tracking branch 'quintela/migration-next-20120808' into staging

  • quintela/migration-next-20120808:
    Restart optimization on stage3 update version
    Add XBZRLE statistics
    Add migration accounting for normal and duplicate pages
    Change total_time to total-time in MigrationStats...
33e95c63 08/13/2012 12:20 pm Anthony Liguori

qom: Reimplement Interfaces

The current implementation of Interfaces is poorly designed. Each interface
that an object implements ends up being an object that's tracked by the
implementing object. There's all sorts of gymnastics to deal with casting
between these objects....

9fb26641 08/08/2012 02:51 pm Orit Wasserman

Add cache handling functions

Add MRU page cache mechanism.
The page are accessed by their address.

Signed-off-by: Benoit Hudzia <>
Signed-off-by: Petter Svard <>
Signed-off-by: Aidan Shribman <>...

216fc9a4 08/02/2012 07:12 pm Andreas Färber

cpu: Move thread_kicked to CPUState

Change field type to bool.

Signed-off-by: Andreas Färber <>

bcba2a72 08/02/2012 07:12 pm Andreas Färber

cpu: Move CPU_COMMON_THREAD into CPUState

CPU_COMMON_THREAD was only used for Windows, adding an hThread field
to CPU_COMMON.

Move the field into QOM CPUState and change its type to HANDLE,
which it is assigned from. This requires Windows headers, pulled in...

814e612e 08/02/2012 07:12 pm Andreas Färber

cpu: Move thread field into CPUState

Signed-off-by: Andreas Färber <>

8aca5215 06/18/2012 06:35 pm Anthony Liguori

Merge remote-tracking branch 'afaerber-or/qom-next-2' into staging

  • afaerber-or/qom-next-2: (22 commits)
    qom: Push error reporting to object_property_find()
    qdev: Remove qdev_prop_exists()
    qbus: Initialize in standard way
    qbus: Make child devices links...
8cb6789a 06/18/2012 04:14 pm Paolo Bonzini

qdev: Remove qdev_prop_exists()

Can be replaced everywhere with object_property_find().

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Andreas Färber <>

89bfe000 06/18/2012 04:14 pm Paolo Bonzini

qom: Push error reporting to object_property_find()

Avoids duplicated error_set().

Signed-off-by: Paolo Bonzini <>
[AF: Also drop error_set() in object_property_del().]
Signed-off-by: Andreas Färber <>

3b50e311 06/18/2012 04:14 pm Paolo Bonzini

qom: Add class_base_init

The class_base_init TypeInfo callback was present in one of the early
QOM versions but removed (on my request...) before committing. We
will need it soon, add it.

Signed-off-by: Paolo Bonzini <>
Reviewed-by: Anthony Liguori <>...

745549c8 06/18/2012 04:14 pm Paolo Bonzini

qom: Make Object a type

Right now the base Object class has a special NULL type. Change this so
that we will be able to add class_init and class_base_init callbacks.
To do this, remove some special casing of ObjectClass that is not really
necessary.

Signed-off-by: Paolo Bonzini <>...

9c4b4cc4 06/18/2012 04:14 pm Paolo Bonzini

qom: Drop type_register_static_alias() macro

It's unused.

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Andreas Färber <>

e7cce67f 06/18/2012 04:14 pm Paolo Bonzini

qom: Add object_class_get_parent()

This simple bit of functionality was missing and we'll need it soon,
so add it.

Signed-off-by: Paolo Bonzini <>
Reviewed-by: Anthony Liguori <>
[AF: Document possible NULL return value]...

32efc535 06/18/2012 04:14 pm Paolo Bonzini

qom: Add object_child_foreach()

A utility function that will be used to implement hierarchical realization.

Signed-off-by: Paolo Bonzini <>
Reviewed-by: Anthony Liguori <>
[AF: Drop unrelated whitespace change, add Returns: in documentation]...

6ef228fc 06/15/2012 03:03 pm Paolo Bonzini

stream: move rate limiting to a separate header file

Make the code reusable.

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Kevin Wolf <>

0466e458 05/12/2012 03:17 pm Paolo Bonzini

qom: Documentation addition for object_class_by_name()

Signed-off-by: Paolo Bonzini <>
[AF: Document the possible NULL return value]
Signed-off-by: Andreas Färber <>

f5df5baf 05/08/2012 07:15 pm Andreas Färber

cpu: Update documentation and comment

State struct CPU had been renamed to CPUState, former CPUState to
CPUArchState.

Signed-off-by: Andreas Färber <>
Signed-off-by: Anthony Liguori <>

dfe47e70 04/24/2012 05:50 pm Andreas Färber

qom: Refine container_get() to allow using a custom root

Specify the root to search from as argument. This avoids hardcoding
"/machine" in some places and makes it more flexible.

Signed-off-by: Andreas Färber <>
Cc: Paolo Bonzini <>...

a612b2a6 04/02/2012 11:04 pm Paolo Bonzini

qom: add container_get

This is QOM "mkdir -p". It is useful when referring to
container objects such as "/machine".

Reviewed-by: Anthony Liguori <>
Signed-off-by: Paolo Bonzini <>
Signed-off-by: Anthony Liguori <>

dd83b06a 03/14/2012 11:20 pm Andreas Färber

qom: Introduce CPU class

Reintroduce CPUState as QOM object: It's abstract and derived directly
from TYPE_OBJECT for compatibility with the user emulators.
The identifier CPUState avoids conflicts between CPU and the struct.

Introduce $(qom-twice-y) to build it separately for system and for user...

418ba9e5 03/14/2012 10:30 pm Andreas Färber

qom: Introduce object_class_get_list()

This function allows to obtain a singly-linked list of classes, which
can be sorted by the caller.

Signed-off-by: Andreas Färber <>
Cc: Anthony Liguori <>
Signed-off-by: Anthony Liguori <>

93148aa5 03/08/2012 05:22 pm Stefan Weil

Spelling fixes in comments (it's -> its)

  • it's -> its (fixed for all files)
  • dont -> don't (only fixed in a line which was touched by the previous fix)
  • distrub -> disturb (fixed in the same line)

Reviewed-by: Andreas Färber <>
Signed-off-by: Stefan Weil <>...

441dd5eb 03/07/2012 03:03 pm Stefan Weil

qom: Fix spelling in documentation

This fixes a new spelling issue which was detected by codespell.

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

358b5465 02/22/2012 05:02 pm Alexander Barabash

qom: Document ways to retrieve child object added by object_property_add_child()

object_property_add_child() creates a property whose values as a string is
the child object's canonical path.

Acked-by: Paolo Bonzini <>
Signed-off-by: Alexander Barabash <>...

b2cd7dee 02/22/2012 09:31 am Paolo Bonzini

qom: add generic string parsing/printing

Add generic property accessors that take a string and parse it
appropriately for the property type. All the magic here is done
by the new string-based visitors.

Signed-off-by: Paolo Bonzini <>

a0dbf408 02/17/2012 05:58 pm Andreas Färber

qom: Fix typo in Object's documentation

Fixes a warning from gtk-doc.

Signed-off-by: Andreas Färber <>
Signed-off-by: Anthony Liguori <>

438e1c79 02/17/2012 05:58 pm Andreas Färber

qom: Fix identifiers in documentation

Fixes gtk-doc warnings.

Signed-off-by: Andreas Färber <>
Signed-off-by: Anthony Liguori <>

83f7d43a 02/15/2012 05:39 pm Andreas Färber

qom: Unify type registration

Replace device_init() with generalized type_init().

While at it, unify naming convention: type_init([$prefix_]register_types)
Also, type_init() is a function, so add preceding blank line where
necessary and don't put a semicolon after the closing brace....

02fe2db6 02/07/2012 02:52 pm Paolo Bonzini

qom: add object_resolve_path_type

Reviewed-by: Anthony Liguori <>
Signed-off-by: Paolo Bonzini <>

1d9c5a12 02/07/2012 02:52 pm Paolo Bonzini

qom: add property get/set wrappers for links

These can set a link to any object, as long as it is included in
the composition tree.

Reviewed-by: Anthony Liguori <>
Signed-off-by: Paolo Bonzini <>

9f5f1350 02/07/2012 02:52 pm Paolo Bonzini

qom: add QObject-based property get/set wrappers

Move the creation of QmpInputVisitor and QmpOutputVisitor from qmp.c
to qom/object.c, since it's the only practical way to access object
properties.

Keep this isolated such that it's easy to remove. At some point, we need...

7b7b7d18 02/07/2012 02:52 pm Paolo Bonzini

qom: add property get/set wrappers for C types

Add wrappers that let you get/set properties using normal C data types.

Reviewed-by: Anthony Liguori <anthony@>
Signed-off-by: Paolo Bonzini <>

0815a859 02/07/2012 11:21 am Paolo Bonzini

qom: more documentation on subclassing

Reviewed-by: Anthony Liguori <>
Signed-off-by: Paolo Bonzini <>

1ed5b918 02/07/2012 11:20 am Paolo Bonzini

qom: clean up cast macros

Reviewed-by: Anthony Liguori <>
Signed-off-by: Paolo Bonzini <>

57c9fafe 02/03/2012 06:41 pm Anthony Liguori

qom: move properties from qdev to object

This is mostly code movement although not entirely. This makes properties part
of the Object base class which means that we can now start using Object in a
meaningful way outside of qdev.

Signed-off-by: Anthony Liguori <>

39bffca2 02/03/2012 06:41 pm Anthony Liguori

qdev: register all types natively through QEMU Object Model

This was done in a mostly automated fashion. I did it in three steps and then
rebased it into a single step which avoids repeatedly touching every file in
the tree.

The first step was a sed-based addition of the parent type to the subclass...

93c511a1 02/03/2012 06:41 pm Anthony Liguori

qom: allow object_class_foreach to take additional parameters to refine search

Signed-off-by: Anthony Liguori <>

2f28d2ff 01/27/2012 06:28 pm Anthony Liguori

qom: add the base Object class (v2)

This class provides the main building block for QEMU Object Model and is
extensively documented in the header file. It is largely inspired by GObject.

Signed-off-by: Anthony Liguori <>
---
v1 -> v2...