pseries: Allow TCG h_enter to work with hotplugged memory
commitecbc25fa86ce44cf5aea94adaf79ea8428f12f4b
authorDavid Gibson <david@gibson.dropbear.id.au>
Thu, 21 Jan 2016 03:48:43 +0000 (21 14:48 +1100)
committerDavid Gibson <david@gibson.dropbear.id.au>
Sat, 30 Jan 2016 12:37:38 +0000 (30 23:37 +1100)
tree4c248af1b43be98aa37e5e81fa85956f354efea7
parent1438eff302cbc6c85d477fd7181b8a9aeea2efd7
pseries: Allow TCG h_enter to work with hotplugged memory

The implementation of the H_ENTER hypercall for PAPR guests needs to
enforce correct access attributes on the inserted HPTE.  This means
determining if the HPTE's real address is a regular RAM address (which
requires attributes for coherent access) or an IO address (which requires
attributes for cache-inhibited access).

At the moment this check is implemented with (raddr < machine->ram_size),
but that only handles addresses in the base RAM area, not any hotplugged
RAM.

This patch corrects the problem with a new helper.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Alexey Kardashevskiy <aik@ozlabs.ru>
hw/ppc/spapr_hcall.c