summaryrefslogtreecommitdiffstats
path: root/hw/tpm
diff options
context:
space:
mode:
authorMarc-André Lureau2020-01-03 08:39:59 +0100
committerStefan Berger2020-01-29 13:27:07 +0100
commit71e415c8a75c130875f14d6b2136825789feb297 (patch)
tree005f10c0cab5553b5fb0f7c85da7d64a5af9576a /hw/tpm
parentMerge remote-tracking branch 'remotes/rth/tags/pull-pa-20200127' into staging (diff)
downloadqemu-71e415c8a75c130875f14d6b2136825789feb297.tar.gz
qemu-71e415c8a75c130875f14d6b2136825789feb297.tar.xz
qemu-71e415c8a75c130875f14d6b2136825789feb297.zip
tpm-ppi: page-align PPI RAM
post-copy migration fails on destination with error such as: 2019-12-26T10:22:44.714644Z qemu-kvm: ram_block_discard_range: Unaligned start address: 0x559d2afae9a0 Use qemu_memalign() to constrain the PPI RAM memory alignment. Cc: qemu-stable@nongnu.org Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Reviewed-by: Stefan Berger <stefanb@linux.ibm.com> Signed-off-by: Stefan Berger <stefanb@linux.ibm.com> Message-id: 20200103074000.1006389-3-marcandre.lureau@redhat.com
Diffstat (limited to 'hw/tpm')
-rw-r--r--hw/tpm/tpm_ppi.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/hw/tpm/tpm_ppi.c b/hw/tpm/tpm_ppi.c
index ff314592b4..6d9c1a3e40 100644
--- a/hw/tpm/tpm_ppi.c
+++ b/hw/tpm/tpm_ppi.c
@@ -43,7 +43,8 @@ void tpm_ppi_reset(TPMPPI *tpmppi)
void tpm_ppi_init(TPMPPI *tpmppi, struct MemoryRegion *m,
hwaddr addr, Object *obj)
{
- tpmppi->buf = g_malloc0(HOST_PAGE_ALIGN(TPM_PPI_ADDR_SIZE));
+ tpmppi->buf = qemu_memalign(qemu_real_host_page_size,
+ HOST_PAGE_ALIGN(TPM_PPI_ADDR_SIZE));
memory_region_init_ram_device_ptr(&tpmppi->ram, obj, "tpm-ppi",
TPM_PPI_ADDR_SIZE, tpmppi->buf);
vmstate_register_ram(&tpmppi->ram, DEVICE(obj));