qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [Xen-devel] [XEN][RFC PATCH V2 11/17] xc: modify save/r


From: Julien Grall
Subject: Re: [Qemu-devel] [Xen-devel] [XEN][RFC PATCH V2 11/17] xc: modify save/restore to support multiple device models
Date: Thu, 23 Aug 2012 20:13:09 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.16) Gecko/20120726 Icedove/3.0.11

On 08/23/2012 02:27 PM, Ian Campbell wrote:

@@ -103,6 +103,9 @@ static ssize_t rdexact(xc_interface *xch, struct 
restore_ctx *ctx,
  #else
  #define RDEXACT read_exact
  #endif
+
+#define QEMUSIG_SIZE 21
+
  /*
  ** In the state file (or during transfer), all page-table pages are
  ** converted into a 'canonical' form where references to actual mfns
@@ -467,7 +522,7 @@ static int buffer_tail_hvm(xc_interface *xch, struct 
restore_ctx *ctx,
                             int vcpuextstate, uint32_t vcpuextstate_size)
  {
      uint8_t *tmp;
-    unsigned char qemusig[21];
+    unsigned char qemusig[QEMUSIG_SIZE + 1];
An extra + 1 here?
QEMUSIG_SIZE doesn't take into account the '\0'. So we need to add 1.
If an error occurred, without +1, the output log lost the last character.

[...]
-    qemusig[20] = '\0';
+    qemusig[QEMUSIG_SIZE] = '\0';
This is one bigger than it used to be now.

Perhaps this is an unrelated bug fix (I haven't check the real length of
the sig), in which case please can you split it out and submit
separately?

#define QEMU_SIGNATURE "DeviceModelRecord0002"
Just checked, the length seems to be 21. I will send a patch with
this change.

--
Julien



reply via email to

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