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: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <rth@twiddle.net>
This commit is contained in:
Richard Henderson 2012-06-07 15:02:49 -07:00
parent 0e141977e6
commit 0229f5a30e
2 changed files with 2 additions and 3 deletions

View File

@ -46,7 +46,7 @@
#define TARGET_NR_open 45 #define TARGET_NR_open 45
#define TARGET_NR_osf_old_sigaction 46 /* not implemented */ #define TARGET_NR_osf_old_sigaction 46 /* not implemented */
#define TARGET_NR_getxgid 47 #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_getlogin 49 /* not implemented */
#define TARGET_NR_osf_setlogin 50 /* not implemented */ #define TARGET_NR_osf_setlogin 50 /* not implemented */
#define TARGET_NR_acct 51 #define TARGET_NR_acct 51

View File

@ -5881,11 +5881,10 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
target_to_host_old_sigset(&set, &mask); target_to_host_old_sigset(&set, &mask);
ret = get_errno(sigprocmask(how, &set, &oldset)); ret = get_errno(sigprocmask(how, &set, &oldset));
if (!is_error(ret)) { if (!is_error(ret)) {
host_to_target_old_sigset(&mask, &oldset); host_to_target_old_sigset(&mask, &oldset);
ret = mask; ret = mask;
((CPUAlphaState *)cpu_env)->[IR_V0] = 0; /* force no error */ ((CPUAlphaState *)cpu_env)->ir[IR_V0] = 0; /* force no error */
} }
#else #else
sigset_t set, oldset, *set_ptr; sigset_t set, oldset, *set_ptr;