[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 11/13] sparc64_set_context: remove __get_user checks
From: |
riku . voipio |
Subject: |
[Qemu-devel] [PATCH 11/13] sparc64_set_context: remove __get_user checks |
Date: |
Wed, 23 Apr 2014 16:12:02 +0300 |
From: Riku Voipio <address@hidden>
Remove checks of __get_user and the err variable
used to control flow with it.
Signed-off-by: Riku Voipio <address@hidden>
---
linux-user/signal.c | 12 +++---------
1 file changed, 3 insertions(+), 9 deletions(-)
diff --git a/linux-user/signal.c b/linux-user/signal.c
index efb3562..487fa2f 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -2547,7 +2547,6 @@ void sparc64_set_context(CPUSPARCState *env)
target_mc_gregset_t *grp;
abi_ulong pc, npc, tstate;
abi_ulong fp, i7, w_addr;
- int err = 0;
unsigned int i;
ucp_addr = env->regwptr[UREG_I0];
@@ -2556,15 +2555,14 @@ void sparc64_set_context(CPUSPARCState *env)
grp = &ucp->tuc_mcontext.mc_gregs;
__get_user(pc, &((*grp)[MC_PC]));
__get_user(npc, &((*grp)[MC_NPC]));
- if (err || ((pc | npc) & 3))
+ if ((pc | npc) & 3)
goto do_sigsegv;
if (env->regwptr[UREG_I1]) {
target_sigset_t target_set;
sigset_t set;
if (TARGET_NSIG_WORDS == 1) {
- if (__get_user(target_set.sig[0], &ucp->tuc_sigmask.sig[0]))
- goto do_sigsegv;
+ __get_user(target_set.sig[0], &ucp->tuc_sigmask.sig[0]);
} else {
abi_ulong *src, *dst;
src = ucp->tuc_sigmask.sig;
@@ -2572,8 +2570,6 @@ void sparc64_set_context(CPUSPARCState *env)
for (i = 0; i < TARGET_NSIG_WORDS; i++, dst++, src++) {
__get_user(*dst, src);
}
- if (err)
- goto do_sigsegv;
}
target_to_host_sigset_internal(&set, &target_set);
do_sigprocmask(SIG_SETMASK, &set, NULL);
@@ -2616,7 +2612,7 @@ void sparc64_set_context(CPUSPARCState *env)
* is only restored if fenab is non-zero in:
* __get_user(fenab, &(ucp->tuc_mcontext.mc_fpregs.mcfpu_enab));
*/
- err |= __get_user(env->fprs, &(ucp->tuc_mcontext.mc_fpregs.mcfpu_fprs));
+ __get_user(env->fprs, &(ucp->tuc_mcontext.mc_fpregs.mcfpu_fprs));
{
uint32_t *src = ucp->tuc_mcontext.mc_fpregs.mcfpu_fregs.sregs;
for (i = 0; i < 64; i++, src++) {
@@ -2631,8 +2627,6 @@ void sparc64_set_context(CPUSPARCState *env)
&(ucp->tuc_mcontext.mc_fpregs.mcfpu_fsr));
__get_user(env->gsr,
&(ucp->tuc_mcontext.mc_fpregs.mcfpu_gsr));
- if (err)
- goto do_sigsegv;
unlock_user_struct(ucp, ucp_addr, 0);
return;
do_sigsegv:
--
1.9.2
- [Qemu-devel] [PATCH 00/13] __{get,put}_user return value cleanup, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 02/13] signal.c setup_frame/x86: __put_user cleanup, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 03/13] signal.c: remove return value from copy_siginfo_to_user, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 12/13] remove __get_user return check from PPC do_setcontext, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 08/13] do_sigreturn - remove __get_user checks, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 09/13] signal.c: setup_frame remove __put_user checks, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 06/13] RFC comment out restore_fpu_state (sparc), riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 07/13] do_sigaltstack: remove __get_user value check, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 01/13] signal.c: remove __get/__put_user return value reading, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 13/13] fix gcc-4.9 compiler error on __{get, put]}_user, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 11/13] sparc64_set_context: remove __get_user checks,
riku . voipio <=
- [Qemu-devel] [PATCH 04/13] signal.c: remove return value from setup_sigcontext, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 05/13] signal.c: remove return value from restore_sigcontext, riku . voipio, 2014/04/23
- [Qemu-devel] [PATCH 10/13] remove __put/get error checks from ppc {save, restore}_user_regs, riku . voipio, 2014/04/23
- Re: [Qemu-devel] [PATCH 00/13] __{get, put}_user return value cleanup, Peter Maydell, 2014/04/23