[Qemu-devel] [PATCH v3] Prevent disk data loss when closing qemu

2012-05-30 Thread Pavel Dovgaluk
Prevent disk data loss when closing qemu console window
under Windows 7.

v3. Comment for Sleep() parameter was updated.

Signed-off-by: Pavel Dovgalyukpavel.dovga...@gmail.com
---
 os-win32.c |8 +++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/os-win32.c b/os-win32.c
index ad76370..13892ba 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -57,7 +57,13 @@ int setenv(const char *name, const char *value, int 
overwrite)
 
 static BOOL WINAPI qemu_ctrl_handler(DWORD type)
 {
-exit(STATUS_CONTROL_C_EXIT);
+qemu_system_shutdown_request();
+/* Windows 7 kills application when the function returns.
+   Sleep here to give QEMU a try for closing.
+   Sleep period is 1ms because Windows kills the program
+   after 10 seconds anyway. */
+Sleep(1);
+
 return TRUE;
 }





Re: [Qemu-devel] [PATCH v3] Prevent disk data loss when closing qemu

2012-05-30 Thread Pavel Dovgaluk
 From: Anthony Liguori [mailto:anth...@codemonkey.ws]
 Sent: Wednesday, May 30, 2012 6:29 AM
 On 05/29/2012 09:26 PM, Pavel Dovgaluk wrote:
  Prevent disk data loss when closing qemu console window
  under Windows 7.
 
  v3. Comment for Sleep() parameter was updated.
 
  Signed-off-by: Pavel Dovgalyukpavel.dovga...@gmail.com
  ---
os-win32.c |6 +-
1 files changed, 5 insertions(+), 1 deletions(-)
 
  diff --git a/os-win32.c b/os-win32.c
  index ad76370..66c39b8 100644
  --- a/os-win32.c
  +++ b/os-win32.c
  @@ -57,7 +57,11 @@ int setenv(const char *name, const char *value, int 
  overwrite)
 
static BOOL WINAPI qemu_ctrl_handler(DWORD type)
{
  -exit(STATUS_CONTROL_C_EXIT);
  +qemu_system_shutdown_request();
  +/* Windows 7 kills application when the function returns.
  +   Sleep here to give QEMU a try for closing.
  +   Sleep period is 1ms because Windows kills the program
  +   after 10 seconds anyway. */
  +Sleep(1);
  +
return TRUE;
}
 
 
 Please don't use Outlook to send patches.  Your mailer mangled this patch.  
 Use
 git-send-email.

  Ok, I've just sent it again.

Pavel Dovgalyuk




[Qemu-devel] [PATCH v3] Prevent disk data loss when closing qemu

2012-05-29 Thread Pavel Dovgaluk
Prevent disk data loss when closing qemu console window
under Windows 7.

v3. Comment for Sleep() parameter was updated.

Signed-off-by: Pavel Dovgalyuk pavel.dovga...@gmail.com
---
 os-win32.c |6 +-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/os-win32.c b/os-win32.c
index ad76370..66c39b8 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -57,7 +57,11 @@ int setenv(const char *name, const char *value, int 
overwrite)
 
 static BOOL WINAPI qemu_ctrl_handler(DWORD type)
 {
-exit(STATUS_CONTROL_C_EXIT);
+qemu_system_shutdown_request();
+/* Windows 7 kills application when the function returns.
+   Sleep here to give QEMU a try for closing.
+   Sleep period is 1ms because Windows kills the program
+   after 10 seconds anyway. */
+Sleep(1);
+
 return TRUE;
 }





Re: [Qemu-devel] [PATCH v3] Prevent disk data loss when closing qemu

2012-05-29 Thread Anthony Liguori

On 05/29/2012 09:26 PM, Pavel Dovgaluk wrote:

Prevent disk data loss when closing qemu console window
under Windows 7.

v3. Comment for Sleep() parameter was updated.

Signed-off-by: Pavel Dovgalyukpavel.dovga...@gmail.com
---
  os-win32.c |6 +-
  1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/os-win32.c b/os-win32.c
index ad76370..66c39b8 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -57,7 +57,11 @@ int setenv(const char *name, const char *value, int 
overwrite)

  static BOOL WINAPI qemu_ctrl_handler(DWORD type)
  {
-exit(STATUS_CONTROL_C_EXIT);
+qemu_system_shutdown_request();
+/* Windows 7 kills application when the function returns.
+   Sleep here to give QEMU a try for closing.
+   Sleep period is 1ms because Windows kills the program
+   after 10 seconds anyway. */
+Sleep(1);
+
  return TRUE;
  }



Please don't use Outlook to send patches.  Your mailer mangled this patch.  Use 
git-send-email.


Regards,

Anthony Liguori