On 04/12/2013 07:05 AM, Paolo Bonzini wrote:
Il 12/04/2013 07:52, mrhi...@linux.vnet.ibm.com ha scritto:
+void ram_control_load_hook(QEMUFile *f, uint32_t flags)
+{
+    int ret = 0;
+
+    if (f->ops->hook_ram_load) {
+        qemu_fflush(f);
+        ret = f->ops->hook_ram_load(f, f->opaque, flags);
+        if (ret < 0) {
+            qemu_file_set_error(f, ret);
+        }
+    }
Almost my last request.

Here, qemu_fflush is not needed, we're reading.

Acknowledged.

Also, please fail if there is no hook, that is:

    if (f->ops->hook_ram_load) {
        ret = f->ops->hook_ram_load(f, f->opaque, flags);
    } else {
        ret = -EIO;
    }
    if (ret < 0) {
        qemu_file_set_error(f, ret);
    }

+
+        bytes = f->ops->save_page(f, f->opaque, block_offset, offset, size, 
va);
+
+        if (bytes > 0) {
+            f->pos += bytes;
+        }
+
And please add an "else { qemu_file_set_error(f, ret); }" too.

Good catch.


Reply via email to