diff options
author | Paul Durrant <paul.durrant@citrix.com> | 2011-11-30 07:18:11 -0800 |
---|---|---|
committer | Paul Durrant <paul.durrant@citrix.com> | 2011-11-30 07:18:11 -0800 |
commit | a6aed45cf39d2ed4ee7294c08fa0d9d54fcb683e (patch) | |
tree | d6fda8c9fe3a0abb6aab714d86c11e1ff3035c46 /tools/firmware | |
parent | a9f743f88ce63a552764b2e37cf6c4c0ac53ca30 (diff) | |
download | xen-a6aed45cf39d2ed4ee7294c08fa0d9d54fcb683e.tar.gz xen-a6aed45cf39d2ed4ee7294c08fa0d9d54fcb683e.tar.bz2 xen-a6aed45cf39d2ed4ee7294c08fa0d9d54fcb683e.zip |
hvmloader: Write address of VM generation id buffer into xenstore
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'tools/firmware')
-rw-r--r-- | tools/firmware/hvmloader/acpi/build.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/firmware/hvmloader/acpi/build.c b/tools/firmware/hvmloader/acpi/build.c index d81f1dc2a2..adb224e02f 100644 --- a/tools/firmware/hvmloader/acpi/build.c +++ b/tools/firmware/hvmloader/acpi/build.c @@ -301,10 +301,16 @@ unsigned long new_vm_gid(void) { uint64_t gid; unsigned char *buf; + char addr[11]; buf = mem_alloc(8, 8); if (!buf) return 0; + if ( snprintf(addr, sizeof(addr), "0x%lx", virt_to_phys(buf)) + >= sizeof(addr) ) + return 0; + xenstore_write("data/generation-id", addr); + gid = strtoll(xenstore_read("platform/generation-id", "0"), NULL, 0); *(uint64_t *)buf = gid; |