diff options
author | Halil Pasic | 2017-02-22 17:01:17 +0100 |
---|---|---|
committer | Dr. David Alan Gilbert | 2017-02-28 12:29:00 +0100 |
commit | 07d4e69147b4957e617812206a62a86f03294ad3 (patch) | |
tree | 376208699863924fe99aeb027c4e3a4c22f49d89 /hw/core/qdev-properties-system.c | |
parent | migration/vmstate: split up vmstate_base_addr (diff) | |
download | qemu-07d4e69147b4957e617812206a62a86f03294ad3.tar.gz qemu-07d4e69147b4957e617812206a62a86f03294ad3.tar.xz qemu-07d4e69147b4957e617812206a62a86f03294ad3.zip |
migration/vmstate: fix array of ptr with nullptrs
Make VMS_ARRAY_OF_POINTER cope with null pointers. Previously the
reward for trying to migrate an array with some null pointers in it was
an illegal memory access, that is a swift and painless death of the
process. Let's make vmstate cope with this scenario.
The general approach is, when we encounter a null pointer (element),
instead of following the pointer to save/load the data behind it, we
save/load a placeholder. This way we can detect if we expected a null
pointer at the load side but not null data was saved instead.
Signed-off-by: Halil Pasic <pasic@linux.vnet.ibm.com>
Reviewed-by: Guenther Hutzl <hutzl@linux.vnet.ibm.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Message-Id: <20170222160119.52771-4-pasic@linux.vnet.ibm.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Diffstat (limited to 'hw/core/qdev-properties-system.c')
0 files changed, 0 insertions, 0 deletions