Commit 0229f5a3 authored by Richard Henderson's avatar Richard Henderson
Browse files

alpha-linux-user: Properly handle the non-rt sigprocmask syscall.



Name the syscall properly for QEMU, kernel source notwithstanding.
Fix syntax errors in the code thus enabled within do_syscall.

Reviewed-by: default avatarPeter Maydell <peter.maydell@linaro.org>
Signed-off-by: default avatarRichard Henderson <rth@twiddle.net>
parent 0e141977
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -46,7 +46,7 @@
#define TARGET_NR_open		 45
#define TARGET_NR_osf_old_sigaction	 46	/* not implemented */
#define TARGET_NR_getxgid		 47
#define TARGET_NR_osf_sigprocmask	 48
#define TARGET_NR_sigprocmask    48
#define TARGET_NR_osf_getlogin	 49	/* not implemented */
#define TARGET_NR_osf_setlogin	 50	/* not implemented */
#define TARGET_NR_acct		 51
+1 −2
Original line number Diff line number Diff line
@@ -5881,11 +5881,10 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
            target_to_host_old_sigset(&set, &mask);

            ret = get_errno(sigprocmask(how, &set, &oldset));

            if (!is_error(ret)) {
                host_to_target_old_sigset(&mask, &oldset);
                ret = mask;
                ((CPUAlphaState *)cpu_env)->[IR_V0] = 0; /* force no error */
                ((CPUAlphaState *)cpu_env)->ir[IR_V0] = 0; /* force no error */
            }
#else
            sigset_t set, oldset, *set_ptr;