[Qemu-devel] [PATCH 06/17] Move win32 early signal handling setup to os_setup_signal_handling()

2010-06-10 Thread Jes . Sorensen
From: Jes Sorensen jes.soren...@redhat.com

Move win32 early signal handling setup to os_setup_signal_handling()

Signed-off-by: Jes Sorensen jes.soren...@redhat.com
Acked-by: Juan Quintela quint...@redhat.com
Acked-by: Richard Henderson r...@redhat.com
---
 os-win32.c  |   29 +
 qemu-os-posix.h |2 --
 sysemu.h|2 ++
 vl.c|   30 --
 4 files changed, 31 insertions(+), 32 deletions(-)

diff --git a/os-win32.c b/os-win32.c
index 1f7e28b..dfa90bc 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -152,3 +152,32 @@ void os_host_main_loop_wait(int *timeout)
 
 *timeout = 0;
 }
+
+static BOOL WINAPI qemu_ctrl_handler(DWORD type)
+{
+exit(STATUS_CONTROL_C_EXIT);
+return TRUE;
+}
+
+void os_setup_signal_handling(void)
+{
+/* Note: cpu_interrupt() is currently not SMP safe, so we force
+   QEMU to run on a single CPU */
+HANDLE h;
+DWORD mask, smask;
+int i;
+
+SetConsoleCtrlHandler(qemu_ctrl_handler, TRUE);
+
+h = GetCurrentProcess();
+if (GetProcessAffinityMask(h, mask, smask)) {
+for(i = 0; i  32; i++) {
+if (mask  (1  i))
+break;
+}
+if (i != 32) {
+mask = 1  i;
+SetProcessAffinityMask(h, mask);
+}
+}
+}
diff --git a/qemu-os-posix.h b/qemu-os-posix.h
index ff5adb1..96d1036 100644
--- a/qemu-os-posix.h
+++ b/qemu-os-posix.h
@@ -30,6 +30,4 @@ static inline void os_host_main_loop_wait(int *timeout)
 {
 }
 
-void os_setup_signal_handling(void);
-
 #endif
diff --git a/sysemu.h b/sysemu.h
index 5e4feae..e3643ad 100644
--- a/sysemu.h
+++ b/sysemu.h
@@ -79,6 +79,8 @@ int qemu_loadvm_state(QEMUFile *f);
 /* SLIRP */
 void do_info_slirp(Monitor *mon);
 
+void os_setup_signal_handling(void);
+
 typedef enum DisplayType
 {
 DT_DEFAULT,
diff --git a/vl.c b/vl.c
index 29c9697..264710d 100644
--- a/vl.c
+++ b/vl.c
@@ -1986,14 +1986,6 @@ static int balloon_parse(const char *arg)
 return -1;
 }
 
-#ifdef _WIN32
-static BOOL WINAPI qemu_ctrl_handler(DWORD type)
-{
-exit(STATUS_CONTROL_C_EXIT);
-return TRUE;
-}
-#endif
-
 #ifndef _WIN32
 
 static void termsig_handler(int signal)
@@ -2459,29 +2451,7 @@ int main(int argc, char **argv, char **envp)
 qemu_cache_utils_init(envp);
 
 QLIST_INIT (vm_change_state_head);
-#ifndef _WIN32
 os_setup_signal_handling();
-#else
-SetConsoleCtrlHandler(qemu_ctrl_handler, TRUE);
-/* Note: cpu_interrupt() is currently not SMP safe, so we force
-   QEMU to run on a single CPU */
-{
-HANDLE h;
-DWORD mask, smask;
-int i;
-h = GetCurrentProcess();
-if (GetProcessAffinityMask(h, mask, smask)) {
-for(i = 0; i  32; i++) {
-if (mask  (1  i))
-break;
-}
-if (i != 32) {
-mask = 1  i;
-SetProcessAffinityMask(h, mask);
-}
-}
-}
-#endif
 
 module_call_init(MODULE_INIT_MACHINE);
 machine = find_default_machine();
-- 
1.6.5.2




[Qemu-devel] [PATCH 06/17] Move win32 early signal handling setup to os_setup_signal_handling()

2010-06-04 Thread Jes . Sorensen
From: Jes Sorensen jes.soren...@redhat.com

Move win32 early signal handling setup to os_setup_signal_handling()

Signed-off-by: Jes Sorensen jes.soren...@redhat.com
---
 os-win32.c |   29 +
 vl.c   |   30 --
 2 files changed, 29 insertions(+), 30 deletions(-)

diff --git a/os-win32.c b/os-win32.c
index 1f7e28b..dfa90bc 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -152,3 +152,32 @@ void os_host_main_loop_wait(int *timeout)
 
 *timeout = 0;
 }
+
+static BOOL WINAPI qemu_ctrl_handler(DWORD type)
+{
+exit(STATUS_CONTROL_C_EXIT);
+return TRUE;
+}
+
+void os_setup_signal_handling(void)
+{
+/* Note: cpu_interrupt() is currently not SMP safe, so we force
+   QEMU to run on a single CPU */
+HANDLE h;
+DWORD mask, smask;
+int i;
+
+SetConsoleCtrlHandler(qemu_ctrl_handler, TRUE);
+
+h = GetCurrentProcess();
+if (GetProcessAffinityMask(h, mask, smask)) {
+for(i = 0; i  32; i++) {
+if (mask  (1  i))
+break;
+}
+if (i != 32) {
+mask = 1  i;
+SetProcessAffinityMask(h, mask);
+}
+}
+}
diff --git a/vl.c b/vl.c
index 7a46fee..f43456a 100644
--- a/vl.c
+++ b/vl.c
@@ -1986,14 +1986,6 @@ static int balloon_parse(const char *arg)
 return -1;
 }
 
-#ifdef _WIN32
-static BOOL WINAPI qemu_ctrl_handler(DWORD type)
-{
-exit(STATUS_CONTROL_C_EXIT);
-return TRUE;
-}
-#endif
-
 #ifndef _WIN32
 
 static void termsig_handler(int signal)
@@ -2459,29 +2451,7 @@ int main(int argc, char **argv, char **envp)
 qemu_cache_utils_init(envp);
 
 QLIST_INIT (vm_change_state_head);
-#ifndef _WIN32
 os_setup_signal_handling();
-#else
-SetConsoleCtrlHandler(qemu_ctrl_handler, TRUE);
-/* Note: cpu_interrupt() is currently not SMP safe, so we force
-   QEMU to run on a single CPU */
-{
-HANDLE h;
-DWORD mask, smask;
-int i;
-h = GetCurrentProcess();
-if (GetProcessAffinityMask(h, mask, smask)) {
-for(i = 0; i  32; i++) {
-if (mask  (1  i))
-break;
-}
-if (i != 32) {
-mask = 1  i;
-SetProcessAffinityMask(h, mask);
-}
-}
-}
-#endif
 
 module_call_init(MODULE_INIT_MACHINE);
 machine = find_default_machine();
-- 
1.6.5.2




[Qemu-devel] [PATCH 06/17] Move win32 early signal handling setup to os_setup_signal_handling()

2010-06-04 Thread Jes . Sorensen
From: Jes Sorensen jes.soren...@redhat.com

Move win32 early signal handling setup to os_setup_signal_handling()

Signed-off-by: Jes Sorensen jes.soren...@redhat.com
---
 os-win32.c  |   29 +
 qemu-os-posix.h |2 --
 sysemu.h|2 ++
 vl.c|   30 --
 4 files changed, 31 insertions(+), 32 deletions(-)

diff --git a/os-win32.c b/os-win32.c
index 1f7e28b..dfa90bc 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -152,3 +152,32 @@ void os_host_main_loop_wait(int *timeout)
 
 *timeout = 0;
 }
+
+static BOOL WINAPI qemu_ctrl_handler(DWORD type)
+{
+exit(STATUS_CONTROL_C_EXIT);
+return TRUE;
+}
+
+void os_setup_signal_handling(void)
+{
+/* Note: cpu_interrupt() is currently not SMP safe, so we force
+   QEMU to run on a single CPU */
+HANDLE h;
+DWORD mask, smask;
+int i;
+
+SetConsoleCtrlHandler(qemu_ctrl_handler, TRUE);
+
+h = GetCurrentProcess();
+if (GetProcessAffinityMask(h, mask, smask)) {
+for(i = 0; i  32; i++) {
+if (mask  (1  i))
+break;
+}
+if (i != 32) {
+mask = 1  i;
+SetProcessAffinityMask(h, mask);
+}
+}
+}
diff --git a/qemu-os-posix.h b/qemu-os-posix.h
index ff5adb1..96d1036 100644
--- a/qemu-os-posix.h
+++ b/qemu-os-posix.h
@@ -30,6 +30,4 @@ static inline void os_host_main_loop_wait(int *timeout)
 {
 }
 
-void os_setup_signal_handling(void);
-
 #endif
diff --git a/sysemu.h b/sysemu.h
index 5e4feae..e3643ad 100644
--- a/sysemu.h
+++ b/sysemu.h
@@ -79,6 +79,8 @@ int qemu_loadvm_state(QEMUFile *f);
 /* SLIRP */
 void do_info_slirp(Monitor *mon);
 
+void os_setup_signal_handling(void);
+
 typedef enum DisplayType
 {
 DT_DEFAULT,
diff --git a/vl.c b/vl.c
index 7a46fee..f43456a 100644
--- a/vl.c
+++ b/vl.c
@@ -1986,14 +1986,6 @@ static int balloon_parse(const char *arg)
 return -1;
 }
 
-#ifdef _WIN32
-static BOOL WINAPI qemu_ctrl_handler(DWORD type)
-{
-exit(STATUS_CONTROL_C_EXIT);
-return TRUE;
-}
-#endif
-
 #ifndef _WIN32
 
 static void termsig_handler(int signal)
@@ -2459,29 +2451,7 @@ int main(int argc, char **argv, char **envp)
 qemu_cache_utils_init(envp);
 
 QLIST_INIT (vm_change_state_head);
-#ifndef _WIN32
 os_setup_signal_handling();
-#else
-SetConsoleCtrlHandler(qemu_ctrl_handler, TRUE);
-/* Note: cpu_interrupt() is currently not SMP safe, so we force
-   QEMU to run on a single CPU */
-{
-HANDLE h;
-DWORD mask, smask;
-int i;
-h = GetCurrentProcess();
-if (GetProcessAffinityMask(h, mask, smask)) {
-for(i = 0; i  32; i++) {
-if (mask  (1  i))
-break;
-}
-if (i != 32) {
-mask = 1  i;
-SetProcessAffinityMask(h, mask);
-}
-}
-}
-#endif
 
 module_call_init(MODULE_INIT_MACHINE);
 machine = find_default_machine();
-- 
1.6.5.2