Skip to contentSkip to conversation

ARM syscall numbers

PATCH In review Kirill A. Shutemov 1 participant 3 messages Mar 22, 2007 – Mar 29, 2007

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ARM syscall numbers

Patch to sync arm syscall numbers with 2.6.21-rc4 in the attachment.

Signature · 4 lines
Regards,  Kirill A. Shutemov
 + Belarus, Minsk
 + Velesys LLC, http://www.velesys.com/
 + ALT Linux Team, http://www.altlinux.com/
qemu/linux-user/arm/syscall_nr.h +114 -89
index c48be98..d0d1e79 100644
@@ -9,7 +9,7 @@
 #define TARGET_NR_write			(  4)
 #define TARGET_NR_open			(  5)
 #define TARGET_NR_close			(  6)
-#define TARGET_NR_waitpid			(  7)	/* removed */
+					/* 7 was sys_waitpid */
 #define TARGET_NR_creat			(  8)
 #define TARGET_NR_link			(  9)
 #define TARGET_NR_unlink			( 10)
@@ -19,7 +19,7 @@
 #define TARGET_NR_mknod			( 14)
 #define TARGET_NR_chmod			( 15)
 #define TARGET_NR_lchown			( 16)
-#define TARGET_NR_break			( 17)	/* removed */
+					/* 17 was sys_break */
 					/* 18 was sys_stat */
 #define TARGET_NR_lseek			( 19)
 #define TARGET_NR_getpid			( 20)
@@ -30,14 +30,14 @@
 #define TARGET_NR_stime			( 25)
 #define TARGET_NR_ptrace			( 26)
 #define TARGET_NR_alarm			( 27)
-
+					/* 28 was sys_fstat */
 #define TARGET_NR_pause			( 29)
 #define TARGET_NR_utime			( 30)
-#define TARGET_NR_stty			( 31)	/* removed */
-#define TARGET_NR_gtty			( 32)	/* removed */
+                    /* 31 was sys_stty */
+                    /* 32 was sys_gtty */
 #define TARGET_NR_access			( 33)
 #define TARGET_NR_nice			( 34)
-#define TARGET_NR_ftime			( 35)	/* removed */
+					/* 35 was sys_ftime */
 #define TARGET_NR_sync			( 36)
 #define TARGET_NR_kill			( 37)
 #define TARGET_NR_rename			( 38)
@@ -46,21 +46,21 @@
 #define TARGET_NR_dup			( 41)
 #define TARGET_NR_pipe			( 42)
 #define TARGET_NR_times			( 43)
-#define TARGET_NR_prof			( 44)	/* removed */
+                    /* 44 was sys_prof */
 #define TARGET_NR_brk			( 45)
 #define TARGET_NR_setgid			( 46)
 #define TARGET_NR_getgid			( 47)
-#define TARGET_NR_signal			( 48)	/* removed */
+                    /* 48 was sys_signal */
 #define TARGET_NR_geteuid			( 49)
 #define TARGET_NR_getegid			( 50)
 #define TARGET_NR_acct			( 51)
 #define TARGET_NR_umount2			( 52)
-#define TARGET_NR_lock			( 53)	/* removed */
+                    /* 53 was sys_lock */
 #define TARGET_NR_ioctl			( 54)
 #define TARGET_NR_fcntl			( 55)
-#define TARGET_NR_mpx			( 56)	/* removed */
+                    /* 56 was sys_mpx */
 #define TARGET_NR_setpgid			( 57)
-#define TARGET_NR_ulimit			( 58)	/* removed */
+                    /* 58 was sys_ulimit */
 					/* 59 was sys_olduname */
 #define TARGET_NR_umask			( 60)
 #define TARGET_NR_chroot			( 61)
@@ -70,8 +70,8 @@
 #define TARGET_NR_getpgrp			( 65)
 #define TARGET_NR_setsid			( 66)
 #define TARGET_NR_sigaction			( 67)
-#define TARGET_NR_sgetmask			( 68)	/* removed */
-#define TARGET_NR_ssetmask			( 69)	/* removed */
+					/* 68 was sys_sgetmask */
+					/* 69 was sys_ssetmask */
 #define TARGET_NR_setreuid			( 70)
 #define TARGET_NR_setregid			( 71)
 #define TARGET_NR_sigsuspend			( 72)
@@ -100,10 +100,10 @@
 #define TARGET_NR_fchown			( 95)
 #define TARGET_NR_getpriority		( 96)
 #define TARGET_NR_setpriority		( 97)
-#define TARGET_NR_profil			( 98)	/* removed */
+					/* 98 was sys_profil */
 #define TARGET_NR_statfs			( 99)
 #define TARGET_NR_fstatfs			(100)
-#define TARGET_NR_ioperm			(101)
+					/* 101 was sys_ioperm */
 #define TARGET_NR_socketcall			(102)
 #define TARGET_NR_syslog			(103)
 #define TARGET_NR_setitimer			(104)
@@ -114,7 +114,7 @@
 					/* 109 was sys_uname */
 					/* 110 was sys_iopl */
 #define TARGET_NR_vhangup			(111)
-#define TARGET_NR_idle			(112)
+					/* 112 was sys_idle */
 #define TARGET_NR_syscall			(113) /* syscall to call a syscall! */
 #define TARGET_NR_wait4			(114)
 #define TARGET_NR_swapoff			(115)
@@ -125,21 +125,21 @@
 #define TARGET_NR_clone			(120)
 #define TARGET_NR_setdomainname		(121)
 #define TARGET_NR_uname			(122)
-#define TARGET_NR_modify_ldt			(123)
+					/* 123 was sys_modify_ldt */
 #define TARGET_NR_adjtimex			(124)
 #define TARGET_NR_mprotect			(125)
 #define TARGET_NR_sigprocmask		(126)
-#define TARGET_NR_create_module		(127)	/* removed */
+					/* 127 was sys_create_module */
 #define TARGET_NR_init_module		(128)
 #define TARGET_NR_delete_module		(129)
-#define TARGET_NR_get_kernel_syms		(130)	/* removed */
+					/* 130 was sys_get_kernel_syms */
 #define TARGET_NR_quotactl			(131)
 #define TARGET_NR_getpgid			(132)
 #define TARGET_NR_fchdir			(133)
 #define TARGET_NR_bdflush			(134)
 #define TARGET_NR_sysfs			(135)
 #define TARGET_NR_personality		(136)
-#define TARGET_NR_afs_syscall		(137) /* Syscall for Andrew File System */
+					/* 137 was sys_afs_syscall */
 #define TARGET_NR_setfsuid			(138)
 #define TARGET_NR_setfsgid			(139)
 #define TARGET_NR__llseek			(140)
@@ -168,8 +168,8 @@
 #define TARGET_NR_mremap			(163)
 #define TARGET_NR_setresuid			(164)
 #define TARGET_NR_getresuid			(165)
-#define TARGET_NR_vm86			(166)	/* removed */
-#define TARGET_NR_query_module		(167)	/* removed */
+					/* 166 was sys_vm86 */
+					/* 167 was sys_query_module */
 #define TARGET_NR_poll			(168)
 #define TARGET_NR_nfsservctl			(169)
 #define TARGET_NR_setresgid			(170)
@@ -258,70 +258,95 @@
 #define TARGET_NR_remap_file_pages		(253)
 					/* 254 for set_thread_area */
 					/* 255 for get_thread_area */
-					/* 256 for set_tid_address */
-#define TARGET_NR_set_tid_address		256
-#define TARGET_NR_timer_create		257
-#define TARGET_NR_timer_settime		258
-#define TARGET_NR_timer_gettime		259
-#define TARGET_NR_timer_getoverrun		260
-#define TARGET_NR_timer_delete		261
-#define TARGET_NR_clock_settime		262
-#define TARGET_NR_clock_gettime		263
-#define TARGET_NR_clock_getres		264
-#define TARGET_NR_clock_nanosleep		265
-#define TARGET_NR_statfs64			266
-#define TARGET_NR_fstatfs64			267
-#define TARGET_NR_tgkill			268
-#define TARGET_NR_utimes			269
-#define TARGET_NR_arm_fadvise64_64		270
-#define TARGET_NR_pciconfig_iobase		271
-#define TARGET_NR_pciconfig_read		272
-#define TARGET_NR_pciconfig_write		273
-#define TARGET_NR_mq_open			274
-#define TARGET_NR_mq_unlink			275
-#define TARGET_NR_mq_timedsend		276
-#define TARGET_NR_mq_timedreceive		277
-#define TARGET_NR_mq_notify			278
-#define TARGET_NR_mq_getsetattr		279
-#define TARGET_NR_waitid			280
-#define TARGET_NR_socket			281
-#define TARGET_NR_bind			282
-#define TARGET_NR_connect			283
-#define TARGET_NR_listen			284
-#define TARGET_NR_accept			285
-#define TARGET_NR_getsockname		286
-#define TARGET_NR_getpeername		287
-#define TARGET_NR_socketpair			288
-#define TARGET_NR_send			289
-#define TARGET_NR_sendto			290
-#define TARGET_NR_recv			291
-#define TARGET_NR_recvfrom			292
-#define TARGET_NR_shutdown			293
-#define TARGET_NR_setsockopt			294
-#define TARGET_NR_getsockopt			295
-#define TARGET_NR_sendmsg			296
-#define TARGET_NR_recvmsg			297
-#define TARGET_NR_semop			298
-#define TARGET_NR_semget			299
-#define TARGET_NR_semctl			300
-#define TARGET_NR_msgsnd			301
-#define TARGET_NR_msgrcv			302
-#define TARGET_NR_msgget			303
-#define TARGET_NR_msgctl			304
-#define TARGET_NR_shmat			305
-#define TARGET_NR_shmdt			306
-#define TARGET_NR_shmget			307
-#define TARGET_NR_shmctl			308
-#define TARGET_NR_add_key			309
-#define TARGET_NR_request_key		310
-#define TARGET_NR_keyctl			311
-#define TARGET_NR_semtimedop			312
-#define TARGET_NR_vserver			313
-#define TARGET_NR_ioprio_set			314
-#define TARGET_NR_ioprio_get			315
-#define TARGET_NR_inotify_init		316
-#define TARGET_NR_inotify_add_watch		317
-#define TARGET_NR_inotify_rm_watch		318
-#define TARGET_NR_mbind			319
-#define TARGET_NR_get_mempolicy		320
-#define TARGET_NR_set_mempolicy		321
+#define TARGET_NR_set_tid_address		(256)
+#define TARGET_NR_timer_create		(257)
+#define TARGET_NR_timer_settime		(258)
+#define TARGET_NR_timer_gettime		(259)
+#define TARGET_NR_timer_getoverrun		(260)
+#define TARGET_NR_timer_delete		(261)
+#define TARGET_NR_clock_settime		(262)
+#define TARGET_NR_clock_gettime		(263)
+#define TARGET_NR_clock_getres		(264)
+#define TARGET_NR_clock_nanosleep		(265)
+#define TARGET_NR_statfs64			(266)
+#define TARGET_NR_fstatfs64			(267)
+#define TARGET_NR_tgkill			(268)
+#define TARGET_NR_utimes			(269)
+#define TARGET_NR_arm_fadvise64_64		(270)
+#define TARGET_NR_pciconfig_iobase		(271)
+#define TARGET_NR_pciconfig_read		(272)
+#define TARGET_NR_pciconfig_write		(273)
+#define TARGET_NR_mq_open			(274)
+#define TARGET_NR_mq_unlink			(275)
+#define TARGET_NR_mq_timedsend		(276)
+#define TARGET_NR_mq_timedreceive		(277)
+#define TARGET_NR_mq_notify			(278)
+#define TARGET_NR_mq_getsetattr		(279)
+#define TARGET_NR_waitid			(280)
+#define TARGET_NR_socket			(281)
+#define TARGET_NR_bind			(282)
+#define TARGET_NR_connect			(283)
+#define TARGET_NR_listen			(284)
+#define TARGET_NR_accept			(285)
+#define TARGET_NR_getsockname		(286)
+#define TARGET_NR_getpeername		(287)
+#define TARGET_NR_socketpair			(288)
+#define TARGET_NR_send			(289)
+#define TARGET_NR_sendto			(290)
+#define TARGET_NR_recv			(291)
+#define TARGET_NR_recvfrom			(292)
+#define TARGET_NR_shutdown			(293)
+#define TARGET_NR_setsockopt			(294)
+#define TARGET_NR_getsockopt			(295)
+#define TARGET_NR_sendmsg			(296)
+#define TARGET_NR_recvmsg			(297)
+#define TARGET_NR_semop			(298)
+#define TARGET_NR_semget			(299)
+#define TARGET_NR_semctl			(300)
+#define TARGET_NR_msgsnd			(301)
+#define TARGET_NR_msgrcv			(302)
+#define TARGET_NR_msgget			(303)
+#define TARGET_NR_msgctl			(304)
+#define TARGET_NR_shmat			(305)
+#define TARGET_NR_shmdt			(306)
+#define TARGET_NR_shmget			(307)
+#define TARGET_NR_shmctl			(308)
+#define TARGET_NR_add_key			(309)
+#define TARGET_NR_request_key		(310)
+#define TARGET_NR_keyctl			(311)
+#define TARGET_NR_semtimedop			(312)
+#define TARGET_NR_vserver			(313)
+#define TARGET_NR_ioprio_set			(314)
+#define TARGET_NR_ioprio_get			(315)
+#define TARGET_NR_inotify_init		(316)
+#define TARGET_NR_inotify_add_watch		(317)
+#define TARGET_NR_inotify_rm_watch		(318)
+#define TARGET_NR_mbind			(319)
+#define TARGET_NR_get_mempolicy		(320)
+#define TARGET_NR_set_mempolicy		(321)
+#define TARGET_NR_openat			(322)
+#define TARGET_NR_mkdirat			(323)
+#define TARGET_NR_mknodat			(324)
+#define TARGET_NR_fchownat			(325)
+#define TARGET_NR_futimesat			(326)
+#define TARGET_NR_fstatat64			(327)
+#define TARGET_NR_unlinkat			(328)
+#define TARGET_NR_renameat			(329)
+#define TARGET_NR_linkat			(330)
+#define TARGET_NR_symlinkat			(331)
+#define TARGET_NR_readlinkat			(332)
+#define TARGET_NR_fchmodat			(333)
+#define TARGET_NR_faccessat			(334)
+					/* 335 for pselect6 */
+					/* 336 for ppoll */
+#define TARGET_NR_unshare			(337)
+#define TARGET_NR_set_robust_list		(338)
+#define TARGET_NR_get_robust_list		(339)
+#define TARGET_NR_splice			(340)
+#define TARGET_NR_arm_sync_file_range	(341)
+#define TARGET_NR_tee			(342)
+#define TARGET_NR_vmsplice			(343)
+#define TARGET_NR_move_pages			(344)
+#define TARGET_NR_getcpu			(345)
+					/* 346 for epoll_pwait */
+#define TARGET_NR_sys_kexec_load		(347)
#1 lore raw

Series of patches to sync syscall_nr.h with linux kernel 2.6.21-rc4 in the attachment.

syscall_cleanup.patch:
- fixed building with new syscall_nr.h
- dropped
case TARGET_NR_XXX:

        goto unimplemented;

- droppend unneeded #ifdef

Please, review it.

Signature · 4 lines
Regards,  Kirill A. Shutemov
 + Belarus, Minsk
 + Velesys LLC, http://www.velesys.com/
 + ALT Linux Team, http://www.altlinux.com/
qemu/linux-user/syscall.c +8 -155
index 5ff364d..64cff88 100644
@@ -2043,6 +2043,7 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     case TARGET_NR_fork:
         ret = get_errno(do_fork(cpu_env, SIGCHLD, 0));
         break;
+#ifdef TARGET_NR_waitpid
     case TARGET_NR_waitpid:
         {
             int status;
@@ -2051,6 +2052,7 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
                 tput32(arg2, status);
         }
         break;
+#endif
     case TARGET_NR_creat:
         p = lock_user_string(arg1);
         ret = get_errno(creat(p, arg2));
@@ -2152,14 +2154,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         ret = get_errno(chmod(p, arg2));
         unlock_user(p, arg1, 0);
         break;
-#ifdef TARGET_NR_break
-    case TARGET_NR_break:
-        goto unimplemented;
-#endif
-#ifdef TARGET_NR_oldstat
-    case TARGET_NR_oldstat:
-        goto unimplemented;
-#endif
     case TARGET_NR_lseek:
         ret = get_errno(lseek(arg1, arg2, arg3));
         break;
@@ -2191,15 +2185,9 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             ret = get_errno(stime(&host_time));
         }
         break;
-    case TARGET_NR_ptrace:
-        goto unimplemented;
     case TARGET_NR_alarm:
         ret = alarm(arg1);
         break;
-#ifdef TARGET_NR_oldfstat
-    case TARGET_NR_oldfstat:
-        goto unimplemented;
-#endif
     case TARGET_NR_pause:
         ret = get_errno(pause());
         break;
@@ -2237,14 +2225,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             unlock_user(p, arg1, 0);
         }
         break;
-#ifdef TARGET_NR_stty
-    case TARGET_NR_stty:
-        goto unimplemented;
-#endif
-#ifdef TARGET_NR_gtty
-    case TARGET_NR_gtty:
-        goto unimplemented;
-#endif
     case TARGET_NR_access:
         p = lock_user_string(arg1);
         ret = get_errno(access(p, arg2));
@@ -2253,10 +2233,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     case TARGET_NR_nice:
         ret = get_errno(nice(arg1));
         break;
-#ifdef TARGET_NR_ftime
-    case TARGET_NR_ftime:
-        goto unimplemented;
-#endif
     case TARGET_NR_sync:
         sync();
         ret = 0;
@@ -2313,13 +2289,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
                 ret = host_to_target_clock_t(ret);
         }
         break;
-#ifdef TARGET_NR_prof
-    case TARGET_NR_prof:
-        goto unimplemented;
-#endif
-    case TARGET_NR_signal:
-        goto unimplemented;
-
     case TARGET_NR_acct:
         p = lock_user_string(arg1);
         ret = get_errno(acct(path(p)));
@@ -2330,31 +2299,15 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         ret = get_errno(umount2(p, arg2));
         unlock_user(p, arg1, 0);
         break;
-#ifdef TARGET_NR_lock
-    case TARGET_NR_lock:
-        goto unimplemented;
-#endif
     case TARGET_NR_ioctl:
         ret = do_ioctl(arg1, arg2, arg3);
         break;
     case TARGET_NR_fcntl:
         ret = get_errno(do_fcntl(arg1, arg2, arg3));
         break;
-#ifdef TARGET_NR_mpx
-    case TARGET_NR_mpx:
-        goto unimplemented;
-#endif
     case TARGET_NR_setpgid:
         ret = get_errno(setpgid(arg1, arg2));
         break;
-#ifdef TARGET_NR_ulimit
-    case TARGET_NR_ulimit:
-        goto unimplemented;
-#endif
-#ifdef TARGET_NR_oldolduname
-    case TARGET_NR_oldolduname:
-        goto unimplemented;
-#endif
     case TARGET_NR_umask:
         ret = get_errno(umask(arg1));
         break;
@@ -2363,8 +2316,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         ret = get_errno(chroot(p));
         unlock_user(p, arg1, 0);
         break;
-    case TARGET_NR_ustat:
-        goto unimplemented;
     case TARGET_NR_dup2:
         ret = get_errno(dup2(arg1, arg2));
         break;
@@ -2451,6 +2402,7 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
                 unlock_user_struct(oact, arg3, 1);
         }
         break;
+#ifdef TARGET_NR_sgetmask
     case TARGET_NR_sgetmask:
         {
             sigset_t cur_set;
@@ -2460,6 +2412,8 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             ret = target_set;
         }
         break;
+#endif
+#ifdef TARGET_NR_ssetmask
     case TARGET_NR_ssetmask:
         {
             sigset_t set, oset, cur_set;
@@ -2472,6 +2426,7 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             ret = target_set;
         }
         break;
+#endif
     case TARGET_NR_sigprocmask:
         {
             int how = arg1;
@@ -2711,10 +2666,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             unlock_user(p, arg1, 0);
         }
         break;
-#ifdef TARGET_NR_oldlstat
-    case TARGET_NR_oldlstat:
-        goto unimplemented;
-#endif
     case TARGET_NR_readlink:
         {
             void *p2;
@@ -2725,17 +2676,11 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             unlock_user(p, arg1, 0);
         }
         break;
-    case TARGET_NR_uselib:
-        goto unimplemented;
     case TARGET_NR_swapon:
         p = lock_user_string(arg1);
         ret = get_errno(swapon(p, arg2));
         unlock_user(p, arg1, 0);
         break;
-    case TARGET_NR_reboot:
-        goto unimplemented;
-    case TARGET_NR_readdir:
-        goto unimplemented;
     case TARGET_NR_mmap:
 #if defined(TARGET_I386) || defined(TARGET_ARM) || defined(TARGET_M68K)
         {
@@ -2815,10 +2760,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     case TARGET_NR_setpriority:
         ret = get_errno(setpriority(arg1, arg2, arg3));
         break;
-#ifdef TARGET_NR_profil
-    case TARGET_NR_profil:
-        goto unimplemented;
-#endif
     case TARGET_NR_statfs:
         p = lock_user_string(arg1);
         ret = get_errno(statfs(path(p), &stfs));
@@ -2844,7 +2785,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     case TARGET_NR_fstatfs:
         ret = get_errno(fstatfs(arg1, &stfs));
         goto convert_statfs;
-#ifdef TARGET_NR_statfs64
     case TARGET_NR_statfs64:
         p = lock_user_string(arg1);
         ret = get_errno(statfs(path(p), &stfs));
@@ -2870,11 +2810,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     case TARGET_NR_fstatfs64:
         ret = get_errno(fstatfs(arg1, &stfs));
         goto convert_statfs64;
-#endif
-#ifdef TARGET_NR_ioperm
-    case TARGET_NR_ioperm:
-        goto unimplemented;
-#endif
     case TARGET_NR_socketcall:
         ret = do_socketcall(arg1, arg2);
         break;
@@ -3047,21 +2982,9 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             }
         }
         break;
-#ifdef TARGET_NR_olduname
-    case TARGET_NR_olduname:
-        goto unimplemented;
-#endif
-#ifdef TARGET_NR_iopl
-    case TARGET_NR_iopl:
-        goto unimplemented;
-#endif
     case TARGET_NR_vhangup:
         ret = get_errno(vhangup());
         break;
-#ifdef TARGET_NR_idle
-    case TARGET_NR_idle:
-        goto unimplemented;
-#endif
 #ifdef TARGET_NR_syscall
     case TARGET_NR_syscall:
     	ret = do_syscall(cpu_env,arg1 & 0xffff,arg2,arg3,arg4,arg5,arg6,0);
@@ -3162,36 +3085,19 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     case TARGET_NR_modify_ldt:
         ret = get_errno(do_modify_ldt(cpu_env, arg1, arg2, arg3));
         break;
-    case TARGET_NR_vm86old:
-        goto unimplemented;
     case TARGET_NR_vm86:
         ret = do_vm86(cpu_env, arg1, arg2);
         break;
 #endif
-    case TARGET_NR_adjtimex:
-        goto unimplemented;
-    case TARGET_NR_create_module:
-    case TARGET_NR_init_module:
-    case TARGET_NR_delete_module:
-    case TARGET_NR_get_kernel_syms:
-        goto unimplemented;
-    case TARGET_NR_quotactl:
-        goto unimplemented;
     case TARGET_NR_getpgid:
         ret = get_errno(getpgid(arg1));
         break;
     case TARGET_NR_fchdir:
         ret = get_errno(fchdir(arg1));
         break;
-    case TARGET_NR_bdflush:
-        goto unimplemented;
-    case TARGET_NR_sysfs:
-        goto unimplemented;
     case TARGET_NR_personality:
         ret = get_errno(personality(arg1));
         break;
-    case TARGET_NR_afs_syscall:
-        goto unimplemented;
     case TARGET_NR__llseek:
         {
 #if defined (__x86_64__)
@@ -3278,7 +3184,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         }
 #endif
         break;
-#ifdef TARGET_NR_getdents64
     case TARGET_NR_getdents64:
         {
             struct dirent64 *dirp;
@@ -3304,7 +3209,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             unlock_user(dirp, arg2, ret);
         }
         break;
-#endif /* TARGET_NR_getdents64 */
     case TARGET_NR__newselect:
         ret = do_select(arg1, arg2, arg3, arg4, arg5);
         break;
@@ -3434,10 +3338,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             }
         }
         break;
-    case TARGET_NR_query_module:
-        goto unimplemented;
-    case TARGET_NR_nfsservctl:
-        goto unimplemented;
     case TARGET_NR_prctl:
         switch (arg1)
             {
@@ -3454,40 +3354,22 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
                 break;
             }
         break;
-#ifdef TARGET_NR_pread
-    case TARGET_NR_pread:
+    case TARGET_NR_pread64:
         page_unprotect_range(arg2, arg3);
         p = lock_user(arg2, arg3, 0);
         ret = get_errno(pread(arg1, p, arg3, arg4));
         unlock_user(p, arg2, ret);
         break;
-    case TARGET_NR_pwrite:
+    case TARGET_NR_pwrite64:
         p = lock_user(arg2, arg3, 1);
         ret = get_errno(pwrite(arg1, p, arg3, arg4));
         unlock_user(p, arg2, 0);
         break;
-#endif
     case TARGET_NR_getcwd:
         p = lock_user(arg1, arg2, 0);
         ret = get_errno(sys_getcwd1(p, arg2));
         unlock_user(p, arg1, ret);
         break;
-    case TARGET_NR_capget:
-        goto unimplemented;
-    case TARGET_NR_capset:
-        goto unimplemented;
-    case TARGET_NR_sigaltstack:
-        goto unimplemented;
-    case TARGET_NR_sendfile:
-        goto unimplemented;
-#ifdef TARGET_NR_getpmsg
-    case TARGET_NR_getpmsg:
-        goto unimplemented;
-#endif
-#ifdef TARGET_NR_putpmsg
-    case TARGET_NR_putpmsg:
-        goto unimplemented;
-#endif
 #ifdef TARGET_NR_vfork
     case TARGET_NR_vfork:
         ret = get_errno(do_fork(cpu_env, CLONE_VFORK | CLONE_VM | SIGCHLD, 0));
@@ -3520,21 +3402,16 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
 	ret = target_ftruncate64(cpu_env, arg1, arg2, arg3, arg4);
 	break;
 #endif
-#ifdef TARGET_NR_stat64
     case TARGET_NR_stat64:
         p = lock_user_string(arg1);
         ret = get_errno(stat(path(p), &st));
         unlock_user(p, arg1, 0);
         goto do_stat64;
-#endif
-#ifdef TARGET_NR_lstat64
     case TARGET_NR_lstat64:
         p = lock_user_string(arg1);
         ret = get_errno(lstat(path(p), &st));
         unlock_user(p, arg1, 0);
         goto do_stat64;
-#endif
-#ifdef TARGET_NR_fstat64
     case TARGET_NR_fstat64:
         {
             ret = get_errno(fstat(arg1, &st));
@@ -3593,7 +3470,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
             }
         }
         break;
-#endif
 #ifdef USE_UID16
     case TARGET_NR_lchown:
         p = lock_user_string(arg1);
@@ -3853,14 +3729,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         ret = get_errno(setfsgid(arg1));
         break;
 #endif
-
-    case TARGET_NR_pivot_root:
-        goto unimplemented;
-#ifdef TARGET_NR_mincore
-    case TARGET_NR_mincore:
-        goto unimplemented;
-#endif
-#ifdef TARGET_NR_madvise
     case TARGET_NR_madvise:
         /* A straight passthrough may not be safe because qemu sometimes
            turns private flie-backed mappings into anonymous mappings.
@@ -3868,7 +3736,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
            This is a hint, so ignoring and returning success is ok.  */
         ret = get_errno(0);
         break;
-#endif
 #if TARGET_LONG_BITS == 32
     case TARGET_NR_fcntl64:
     {
@@ -3954,10 +3821,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         ret = 0;
         break;
 #endif
-#ifdef TARGET_NR_security
-    case TARGET_NR_security:
-        goto unimplemented;
-#endif
 #ifdef TARGET_NR_getpagesize
     case TARGET_NR_getpagesize:
         ret = TARGET_PAGE_SIZE;
@@ -3966,9 +3829,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     case TARGET_NR_gettid:
         ret = get_errno(gettid());
         break;
-    case TARGET_NR_readahead:
-        goto unimplemented;
-#ifdef TARGET_NR_setxattr
     case TARGET_NR_setxattr:
     case TARGET_NR_lsetxattr:
     case TARGET_NR_fsetxattr:
@@ -3982,7 +3842,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     case TARGET_NR_lremovexattr:
     case TARGET_NR_fremovexattr:
         goto unimplemented_nowarn;
-#endif
 #ifdef TARGET_NR_set_thread_area
     case TARGET_NR_set_thread_area:
 #ifdef TARGET_MIPS
@@ -4002,7 +3861,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         goto unimplemented_nowarn;
 #endif
 
-#ifdef TARGET_NR_clock_gettime
     case TARGET_NR_clock_gettime:
     {
         struct timespec ts;
@@ -4012,8 +3870,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         }
         break;
     }
-#endif
-#ifdef TARGET_NR_clock_getres
     case TARGET_NR_clock_getres:
     {
         struct timespec ts;
@@ -4023,7 +3879,6 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
         }
         break;
     }
-#endif
 
 #if defined(TARGET_NR_set_tid_address) && defined(__NR_set_tid_address)
     case TARGET_NR_set_tid_address:
@@ -4034,9 +3889,7 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3,
     default:
     unimplemented:
         gemu_log("qemu: Unsupported syscall: %d\n", num);
-#if defined(TARGET_NR_setxattr) || defined(TARGET_NR_get_thread_area) || defined(TARGET_NR_getdomainname)
     unimplemented_nowarn:
-#endif
         ret = -ENOSYS;
         break;
     }
qemu/linux-user/arm/syscall_nr.h +116 -91

297 lines not on this page · raw message

qemu/linux-user/i386/syscall_nr.h +54 -4

74 lines not on this page · raw message

qemu/linux-user/m68k/syscall_nr.h +308 -279

590 lines not on this page · raw message

qemu/linux-user/mips/syscall_nr.h +33 -1
index e869bcd..e597642 100644
@@ -285,4 +285,36 @@
 #define TARGET_NR_add_key			(TARGET_NR_Linux + 280)
 #define TARGET_NR_request_key		(TARGET_NR_Linux + 281)
 #define TARGET_NR_keyctl			(TARGET_NR_Linux + 282)
-#define TARGET_NR_set_thread_area	(TARGET_NR_Linux + 283)
+#define TARGET_NR_set_thread_area		(TARGET_NR_Linux + 283)
+#define TARGET_NR_inotify_init		(TARGET_NR_Linux + 284)
+#define TARGET_NR_inotify_add_watch		(TARGET_NR_Linux + 285)
+#define TARGET_NR_inotify_rm_watch		(TARGET_NR_Linux + 286)
+#define TARGET_NR_migrate_pages		(TARGET_NR_Linux + 287)
+#define TARGET_NR_openat			(TARGET_NR_Linux + 288)
+#define TARGET_NR_mkdirat			(TARGET_NR_Linux + 289)
+#define TARGET_NR_mknodat			(TARGET_NR_Linux + 290)
+#define TARGET_NR_fchownat			(TARGET_NR_Linux + 291)
+#define TARGET_NR_futimesat			(TARGET_NR_Linux + 292)
+#define TARGET_NR_fstatat64			(TARGET_NR_Linux + 293)
+#define TARGET_NR_unlinkat			(TARGET_NR_Linux + 294)
+#define TARGET_NR_renameat			(TARGET_NR_Linux + 295)
+#define TARGET_NR_linkat			(TARGET_NR_Linux + 296)
+#define TARGET_NR_symlinkat			(TARGET_NR_Linux + 297)
+#define TARGET_NR_readlinkat			(TARGET_NR_Linux + 298)
+#define TARGET_NR_fchmodat			(TARGET_NR_Linux + 299)
+#define TARGET_NR_faccessat			(TARGET_NR_Linux + 300)
+#define TARGET_NR_pselect6			(TARGET_NR_Linux + 301)
+#define TARGET_NR_ppoll			(TARGET_NR_Linux + 302)
+#define TARGET_NR_unshare			(TARGET_NR_Linux + 303)
+#define TARGET_NR_splice			(TARGET_NR_Linux + 304)
+#define TARGET_NR_sync_file_range		(TARGET_NR_Linux + 305)
+#define TARGET_NR_tee			(TARGET_NR_Linux + 306)
+#define TARGET_NR_vmsplice			(TARGET_NR_Linux + 307)
+#define TARGET_NR_move_pages			(TARGET_NR_Linux + 308)
+#define TARGET_NR_set_robust_list		(TARGET_NR_Linux + 309)
+#define TARGET_NR_get_robust_list		(TARGET_NR_Linux + 310)
+#define TARGET_NR_kexec_load			(TARGET_NR_Linux + 311)
+#define TARGET_NR_getcpu			(TARGET_NR_Linux + 312)
+#define TARGET_NR_epoll_pwait		(TARGET_NR_Linux + 313)
+#define TARGET_NR_ioprio_set			(TARGET_NR_Linux + 314)
+#define TARGET_NR_ioprio_get			(TARGET_NR_Linux + 315)
qemu/linux-user/ppc/syscall_nr.h +59 -0

89 lines not on this page · raw message

qemu/linux-user/sh4/syscall_nr.h +33 -3
index c91ba1b..c43e918 100644
@@ -283,10 +283,40 @@
 #define TARGET_NR_mq_timedreceive    (TARGET_NR_mq_open+3)
 #define TARGET_NR_mq_notify          (TARGET_NR_mq_open+4)
 #define TARGET_NR_mq_getsetattr      (TARGET_NR_mq_open+5)
-#define TARGET_NR_sys_kexec_load	283
+#define TARGET_NR_kexec_load		283
 #define TARGET_NR_waitid		284
 #define TARGET_NR_add_key		285
 #define TARGET_NR_request_key	286
 #define TARGET_NR_keyctl		287
-
-#define TARGET_NR_readahead             225        /* XXXXX */
+#define TARGET_NR_ioprio_set		288
+#define TARGET_NR_ioprio_get		289
+#define TARGET_NR_inotify_init	290
+#define TARGET_NR_inotify_add_watch	291
+#define TARGET_NR_inotify_rm_watch	292
+/* 293 is unused */
+#define TARGET_NR_migrate_pages	294
+#define TARGET_NR_openat		295
+#define TARGET_NR_mkdirat		296
+#define TARGET_NR_mknodat		297
+#define TARGET_NR_fchownat		298
+#define TARGET_NR_futimesat		299
+#define TARGET_NR_fstatat64		300
+#define TARGET_NR_unlinkat		301
+#define TARGET_NR_renameat		302
+#define TARGET_NR_linkat		303
+#define TARGET_NR_symlinkat		304
+#define TARGET_NR_readlinkat		305
+#define TARGET_NR_fchmodat		306
+#define TARGET_NR_faccessat		307
+#define TARGET_NR_pselect6		308
+#define TARGET_NR_ppoll		309
+#define TARGET_NR_unshare		310
+#define TARGET_NR_set_robust_list	311
+#define TARGET_NR_get_robust_list	312
+#define TARGET_NR_splice		313
+#define TARGET_NR_sync_file_range	314
+#define TARGET_NR_tee		315
+#define TARGET_NR_vmsplice		316
+#define TARGET_NR_move_pages		317
+#define TARGET_NR_getcpu		318
+#define TARGET_NR_epoll_pwait	319
qemu/linux-user/sparc/syscall_nr.h +90 -8

181 lines not on this page · raw message

qemu/linux-user/sparc64/syscall_nr.h +31 -12

106 lines not on this page · raw message

#2 lore raw
Quoted 11 lines · Kirill A. Shutemov

Series of patches to sync syscall_nr.h with linux kernel 2.6.21-rc4 in the attachment.

syscall_cleanup.patch:
- fixed building with new syscall_nr.h
- dropped
case TARGET_NR_XXX:

        goto unimplemented;

- droppend unneeded #ifdef

Please, review it.

Can anybody review it. It's trivial update/cleanup. It shouldn't break anything.