diff options
| author | Peter Maydell <peter.maydell@linaro.org> | 2019-08-01 19:30:09 +0100 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2019-09-17 12:01:00 +0100 |
| commit | 3c818dfcc271f5ba298b06f33466ab30f9a28349 (patch) | |
| tree | 3e144218504ceeec4c1cf8123a996a69239b276c /hw/core/qdev-fw.c | |
| parent | 776095d3cd751a58469b68f652c1ab6785f63652 (diff) | |
| download | focaccia-qemu-3c818dfcc271f5ba298b06f33466ab30f9a28349.tar.gz focaccia-qemu-3c818dfcc271f5ba298b06f33466ab30f9a28349.zip | |
target/sparc: Correctly handle bus errors in page table walks
Currently we use the ldl_phys() function to read page table entries. With the unassigned_access hook in place, if these hit an unassigned area of memory then the hook will cause us to wrongly generate an exception with a fault address matching the address of the page table entry. Change to using address_space_ldl() so we can detect and correctly handle bus errors and give them their correct behaviour of causing a translation error with a suitable fault status register. Note that this won't actually take effect until we switch the over to using the do_translation_failed hook. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Tested-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Message-id: 20190801183012.17564-5-peter.maydell@linaro.org
Diffstat (limited to 'hw/core/qdev-fw.c')
0 files changed, 0 insertions, 0 deletions