qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH rebased 0/3] move stuff out of vl.c
@ 2010-03-31 14:56 Paolo Bonzini
  2010-03-31 14:56 ` [Qemu-devel] [PATCH 1/3] move socket_init to qemu-sockets.c Paolo Bonzini
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Paolo Bonzini @ 2010-03-31 14:56 UTC (permalink / raw)
  To: qemu-devel

Rebased after Blue Swirl's changes.

Paolo Bonzini (3):
  move socket_init to qemu-sockets.c
  move two variable declarations out of vl.c
  move balloon handling to balloon.c

 Makefile.target |    2 +-
 balloon.c       |  145 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 balloon.h       |    7 +++
 hw/i8259.c      |    1 +
 hw/isa-bus.c    |    1 +
 monitor.c       |   85 --------------------------------
 qemu-sockets.c  |   24 +++++++++
 qemu_socket.h   |    1 +
 vl.c            |   62 -----------------------
 9 files changed, 180 insertions(+), 148 deletions(-)
 create mode 100644 balloon.c

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Qemu-devel] [PATCH 1/3] move socket_init to qemu-sockets.c
  2010-03-31 14:56 [Qemu-devel] [PATCH rebased 0/3] move stuff out of vl.c Paolo Bonzini
@ 2010-03-31 14:56 ` Paolo Bonzini
  2010-03-31 14:56 ` [Qemu-devel] [PATCH 2/3] move two variable declarations out of vl.c Paolo Bonzini
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Paolo Bonzini @ 2010-03-31 14:56 UTC (permalink / raw)
  To: qemu-devel

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 qemu-sockets.c |   24 ++++++++++++++++++++++++
 qemu_socket.h  |    1 +
 vl.c           |   24 ------------------------
 3 files changed, 25 insertions(+), 24 deletions(-)

diff --git a/qemu-sockets.c b/qemu-sockets.c
index 23c3def..a7399aa 100644
--- a/qemu-sockets.c
+++ b/qemu-sockets.c
@@ -648,3 +648,27 @@ int unix_connect(const char *path)
 }
 
 #endif
+
+#ifdef _WIN32
+static void socket_cleanup(void)
+{
+    WSACleanup();
+}
+#endif
+
+int socket_init(void)
+{
+#ifdef _WIN32
+    WSADATA Data;
+    int ret, err;
+
+    ret = WSAStartup(MAKEWORD(2,2), &Data);
+    if (ret != 0) {
+        err = WSAGetLastError();
+        fprintf(stderr, "WSAStartup: %d\n", err);
+        return -1;
+    }
+    atexit(socket_cleanup);
+#endif
+    return 0;
+}
diff --git a/qemu_socket.h b/qemu_socket.h
index 7ee46ac..164ae3e 100644
--- a/qemu_socket.h
+++ b/qemu_socket.h
@@ -56,5 +56,6 @@ int parse_host_port(struct sockaddr_in *saddr, const char *str);
 int parse_host_src_port(struct sockaddr_in *haddr,
                         struct sockaddr_in *saddr,
                         const char *str);
+int socket_init(void);
 
 #endif /* QEMU_SOCKET_H */
diff --git a/vl.c b/vl.c
index 6768cf1..9ce6e4c 100644
--- a/vl.c
+++ b/vl.c
@@ -494,28 +494,6 @@ static void configure_rtc(QemuOpts *opts)
     }
 }
 
-#ifdef _WIN32
-static void socket_cleanup(void)
-{
-    WSACleanup();
-}
-
-static int socket_init(void)
-{
-    WSADATA Data;
-    int ret, err;
-
-    ret = WSAStartup(MAKEWORD(2,2), &Data);
-    if (ret != 0) {
-        err = WSAGetLastError();
-        fprintf(stderr, "WSAStartup: %d\n", err);
-        return -1;
-    }
-    atexit(socket_cleanup);
-    return 0;
-}
-#endif
-
 /***********************************************************/
 /* Bluetooth support */
 static int nb_hcis;
@@ -3622,9 +3600,7 @@ int main(int argc, char **argv, char **envp)
     }
     configure_icount(icount_option);
 
-#ifdef _WIN32
     socket_init();
-#endif
 
     if (net_init_clients() < 0) {
         exit(1);
-- 
1.6.6.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Qemu-devel] [PATCH 2/3] move two variable declarations out of vl.c
  2010-03-31 14:56 [Qemu-devel] [PATCH rebased 0/3] move stuff out of vl.c Paolo Bonzini
  2010-03-31 14:56 ` [Qemu-devel] [PATCH 1/3] move socket_init to qemu-sockets.c Paolo Bonzini
@ 2010-03-31 14:56 ` Paolo Bonzini
  2010-03-31 14:56 ` [Qemu-devel] [PATCH 3/3] move balloon handling to balloon.c Paolo Bonzini
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Paolo Bonzini @ 2010-03-31 14:56 UTC (permalink / raw)
  To: qemu-devel

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 hw/i8259.c   |    1 +
 hw/isa-bus.c |    1 +
 vl.c         |    4 ----
 3 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/hw/i8259.c b/hw/i8259.c
index 3de22e3..37ef04e 100644
--- a/hw/i8259.c
+++ b/hw/i8259.c
@@ -68,6 +68,7 @@ static int irq_level[16];
 #ifdef DEBUG_IRQ_COUNT
 static uint64_t irq_count[16];
 #endif
+PicState2 *isa_pic;
 
 /* set irq level. If an edge is detected, then the IRR is set to 1 */
 static inline void pic_set_irq1(PicState *s, int irq, int level)
diff --git a/hw/isa-bus.c b/hw/isa-bus.c
index 4d489d2..4e306de 100644
--- a/hw/isa-bus.c
+++ b/hw/isa-bus.c
@@ -28,6 +28,7 @@ struct ISABus {
     uint32_t assigned;
 };
 static ISABus *isabus;
+target_phys_addr_t isa_mem_base = 0;
 
 static void isabus_dev_print(Monitor *mon, DeviceState *dev, int indent);
 
diff --git a/vl.c b/vl.c
index 9ce6e4c..8828beb 100644
--- a/vl.c
+++ b/vl.c
@@ -292,10 +292,6 @@ static int default_driver_check(QemuOpts *opts, void *opaque)
 }
 
 /***********************************************************/
-/* x86 ISA bus support */
-
-target_phys_addr_t isa_mem_base = 0;
-PicState2 *isa_pic;
 
 static void set_proc_name(const char *s)
 {
-- 
1.6.6.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Qemu-devel] [PATCH 3/3] move balloon handling to balloon.c
  2010-03-31 14:56 [Qemu-devel] [PATCH rebased 0/3] move stuff out of vl.c Paolo Bonzini
  2010-03-31 14:56 ` [Qemu-devel] [PATCH 1/3] move socket_init to qemu-sockets.c Paolo Bonzini
  2010-03-31 14:56 ` [Qemu-devel] [PATCH 2/3] move two variable declarations out of vl.c Paolo Bonzini
@ 2010-03-31 14:56 ` Paolo Bonzini
  2010-03-31 15:25 ` [Qemu-devel] [PATCH 4/3] move targphys.h and hw/poison.h inclusion to cpu-common.h Paolo Bonzini
  2010-03-31 15:25 ` [Qemu-devel] [PATCH 5/3] compile balloon.c once Paolo Bonzini
  4 siblings, 0 replies; 7+ messages in thread
From: Paolo Bonzini @ 2010-03-31 14:56 UTC (permalink / raw)
  To: qemu-devel

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 Makefile.target |    2 +-
 balloon.c       |  145 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 balloon.h       |    7 +++
 monitor.c       |   85 --------------------------------
 vl.c            |   34 -------------
 5 files changed, 153 insertions(+), 120 deletions(-)
 create mode 100644 balloon.c

diff --git a/Makefile.target b/Makefile.target
index dbffe63..9ca6636 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -161,7 +161,7 @@ endif #CONFIG_BSD_USER
 # System emulator target
 ifdef CONFIG_SOFTMMU
 
-obj-y = arch_init.o cpus.o monitor.o machine.o gdbstub.o
+obj-y = arch_init.o cpus.o monitor.o machine.o gdbstub.o balloon.o
 # virtio has to be here due to weird dependency between PCI and virtio-net.
 # need to fix this properly
 obj-y += virtio-blk.o virtio-balloon.o virtio-net.o virtio-serial-bus.o
diff --git a/balloon.c b/balloon.c
new file mode 100644
index 0000000..016178f
--- /dev/null
+++ b/balloon.c
@@ -0,0 +1,145 @@
+/*
+ * QEMU System Emulator
+ *
+ * Copyright (c) 2003-2008 Fabrice Bellard
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+
+#include "sysemu.h"
+#include "monitor.h"
+#include "qjson.h"
+#include "qint.h"
+#include "kvm.h"
+#include "balloon.h"
+
+
+static QEMUBalloonEvent *qemu_balloon_event;
+void *qemu_balloon_event_opaque;
+
+void qemu_add_balloon_handler(QEMUBalloonEvent *func, void *opaque)
+{
+    qemu_balloon_event = func;
+    qemu_balloon_event_opaque = opaque;
+}
+
+int qemu_balloon(ram_addr_t target, MonitorCompletion cb, void *opaque)
+{
+    if (qemu_balloon_event) {
+        qemu_balloon_event(qemu_balloon_event_opaque, target, cb, opaque);
+        return 1;
+    } else {
+        return 0;
+    }
+}
+
+int qemu_balloon_status(MonitorCompletion cb, void *opaque)
+{
+    if (qemu_balloon_event) {
+        qemu_balloon_event(qemu_balloon_event_opaque, 0, cb, opaque);
+        return 1;
+    } else {
+        return 0;
+    }
+}
+ 
+static void print_balloon_stat(const char *key, QObject *obj, void *opaque)
+{
+    Monitor *mon = opaque;
+
+    if (strcmp(key, "actual"))
+        monitor_printf(mon, ",%s=%" PRId64, key,
+                       qint_get_int(qobject_to_qint(obj)));
+}
+
+void monitor_print_balloon(Monitor *mon, const QObject *data)
+{
+    QDict *qdict;
+
+    qdict = qobject_to_qdict(data);
+    if (!qdict_haskey(qdict, "actual"))
+        return;
+
+    monitor_printf(mon, "balloon: actual=%" PRId64,
+                   qdict_get_int(qdict, "actual") >> 20);
+    qdict_iter(qdict, print_balloon_stat, mon);
+    monitor_printf(mon, "\n");
+}
+
+/**
+ * do_info_balloon(): Balloon information
+ *
+ * Make an asynchronous request for balloon info.  When the request completes
+ * a QDict will be returned according to the following specification:
+ *
+ * - "actual": current balloon value in bytes
+ * The following fields may or may not be present:
+ * - "mem_swapped_in": Amount of memory swapped in (bytes)
+ * - "mem_swapped_out": Amount of memory swapped out (bytes)
+ * - "major_page_faults": Number of major faults
+ * - "minor_page_faults": Number of minor faults
+ * - "free_mem": Total amount of free and unused memory (bytes)
+ * - "total_mem": Total amount of available memory (bytes)
+ *
+ * Example:
+ *
+ * { "actual": 1073741824, "mem_swapped_in": 0, "mem_swapped_out": 0,
+ *   "major_page_faults": 142, "minor_page_faults": 239245,
+ *   "free_mem": 1014185984, "total_mem": 1044668416 }
+ */
+int do_info_balloon(Monitor *mon, MonitorCompletion cb, void *opaque)
+{
+    int ret;
+
+    if (kvm_enabled() && !kvm_has_sync_mmu()) {
+        qerror_report(QERR_KVM_MISSING_CAP, "synchronous MMU", "balloon");
+        return -1;
+    }
+
+    ret = qemu_balloon_status(cb, opaque);
+    if (!ret) {
+        qerror_report(QERR_DEVICE_NOT_ACTIVE, "balloon");
+        return -1;
+    }
+
+    return 0;
+}
+
+/**
+ * do_balloon(): Request VM to change its memory allocation
+ */
+int do_balloon(Monitor *mon, const QDict *params,
+	       MonitorCompletion cb, void *opaque)
+{
+    int ret;
+
+    if (kvm_enabled() && !kvm_has_sync_mmu()) {
+        qerror_report(QERR_KVM_MISSING_CAP, "synchronous MMU", "balloon");
+        return -1;
+    }
+
+    ret = qemu_balloon(qdict_get_int(params, "value"), cb, opaque);
+    if (ret == 0) {
+        qerror_report(QERR_DEVICE_NOT_ACTIVE, "balloon");
+        return -1;
+    }
+
+    cb(opaque, NULL);
+    return 0;
+}
diff --git a/balloon.h b/balloon.h
index 8c019eb..d478e28 100644
--- a/balloon.h
+++ b/balloon.h
@@ -14,6 +14,8 @@
 #ifndef _QEMU_BALLOON_H
 #define _QEMU_BALLOON_H
 
+#include "monitor.h"
+
 typedef void (QEMUBalloonEvent)(void *opaque, ram_addr_t target,
                                 MonitorCompletion cb, void *cb_data);
 
@@ -23,4 +25,9 @@ int qemu_balloon(ram_addr_t target, MonitorCompletion cb, void *opaque);
 
 int qemu_balloon_status(MonitorCompletion cb, void *opaque);
 
+void monitor_print_balloon(Monitor *mon, const QObject *data);
+int do_info_balloon(Monitor *mon, MonitorCompletion cb, void *opaque);
+int do_balloon(Monitor *mon, const QDict *params,
+               MonitorCompletion cb, void *opaque);
+
 #endif
diff --git a/monitor.c b/monitor.c
index 822dc27..5659991 100644
--- a/monitor.c
+++ b/monitor.c
@@ -2266,91 +2266,6 @@ static void do_info_status(Monitor *mon, QObject **ret_data)
                                     vm_running, singlestep);
 }
 
-static void print_balloon_stat(const char *key, QObject *obj, void *opaque)
-{
-    Monitor *mon = opaque;
-
-    if (strcmp(key, "actual"))
-        monitor_printf(mon, ",%s=%" PRId64, key,
-                       qint_get_int(qobject_to_qint(obj)));
-}
-
-static void monitor_print_balloon(Monitor *mon, const QObject *data)
-{
-    QDict *qdict;
-
-    qdict = qobject_to_qdict(data);
-    if (!qdict_haskey(qdict, "actual"))
-        return;
-
-    monitor_printf(mon, "balloon: actual=%" PRId64,
-                   qdict_get_int(qdict, "actual") >> 20);
-    qdict_iter(qdict, print_balloon_stat, mon);
-    monitor_printf(mon, "\n");
-}
-
-/**
- * do_info_balloon(): Balloon information
- *
- * Make an asynchronous request for balloon info.  When the request completes
- * a QDict will be returned according to the following specification:
- *
- * - "actual": current balloon value in bytes
- * The following fields may or may not be present:
- * - "mem_swapped_in": Amount of memory swapped in (bytes)
- * - "mem_swapped_out": Amount of memory swapped out (bytes)
- * - "major_page_faults": Number of major faults
- * - "minor_page_faults": Number of minor faults
- * - "free_mem": Total amount of free and unused memory (bytes)
- * - "total_mem": Total amount of available memory (bytes)
- *
- * Example:
- *
- * { "actual": 1073741824, "mem_swapped_in": 0, "mem_swapped_out": 0,
- *   "major_page_faults": 142, "minor_page_faults": 239245,
- *   "free_mem": 1014185984, "total_mem": 1044668416 }
- */
-static int do_info_balloon(Monitor *mon, MonitorCompletion cb, void *opaque)
-{
-    int ret;
-
-    if (kvm_enabled() && !kvm_has_sync_mmu()) {
-        qerror_report(QERR_KVM_MISSING_CAP, "synchronous MMU", "balloon");
-        return -1;
-    }
-
-    ret = qemu_balloon_status(cb, opaque);
-    if (!ret) {
-        qerror_report(QERR_DEVICE_NOT_ACTIVE, "balloon");
-        return -1;
-    }
-
-    return 0;
-}
-
-/**
- * do_balloon(): Request VM to change its memory allocation
- */
-static int do_balloon(Monitor *mon, const QDict *params,
-                       MonitorCompletion cb, void *opaque)
-{
-    int ret;
-
-    if (kvm_enabled() && !kvm_has_sync_mmu()) {
-        qerror_report(QERR_KVM_MISSING_CAP, "synchronous MMU", "balloon");
-        return -1;
-    }
-
-    ret = qemu_balloon(qdict_get_int(params, "value"), cb, opaque);
-    if (ret == 0) {
-        qerror_report(QERR_DEVICE_NOT_ACTIVE, "balloon");
-        return -1;
-    }
-
-    cb(opaque, NULL);
-    return 0;
-}
-
 static qemu_acl *find_acl(Monitor *mon, const char *name)
 {
     qemu_acl *acl = qemu_acl_find(name);
diff --git a/vl.c b/vl.c
index 8828beb..e7192fc 100644
--- a/vl.c
+++ b/vl.c
@@ -146,7 +146,6 @@ int main(int argc, char **argv)
 #include "audio/audio.h"
 #include "migration.h"
 #include "kvm.h"
-#include "balloon.h"
 #include "qemu-option.h"
 #include "qemu-config.h"
 #include "qemu-objects.h"
@@ -307,39 +306,6 @@ static void set_proc_name(const char *s)
 #endif    	
 }
  
-/***************/
-/* ballooning */
-
-static QEMUBalloonEvent *qemu_balloon_event;
-void *qemu_balloon_event_opaque;
-
-void qemu_add_balloon_handler(QEMUBalloonEvent *func, void *opaque)
-{
-    qemu_balloon_event = func;
-    qemu_balloon_event_opaque = opaque;
-}
-
-int qemu_balloon(ram_addr_t target, MonitorCompletion cb, void *opaque)
-{
-    if (qemu_balloon_event) {
-        qemu_balloon_event(qemu_balloon_event_opaque, target, cb, opaque);
-        return 1;
-    } else {
-        return 0;
-    }
-}
-
-int qemu_balloon_status(MonitorCompletion cb, void *opaque)
-{
-    if (qemu_balloon_event) {
-        qemu_balloon_event(qemu_balloon_event_opaque, 0, cb, opaque);
-        return 1;
-    } else {
-        return 0;
-    }
-}
-
-
 /***********************************************************/
 /* real time host monotonic timer */
 
-- 
1.6.6.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Qemu-devel] [PATCH 4/3] move targphys.h and hw/poison.h inclusion to cpu-common.h
  2010-03-31 14:56 [Qemu-devel] [PATCH rebased 0/3] move stuff out of vl.c Paolo Bonzini
                   ` (2 preceding siblings ...)
  2010-03-31 14:56 ` [Qemu-devel] [PATCH 3/3] move balloon handling to balloon.c Paolo Bonzini
@ 2010-03-31 15:25 ` Paolo Bonzini
  2010-03-31 15:25 ` [Qemu-devel] [PATCH 5/3] compile balloon.c once Paolo Bonzini
  4 siblings, 0 replies; 7+ messages in thread
From: Paolo Bonzini @ 2010-03-31 15:25 UTC (permalink / raw)
  To: qemu-devel

With more files from outside the hw/ directory being placed into
libhw, avoid the need to include hw/hw.h for the sake of targ_phys_addr_t.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 cpu-common.h            |    8 ++++++++
 hw/hw.h                 |    2 --
 hw/poison.h => poison.h |    0
 3 files changed, 8 insertions(+), 2 deletions(-)
 rename hw/poison.h => poison.h (100%)

diff --git a/cpu-common.h b/cpu-common.h
index bb05300..2abd4a8 100644
--- a/cpu-common.h
+++ b/cpu-common.h
@@ -7,6 +7,14 @@
 #define WORDS_ALIGNED
 #endif
 
+#ifdef TARGET_PHYS_ADDR_BITS
+#include "targphys.h"
+#endif
+
+#ifndef NEED_CPU_H
+#include "poison.h"
+#endif
+
 #include "bswap.h"
 #include "qemu-queue.h"
 
diff --git a/hw/hw.h b/hw/hw.h
index 7b500f4..328b704 100644
--- a/hw/hw.h
+++ b/hw/hw.h
@@ -5,8 +5,6 @@
 #include "qemu-common.h"
 
 #if defined(TARGET_PHYS_ADDR_BITS) && !defined(NEED_CPU_H)
-#include "targphys.h"
-#include "poison.h"
 #include "cpu-common.h"
 #endif
 
diff --git a/hw/poison.h b/poison.h
similarity index 100%
rename from hw/poison.h
rename to poison.h
-- 
1.6.6.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Qemu-devel] [PATCH 5/3] compile balloon.c once
  2010-03-31 14:56 [Qemu-devel] [PATCH rebased 0/3] move stuff out of vl.c Paolo Bonzini
                   ` (3 preceding siblings ...)
  2010-03-31 15:25 ` [Qemu-devel] [PATCH 4/3] move targphys.h and hw/poison.h inclusion to cpu-common.h Paolo Bonzini
@ 2010-03-31 15:25 ` Paolo Bonzini
  2010-04-01  8:11   ` [Qemu-devel] " Paolo Bonzini
  4 siblings, 1 reply; 7+ messages in thread
From: Paolo Bonzini @ 2010-03-31 15:25 UTC (permalink / raw)
  To: qemu-devel

balloon.c contained some code from monitor.c, so it was compiled
once per target.  Fix this.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 Makefile.objs   |    2 +-
 Makefile.target |    2 +-
 kvm.h           |    9 +++++----
 3 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/Makefile.objs b/Makefile.objs
index 233fbba..f89823c 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -128,7 +128,7 @@ user-obj-y += cutils.o cache-utils.o
 # libhw
 
 hw-obj-y =
-hw-obj-y += vl.o loader.o
+hw-obj-y += vl.o balloon.o loader.o
 hw-obj-y += virtio.o virtio-console.o
 hw-obj-$(CONFIG_VIRTIO_PCI) += virtio-pci.o
 hw-obj-y += fw_cfg.o pci.o pci_host.o pcie_host.o
diff --git a/Makefile.target b/Makefile.target
index 9ca6636..dbffe63 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -161,7 +161,7 @@ endif #CONFIG_BSD_USER
 # System emulator target
 ifdef CONFIG_SOFTMMU
 
-obj-y = arch_init.o cpus.o monitor.o machine.o gdbstub.o balloon.o
+obj-y = arch_init.o cpus.o monitor.o machine.o gdbstub.o
 # virtio has to be here due to weird dependency between PCI and virtio-net.
 # need to fix this properly
 obj-y += virtio-blk.o virtio-balloon.o virtio-net.o virtio-serial-bus.o
diff --git a/kvm.h b/kvm.h
index 4f77188..cb9d79b 100644
--- a/kvm.h
+++ b/kvm.h
@@ -16,6 +16,7 @@
 
 #include "config-host.h"
 #include "qemu-queue.h"
+#include "cpu-common.h"
 
 extern int kvm_allowed;
 
@@ -31,6 +32,10 @@ struct kvm_run;
 
 int kvm_init(int smp_cpus);
 
+int kvm_has_sync_mmu(void);
+int kvm_has_vcpu_events(void);
+int kvm_has_robust_singlestep(void);
+
 #ifdef NEED_CPU_H
 int kvm_init_vcpu(CPUState *env);
 
@@ -40,10 +45,6 @@ int kvm_cpu_exec(CPUState *env);
 int kvm_log_start(target_phys_addr_t phys_addr, ram_addr_t size);
 int kvm_log_stop(target_phys_addr_t phys_addr, ram_addr_t size);
 
-int kvm_has_sync_mmu(void);
-int kvm_has_vcpu_events(void);
-int kvm_has_robust_singlestep(void);
-
 void kvm_setup_guest_memory(void *start, size_t size);
 
 int kvm_coalesce_mmio_region(target_phys_addr_t start, ram_addr_t size);
-- 
1.6.6.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [Qemu-devel] Re: [PATCH 5/3] compile balloon.c once
  2010-03-31 15:25 ` [Qemu-devel] [PATCH 5/3] compile balloon.c once Paolo Bonzini
@ 2010-04-01  8:11   ` Paolo Bonzini
  0 siblings, 0 replies; 7+ messages in thread
From: Paolo Bonzini @ 2010-04-01  8:11 UTC (permalink / raw)
  To: qemu-devel

On 03/31/2010 05:25 PM, Paolo Bonzini wrote:
> balloon.c contained some code from monitor.c, so it was compiled
> once per target.  Fix this.

This patch is wrong just like Blue Swirl's vl.c patch.  The other 4 are 
fine though.

Paolo

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2010-04-01  8:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-31 14:56 [Qemu-devel] [PATCH rebased 0/3] move stuff out of vl.c Paolo Bonzini
2010-03-31 14:56 ` [Qemu-devel] [PATCH 1/3] move socket_init to qemu-sockets.c Paolo Bonzini
2010-03-31 14:56 ` [Qemu-devel] [PATCH 2/3] move two variable declarations out of vl.c Paolo Bonzini
2010-03-31 14:56 ` [Qemu-devel] [PATCH 3/3] move balloon handling to balloon.c Paolo Bonzini
2010-03-31 15:25 ` [Qemu-devel] [PATCH 4/3] move targphys.h and hw/poison.h inclusion to cpu-common.h Paolo Bonzini
2010-03-31 15:25 ` [Qemu-devel] [PATCH 5/3] compile balloon.c once Paolo Bonzini
2010-04-01  8:11   ` [Qemu-devel] " Paolo Bonzini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).