aboutsummaryrefslogtreecommitdiff
path: root/linux-user/mmap.c
diff options
context:
space:
mode:
authorLaurent Vivier <laurent@vivier.eu>2015-11-23 11:38:26 +0100
committerRiku Voipio <riku.voipio@linaro.org>2016-01-08 15:24:57 +0200
commit2a0fa68fb9761e2eb3dae4034131948d33018dc9 (patch)
treebc45e914b06f678d92bc879c890005c8da5caa04 /linux-user/mmap.c
parent861d72cd28b5793fc367c46b7821a5372b66e3f4 (diff)
downloadqemu-2a0fa68fb9761e2eb3dae4034131948d33018dc9.zip
qemu-2a0fa68fb9761e2eb3dae4034131948d33018dc9.tar.gz
qemu-2a0fa68fb9761e2eb3dae4034131948d33018dc9.tar.bz2
linux-user,sh4: fix signal retcode address
To return from a signal, setup_frame() puts an instruction to be executed in the stack. This sequence calls the syscall sigreturn(). The address of the instruction must be set in the PR register to be executed. This patch fixes this: the current code sets the register to the address of the instruction in the host address space (which can be 64bit whereas PR is only 32bit), but the virtual CPU can't access this address space, so we put in PR the address of the instruction in the guest address space. This patch also removes an useless variable (ret) in the modified functions. Signed-off-by: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Diffstat (limited to 'linux-user/mmap.c')
0 files changed, 0 insertions, 0 deletions