Skip to content

Commit

Permalink
alpha-linux-user: Fix umount syscall numbers
Browse files Browse the repository at this point in the history
It has been pointed out on LKML that the alpha umount syscall numbers
are named wrong, and a patch to rectify that has been posted for 3.11.

Glibc works around this by treating NR_umount as NR_umount2 if
NR_oldumount exists.  That's more complicated than we need in QEMU,
given that we control linux-user/*/syscall_nr.h.

This is the last instance of TARGET_NR_oldumount, so delete that from
the strace.list.

Signed-off-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
  • Loading branch information
rth7680 authored and Riku Voipio committed Sep 24, 2013
1 parent f828a4c commit 8070e7b
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 6 deletions.
4 changes: 2 additions & 2 deletions linux-user/alpha/syscall_nr.h
Expand Up @@ -20,7 +20,7 @@
#define TARGET_NR_lseek 19
#define TARGET_NR_getxpid 20
#define TARGET_NR_osf_mount 21
#define TARGET_NR_umount 22
#define TARGET_NR_umount2 22
#define TARGET_NR_setuid 23
#define TARGET_NR_getxuid 24
#define TARGET_NR_exec_with_loader 25 /* not implemented */
Expand Down Expand Up @@ -255,7 +255,7 @@
#define TARGET_NR_sysinfo 318
#define TARGET_NR__sysctl 319
/* 320 was sys_idle. */
#define TARGET_NR_oldumount 321
#define TARGET_NR_umount 321
#define TARGET_NR_swapon 322
#define TARGET_NR_times 323
#define TARGET_NR_personality 324
Expand Down
3 changes: 0 additions & 3 deletions linux-user/strace.list
Expand Up @@ -612,9 +612,6 @@
#ifdef TARGET_NR_oldstat
{ TARGET_NR_oldstat, "oldstat" , NULL, NULL, NULL },
#endif
#ifdef TARGET_NR_oldumount
{ TARGET_NR_oldumount, "oldumount" , NULL, NULL, NULL },
#endif
#ifdef TARGET_NR_olduname
{ TARGET_NR_olduname, "olduname" , NULL, NULL, NULL },
#endif
Expand Down
2 changes: 1 addition & 1 deletion linux-user/syscall.c
Expand Up @@ -5697,7 +5697,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
unlock_user(p, arg1, 0);
}
break;
#ifdef TARGET_NR_umount2 /* not on alpha */
#ifdef TARGET_NR_umount2
case TARGET_NR_umount2:
if (!(p = lock_user_string(arg1)))
goto efault;
Expand Down

0 comments on commit 8070e7b

Please sign in to comment.