The sending side shouldn't send any variable sized records which end up having
zero content, but the receiving side will need to tolerate such records for
compatibility purposes.

Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com>
---
CC: Ian Jackson <ian.jack...@eu.citrix.com>
CC: Wei Liu <wei.l...@citrix.com>
---
 docs/specs/libxc-migration-stream.pandoc | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/docs/specs/libxc-migration-stream.pandoc 
b/docs/specs/libxc-migration-stream.pandoc
index 31eba10..a90bc5d 100644
--- a/docs/specs/libxc-migration-stream.pandoc
+++ b/docs/specs/libxc-migration-stream.pandoc
@@ -3,7 +3,7 @@
   Andrew Cooper <<andrew.coop...@citrix.com>>
   Wen Congyang <<we...@cn.fujitsu.com>>
   Yang Hongyang <<hongyang.y...@easystack.cn>>
-% Revision 1
+% Revision 2
 
 Introduction
 ============
@@ -631,6 +631,10 @@ The set of valid records depends on the guest architecture 
and type.  No
 assumptions should be made about the ordering or interleaving of
 independent records.  Record dependencies are noted below.
 
+Some records have an exactly specified size.  Some records have variable size
+depending on their content.  A record with variable size which ends up being
+zero should be omitted entirely from the stream by the sending side.
+
 x86 PV Guest
 ------------
 
@@ -719,3 +723,13 @@ restored.
 The image header may only be extended by _appending_ additional
 fields.  In particular, the `marker`, `id` and `version` fields must
 never change size or location.
+
+
+Errata
+======
+
+For compatibility with older code, the receving side of a stream should
+tolerate and ignore variable sized records with zero content.  Some releases
+of Xen 4.6 and 4.7 could end up generating valid HVM\_PARAMS or
+X86\_PV\_VCPU\_{EXTENDED,XSAVE,MSRS} records with 0 content.
+
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

Reply via email to