diff options
author | Benjamin Herrenschmidt | 2019-04-11 10:00:01 +0200 |
---|---|---|
committer | David Gibson | 2019-04-26 03:37:57 +0200 |
commit | a2dd4e83e76ba9c0d432145059dd9e2b2a096e2b (patch) | |
tree | 97554cc89ba0383a59e949cde23cddfefb409027 /include/hw/ppc/spapr.h | |
parent | ppc/spapr: Use proper HPTE accessors for H_READ (diff) | |
download | qemu-a2dd4e83e76ba9c0d432145059dd9e2b2a096e2b.tar.gz qemu-a2dd4e83e76ba9c0d432145059dd9e2b2a096e2b.tar.xz qemu-a2dd4e83e76ba9c0d432145059dd9e2b2a096e2b.zip |
ppc/hash64: Rework R and C bit updates
With MT-TCG, we are now running translation in a racy way, thus
we need to mimic hardware when it comes to updating the R and
C bits, by doing byte stores.
The current "store_hpte" abstraction is ill suited for this, we
replace it with two separate callbacks for setting R and C.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Message-Id: <20190411080004.8690-4-clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'include/hw/ppc/spapr.h')
-rw-r--r-- | include/hw/ppc/spapr.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h index 9331f5e0b9..7e32f309c2 100644 --- a/include/hw/ppc/spapr.h +++ b/include/hw/ppc/spapr.h @@ -784,6 +784,8 @@ void spapr_reallocate_hpt(SpaprMachineState *spapr, int shift, Error **errp); void spapr_clear_pending_events(SpaprMachineState *spapr); int spapr_max_server_number(SpaprMachineState *spapr); +void spapr_store_hpte(PowerPCCPU *cpu, hwaddr ptex, + uint64_t pte0, uint64_t pte1); /* DRC callbacks. */ void spapr_core_release(DeviceState *dev); |