diff options
| author | Peter Maydell <peter.maydell@linaro.org> | 2014-10-09 15:09:05 +0100 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2014-10-09 15:09:05 +0100 |
| commit | fcb2cd928f5519b8241e22411a696be1a7272b1c (patch) | |
| tree | 394f049d19f8abb12c1b11f4dcc03b9036da604d /xen-common.c | |
| parent | b6011bd8a57c1eda81a857d21adeb9b66e58b1b0 (diff) | |
| parent | 5008e5b7b817b5ea2b788203122cd50e7c16e599 (diff) | |
| download | focaccia-qemu-fcb2cd928f5519b8241e22411a696be1a7272b1c.tar.gz focaccia-qemu-fcb2cd928f5519b8241e22411a696be1a7272b1c.zip | |
Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging
Four changes here. Polling for reconnection of character devices, the QOMification of accelerators, a fix for -kernel support on x86, and one for a recently-introduced virtio-scsi optimization. # gpg: Signature made Thu 09 Oct 2014 14:36:50 BST using RSA key ID 4E6B09D7 # gpg: Good signature from "Paolo Bonzini <pbonzini@redhat.com>" # gpg: aka "Paolo Bonzini <bonzini@gnu.org>" * remotes/bonzini/tags/for-upstream: (28 commits) qemu-char: Fix reconnect socket error reporting qemu-sockets: Add error to non-blocking connect handler qemu-error: Add error_vreport() virtio-scsi: fix use-after-free of VirtIOSCSIReq linuxboot: compute initrd loading address kvm: Make KVMState be the TYPE_KVM_ACCEL instance struct accel: Create accel object when initializing machine accel: Pass MachineState object to accel init functions accel: Rename 'init' method to 'init_machine' accel: Move accel init/allowed code to separate function accel: Remove tcg_available() function accel: Move qtest accel registration to qtest.c accel: Move Xen registration code to xen-common.c accel: Move KVM accel registration to kvm-all.c accel: Report unknown accelerator as "not found" instead of "does not exist" accel: Make AccelClass.available() optional accel: Use QOM classes for accel types accel: Move accel name lookup to separate function accel: Simplify configure_accelerator() using AccelType *acc variable accel: Create AccelType typedef ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'xen-common.c')
| -rw-r--r-- | xen-common.c | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/xen-common.c b/xen-common.c index f07b35e471..56359ca725 100644 --- a/xen-common.c +++ b/xen-common.c @@ -11,6 +11,7 @@ #include "hw/xen/xen_backend.h" #include "qmp-commands.h" #include "sysemu/char.h" +#include "sysemu/accel.h" //#define DEBUG_XEN @@ -109,7 +110,7 @@ static void xen_change_state_handler(void *opaque, int running, } } -int xen_init(MachineClass *mc) +static int xen_init(MachineState *ms) { xen_xc = xen_xc_interface_open(0, 0, 0); if (xen_xc == XC_HANDLER_INITIAL_VALUE) { @@ -121,3 +122,25 @@ int xen_init(MachineClass *mc) return 0; } +static void xen_accel_class_init(ObjectClass *oc, void *data) +{ + AccelClass *ac = ACCEL_CLASS(oc); + ac->name = "Xen"; + ac->init_machine = xen_init; + ac->allowed = &xen_allowed; +} + +#define TYPE_XEN_ACCEL ACCEL_CLASS_NAME("xen") + +static const TypeInfo xen_accel_type = { + .name = TYPE_XEN_ACCEL, + .parent = TYPE_ACCEL, + .class_init = xen_accel_class_init, +}; + +static void xen_type_init(void) +{ + type_register_static(&xen_accel_type); +} + +type_init(xen_type_init); |