Patchwork [Xen-devel] target-i386: Introduce ICC bus/device/bridge

login
register
mail settings
Submitter jacek burghardt
Date May 28, 2013, 1:19 a.m.
Message ID <CAHyyzzTwvRPdLF-Cc-ACgdiXGW-PVYsPKV6EjpDqfGfM1HXsYg@mail.gmail.com>
Download mbox | patch
Permalink /patch/246916/
State New
Headers show

Comments

jacek burghardt - May 28, 2013, 1:19 a.m.
Do you think this change will solv the issue?
No need for xen_vcpu_init anymore:

- the RTC emulator doesn't have any periodic timers continuously running
even in absence of guest interactions anymore;

- qemu_dummy_start_vcpu takes care of disabling TCG for us, so we don't
need to do it manually here.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
---
 hw/i386/pc_piix.c |    1 -
 xen-all.c         |   23 -----------------------
 2 files changed, 0 insertions(+), 24 deletions(-)

vcpu)
 {


On Mon, May 27, 2013 at 8:12 AM, Igor Mammedov <imammedo@redhat.com> wrote:

> On Fri, 24 May 2013 08:56:14 -0600
> jacek burghardt <jaceksburghardt@gmail.com> wrote:
>
> > I wonder if anyone has patch that allows to tlak to icc bus introduced in
> > qemu upstream ?
> >
> https://github.com/qemu/qemu/commit/f0513d2c0156799e0c75a108ab9a049eea4f9607
> >
> >  icc-bridge will serve as a parent for icc-bus and provide
> >   mmio mapping services to child icc-devices.
> > * icc-device will replace SysBusDevice as a parent of APIC
> >   and IOAPIC devices.
>
> looking at xen_init_pv() it creates dummy CPU which appears
> not to be used by PV guest. What was the purpose in creating it?
>

Patch

diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 43ab480..1ef4cbf 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -324,7 +324,6 @@  static void pc_xen_hvm_init(QEMUMachineInitArgs *args)
         hw_error("xen hardware virtual machine initialisation failed");
     }
     pc_init_pci_no_kvmclock(args);
-    xen_vcpu_init();
 }
 #endif

diff --git a/xen-all.c b/xen-all.c
index 539a154..bc308f4 100644
--- a/xen-all.c
+++ b/xen-all.c
@@ -574,29 +574,6 @@  void qmp_xen_set_global_dirty_log(bool enable, Error
**errp)
     }
 }

-/* VCPU Operations, MMIO, IO ring ... */
-
-static void xen_reset_vcpu(void *opaque)
-{
-    CPUState *cpu = opaque;
-
-    cpu->halted = 1;
-}
-
-void xen_vcpu_init(void)
-{
-    if (first_cpu != NULL) {
-        CPUState *cpu = ENV_GET_CPU(first_cpu);
-
-        qemu_register_reset(xen_reset_vcpu, cpu);
-        xen_reset_vcpu(cpu);
-    }
-    /* if rtc_clock is left to default (host_clock), disable it */
-    if (rtc_clock == host_clock) {
-        qemu_clock_enable(rtc_clock, false);
-    }
-}
-
 /* get the ioreq packets from share mem */
 static ioreq_t *cpu_get_ioreq_from_shared_memory(XenIOState *state, int