qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 3/5] Don't ignore load_state() error return values.


From: Juan Quintela
Subject: [Qemu-devel] [PATCH 3/5] Don't ignore load_state() error return values.
Date: Tue, 18 Aug 2009 15:34:08 +0200

An error value here means that some device was not able to load it state.  
There is no hope at this point.

Signed-off-by: Juan Quintela <address@hidden>
---
 savevm.c |   16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/savevm.c b/savevm.c
index 7779c0e..55a1b50 100644
--- a/savevm.c
+++ b/savevm.c
@@ -955,7 +955,13 @@ int qemu_loadvm_state(QEMUFile *f)
             le->next = first_le;
             first_le = le;

-            le->se->load_state(f, le->se->opaque, le->version_id);
+            ret = le->se->load_state(f, le->se->opaque, le->version_id);
+            if (ret < 0) {
+                fprintf(stderr, "qemu: warning: error while loading state for 
instance 0x%x of device '%s'\n",
+                        instance_id, idstr);
+                ret = -EINVAL;
+                goto out;
+            }
             break;
         case QEMU_VM_SECTION_PART:
         case QEMU_VM_SECTION_END:
@@ -968,7 +974,13 @@ int qemu_loadvm_state(QEMUFile *f)
                 goto out;
             }

-            le->se->load_state(f, le->se->opaque, le->version_id);
+            ret = le->se->load_state(f, le->se->opaque, le->version_id);
+            if (ret != 0) {
+                fprintf(stderr, "qemu: warning: error while loading state 
section '%d'\n",
+                        section_id);
+                ret = -EINVAL;
+                goto out;
+            }
             break;
         default:
             fprintf(stderr, "Unknown savevm section type %d\n", section_type);
-- 
1.6.2.5





reply via email to

[Prev in Thread] Current Thread [Next in Thread]