]> rtime.felk.cvut.cz Git - lisovros/qemu_apohw.git/commitdiff
alpha-linux-user: Fix umount syscall numbers
authorRichard Henderson <rth@twiddle.net>
Wed, 24 Jul 2013 19:50:00 +0000 (09:50 -1000)
committerRiku Voipio <riku.voipio@linaro.org>
Tue, 24 Sep 2013 07:47:06 +0000 (10:47 +0300)
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>
linux-user/alpha/syscall_nr.h
linux-user/strace.list
linux-user/syscall.c

index ac2b6e2c6539973e1fa329de9c8c16b30ef4282a..d52d76e08eb7273f806512938f1bbfdf8c3c5882 100644 (file)
@@ -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 */
 #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
index 08f115d843608a167cf8048845d101fa3673c806..4f9c3646646e0f93cbd4f0d6c834a00ab5c75bd0 100644 (file)
 #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
index c62d8754f0ad7657d4d33f10c28ff9fdb6ee25a6..5c33e441cb7ed589aec0065636655252f3a405dc 100644 (file)
@@ -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;