qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH, RFC] BSD user emulator


From: Blue Swirl
Subject: Re: [Qemu-devel] [PATCH, RFC] BSD user emulator
Date: Tue, 2 Sep 2008 20:13:40 +0300

On 9/1/08, M. Warner Losh <address@hidden> wrote:
> In message: <address@hidden>
>             "Blue Swirl" <address@hidden> writes:
>  : diff -u nbsd-syscalls fbsd-syscalls |diffstat
>
> :  fbsd-syscalls |  475 
> ++++++++++++++++++++++++++++------------------------------
>  :  1 file changed, 237 insertions(+), 238 deletions(-)
>  :
>  : diff -u obsd-syscalls fbsd-syscalls |diffstat
>  :  fbsd-syscalls |  298 
> ++++++++++++++++++++++++++++++++++++++++++++++------------
>  :  1 file changed, 238 insertions(+), 60 deletions(-)
>  :
>  : diff -u obsd-syscalls nbsd-syscalls |diffstat
>  :  nbsd-syscalls |  297 
> ++++++++++++++++++++++++++++++++++++++++++++++------------
>  :  1 file changed, 238 insertions(+), 59 deletions(-)
>  :
>  : Some are just renames, but those are still large numbers. I have to
>  : add syscall number conversion tables, I thought host SYS_xx were
>  : almost always equal to target SYS_xx.
>
>
> These numbers seem high to me...  The generated files between the
>  different BSDs are somewhat different, so I'm not sure that these
>  simple tests will tell the whole story...

Taking OpenBSD vs. NetBSD as an example: the first 150 calls have not
changed much, then there are some changes and starting from 256 calls
diverge. There are even some different calls using the same number.

diff -u obsd-syscalls nbsd-syscalls
--- obsd-syscalls       2008-09-01 18:10:23.000000000 +0000
+++ nbsd-syscalls       2008-09-01 18:10:17.000000000 +0000
@@ -14,6 +14,7 @@
 #define SYS_chmod 15
 #define SYS_chown 16
 #define SYS_break 17
+#define SYS_freebsd4_getfsstat 18
 #define SYS_getpid 20
 #define SYS_mount 21
 #define SYS_unmount 22
@@ -34,18 +35,15 @@
 #define SYS_kill 37
 #define SYS_getppid 39
 #define SYS_dup 41
-#define SYS_opipe 42
+#define SYS_pipe 42
 #define SYS_getegid 43
 #define SYS_profil 44
 #define SYS_ktrace 45
-#define SYS_sigaction 46
 #define SYS_getgid 47
-#define SYS_sigprocmask 48
 #define SYS_getlogin 49
 #define SYS_setlogin 50
 #define SYS_acct 51
-#define SYS_sigpending 52
-#define SYS_osigaltstack 53
+#define SYS_sigaltstack 53
 #define SYS_ioctl 54
 #define SYS_reboot 55
 #define SYS_revoke 56
@@ -54,9 +52,11 @@
 #define SYS_execve 59
 #define SYS_umask 60
 #define SYS_chroot 61
+#define SYS_msync 65
 #define SYS_vfork 66
 #define SYS_sbrk 69
 #define SYS_sstk 70
+#define SYS_vadvise 72
 #define SYS_munmap 73
 #define SYS_mprotect 74
 #define SYS_madvise 75
@@ -66,7 +66,9 @@
 #define SYS_getpgrp 81
 #define SYS_setpgid 82
 #define SYS_setitimer 83
+#define SYS_swapon 85
 #define SYS_getitimer 86
+#define SYS_getdtablesize 89
 #define SYS_dup2 90
 #define SYS_fcntl 92
 #define SYS_select 93
@@ -75,11 +77,9 @@
 #define SYS_socket 97
 #define SYS_connect 98
 #define SYS_getpriority 100
-#define SYS_sigreturn 103
 #define SYS_bind 104
 #define SYS_setsockopt 105
 #define SYS_listen 106
-#define SYS_sigsuspend 111
 #define SYS_gettimeofday 116
 #define SYS_getrusage 117
 #define SYS_getsockopt 118
@@ -102,86 +102,265 @@
 #define SYS_adjtime 140
 #define SYS_setsid 147
 #define SYS_quotactl 148
+#define SYS_nlm_syscall 154
 #define SYS_nfssvc 155
+#define SYS_freebsd4_statfs 157
+#define SYS_freebsd4_fstatfs 158
+#define SYS_lgetfh 160
 #define SYS_getfh 161
+#define SYS_getdomainname 162
+#define SYS_setdomainname 163
+#define SYS_uname 164
 #define SYS_sysarch 165
-#define SYS_pread 173
-#define SYS_pwrite 174
+#define SYS_rtprio 166
+#define SYS_semsys 169
+#define SYS_msgsys 170
+#define SYS_shmsys 171
+#define SYS_freebsd6_pread 173
+#define SYS_freebsd6_pwrite 174
+#define SYS_setfib 175
+#define SYS_ntp_adjtime 176
 #define SYS_setgid 181
 #define SYS_setegid 182
 #define SYS_seteuid 183
-#define SYS_lfs_bmapv 184
-#define SYS_lfs_markv 185
-#define SYS_lfs_segclean 186
-#define SYS_lfs_segwait 187
+#define SYS_stat 188
+#define SYS_fstat 189
+#define SYS_lstat 190
 #define SYS_pathconf 191
 #define SYS_fpathconf 192
-#define SYS_swapctl 193
 #define SYS_getrlimit 194
 #define SYS_setrlimit 195
 #define SYS_getdirentries 196
-#define SYS_mmap 197
+#define SYS_freebsd6_mmap 197
 #define SYS___syscall 198
-#define SYS_lseek 199
-#define SYS_truncate 200
-#define SYS_ftruncate 201
+#define SYS_freebsd6_lseek 199
+#define SYS_freebsd6_truncate 200
+#define SYS_freebsd6_ftruncate 201
 #define SYS___sysctl 202
 #define SYS_mlock 203
 #define SYS_munlock 204
+#define SYS_undelete 205
 #define SYS_futimes 206
 #define SYS_getpgid 207
-#define SYS_xfspioctl 208
+#define SYS_poll 209
+#define SYS___semctl 220
 #define SYS_semget 221
+#define SYS_semop 222
+#define SYS_msgctl 224
 #define SYS_msgget 225
 #define SYS_msgsnd 226
 #define SYS_msgrcv 227
 #define SYS_shmat 228
+#define SYS_shmctl 229
 #define SYS_shmdt 230
+#define SYS_shmget 231
 #define SYS_clock_gettime 232
 #define SYS_clock_settime 233
 #define SYS_clock_getres 234
+#define SYS_ktimer_create 235
+#define SYS_ktimer_delete 236
+#define SYS_ktimer_settime 237
+#define SYS_ktimer_gettime 238
+#define SYS_ktimer_getoverrun 239
 #define SYS_nanosleep 240
+#define SYS_ntp_gettime 248
 #define SYS_minherit 250
 #define SYS_rfork 251
-#define SYS_poll 252
+#define SYS_openbsd_poll 252
 #define SYS_issetugid 253
 #define SYS_lchown 254
-#define SYS_getsid 255
-#define SYS_msync 256
-#define SYS_pipe 263
-#define SYS_fhopen 264
-#define SYS_preadv 267
-#define SYS_pwritev 268
-#define SYS_kqueue 269
-#define SYS_kevent 270
-#define SYS_mlockall 271
-#define SYS_munlockall 272
-#define SYS_getpeereid 273
-#define SYS_getresuid 281
-#define SYS_setresuid 282
-#define SYS_getresgid 283
-#define SYS_setresgid 284
-#define SYS_mquery 286
-#define SYS_closefrom 287
-#define SYS_sigaltstack 288
-#define SYS_shmget 289
-#define SYS_semop 290
-#define SYS_stat 291
-#define SYS_fstat 292
-#define SYS_lstat 293
-#define SYS_fhstat 294
-#define SYS___semctl 295
-#define SYS_shmctl 296
-#define SYS_msgctl 297
-#define SYS_sched_yield 298
-#define SYS_getthrid 299
-#define SYS_thrsleep 300
-#define SYS_thrwakeup 301
-#define SYS_threxit 302
-#define SYS_thrsigdivert 303
-#define SYS___getcwd 304
-#define SYS_adjfreq 305
-#define SYS_getfsstat 306
-#define SYS_statfs 307
-#define SYS_fstatfs 308
-#define SYS_fhstatfs 309
+#define SYS_aio_read 255
+#define SYS_aio_write 256
+#define SYS_lio_listio 257
+#define SYS_getdents 272
+#define SYS_lchmod 274
+#define SYS_netbsd_lchown 275
+#define SYS_lutimes 276
+#define SYS_netbsd_msync 277
+#define SYS_nstat 278
+#define SYS_nfstat 279
+#define SYS_nlstat 280
+#define SYS_preadv 289
+#define SYS_pwritev 290
+#define SYS_freebsd4_fhstatfs 297
+#define SYS_fhopen 298
+#define SYS_fhstat 299
+#define SYS_modnext 300
+#define SYS_modstat 301
+#define SYS_modfnext 302
+#define SYS_modfind 303
+#define SYS_kldload 304
+#define SYS_kldunload 305
+#define SYS_kldfind 306
+#define SYS_kldnext 307
+#define SYS_kldstat 308
+#define SYS_kldfirstmod 309
+#define SYS_getsid 310
+#define SYS_setresuid 311
+#define SYS_setresgid 312
+#define SYS_aio_return 314
+#define SYS_aio_suspend 315
+#define SYS_aio_cancel 316
+#define SYS_aio_error 317
+#define SYS_oaio_read 318
+#define SYS_oaio_write 319
+#define SYS_olio_listio 320
+#define SYS_yield 321
+#define SYS_mlockall 324
+#define SYS_munlockall 325
+#define SYS___getcwd 326
+#define SYS_sched_setparam 327
+#define SYS_sched_getparam 328
+#define SYS_sched_setscheduler 329
+#define SYS_sched_getscheduler 330
+#define SYS_sched_yield 331
+#define SYS_sched_get_priority_max 332
+#define SYS_sched_get_priority_min 333
+#define SYS_sched_rr_get_interval 334
+#define SYS_utrace 335
+#define SYS_freebsd4_sendfile 336
+#define SYS_kldsym 337
+#define SYS_jail 338
+#define SYS_sigprocmask 340
+#define SYS_sigsuspend 341
+#define SYS_freebsd4_sigaction 342
+#define SYS_sigpending 343
+#define SYS_freebsd4_sigreturn 344
+#define SYS_sigtimedwait 345
+#define SYS_sigwaitinfo 346
+#define SYS___acl_get_file 347
+#define SYS___acl_set_file 348
+#define SYS___acl_get_fd 349
+#define SYS___acl_set_fd 350
+#define SYS___acl_delete_file 351
+#define SYS___acl_delete_fd 352
+#define SYS___acl_aclcheck_file 353
+#define SYS___acl_aclcheck_fd 354
+#define SYS_extattrctl 355
+#define SYS_extattr_set_file 356
+#define SYS_extattr_get_file 357
+#define SYS_extattr_delete_file 358
+#define SYS_aio_waitcomplete 359
+#define SYS_getresuid 360
+#define SYS_getresgid 361
+#define SYS_kqueue 362
+#define SYS_kevent 363
+#define SYS_extattr_set_fd 371
+#define SYS_extattr_get_fd 372
+#define SYS_extattr_delete_fd 373
+#define SYS___setugid 374
+#define SYS_nfsclnt 375
+#define SYS_eaccess 376
+#define SYS_nmount 378
+#define SYS___mac_get_proc 384
+#define SYS___mac_set_proc 385
+#define SYS___mac_get_fd 386
+#define SYS___mac_get_file 387
+#define SYS___mac_set_fd 388
+#define SYS___mac_set_file 389
+#define SYS_kenv 390
+#define SYS_lchflags 391
+#define SYS_uuidgen 392
+#define SYS_sendfile 393
+#define SYS_mac_syscall 394
+#define SYS_getfsstat 395
+#define SYS_statfs 396
+#define SYS_fstatfs 397
+#define SYS_fhstatfs 398
+#define SYS_ksem_close 400
+#define SYS_ksem_post 401
+#define SYS_ksem_wait 402
+#define SYS_ksem_trywait 403
+#define SYS_ksem_init 404
+#define SYS_ksem_open 405
+#define SYS_ksem_unlink 406
+#define SYS_ksem_getvalue 407
+#define SYS_ksem_destroy 408
+#define SYS___mac_get_pid 409
+#define SYS___mac_get_link 410
+#define SYS___mac_set_link 411
+#define SYS_extattr_set_link 412
+#define SYS_extattr_get_link 413
+#define SYS_extattr_delete_link 414
+#define SYS___mac_execve 415
+#define SYS_sigaction 416
+#define SYS_sigreturn 417
+#define SYS_getcontext 421
+#define SYS_setcontext 422
+#define SYS_swapcontext 423
+#define SYS_swapoff 424
+#define SYS___acl_get_link 425
+#define SYS___acl_set_link 426
+#define SYS___acl_delete_link 427
+#define SYS___acl_aclcheck_link 428
+#define SYS_sigwait 429
+#define SYS_thr_create 430
+#define SYS_thr_exit 431
+#define SYS_thr_self 432
+#define SYS_thr_kill 433
+#define SYS__umtx_lock 434
+#define SYS__umtx_unlock 435
+#define SYS_jail_attach 436
+#define SYS_extattr_list_fd 437
+#define SYS_extattr_list_file 438
+#define SYS_extattr_list_link 439
+#define SYS_ksem_timedwait 441
+#define SYS_thr_suspend 442
+#define SYS_thr_wake 443
+#define SYS_kldunloadf 444
+#define SYS_audit 445
+#define SYS_auditon 446
+#define SYS_getauid 447
+#define SYS_setauid 448
+#define SYS_getaudit 449
+#define SYS_setaudit 450
+#define SYS_getaudit_addr 451
+#define SYS_setaudit_addr 452
+#define SYS_auditctl 453
+#define SYS__umtx_op 454
+#define SYS_thr_new 455
+#define SYS_sigqueue 456
+#define SYS_kmq_open 457
+#define SYS_kmq_setattr 458
+#define SYS_kmq_timedreceive 459
+#define SYS_kmq_timedsend 460
+#define SYS_kmq_notify 461
+#define SYS_kmq_unlink 462
+#define SYS_abort2 463
+#define SYS_thr_set_name 464
+#define SYS_aio_fsync 465
+#define SYS_rtprio_thread 466
+#define SYS_sctp_peeloff 471
+#define SYS_sctp_generic_sendmsg 472
+#define SYS_sctp_generic_sendmsg_iov 473
+#define SYS_sctp_generic_recvmsg 474
+#define SYS_pread 475
+#define SYS_pwrite 476
+#define SYS_mmap 477
+#define SYS_lseek 478
+#define SYS_truncate 479
+#define SYS_ftruncate 480
+#define SYS_thr_kill2 481
+#define SYS_shm_open 482
+#define SYS_shm_unlink 483
+#define SYS_cpuset 484
+#define SYS_cpuset_setid 485
+#define SYS_cpuset_getid 486
+#define SYS_cpuset_getaffinity 487
+#define SYS_cpuset_setaffinity 488
+#define SYS_faccessat 489
+#define SYS_fchmodat 490
+#define SYS_fchownat 491
+#define SYS_fexecve 492
+#define SYS_fstatat 493
+#define SYS_futimesat 494
+#define SYS_linkat 495
+#define SYS_mkdirat 496
+#define SYS_mkfifoat 497
+#define SYS_mknodat 498
+#define SYS_openat 499
+#define SYS_readlinkat 500
+#define SYS_renameat 501
+#define SYS_symlinkat 502
+#define SYS_unlinkat 503
+#define SYS_posix_openpt 504




reply via email to

[Prev in Thread] Current Thread [Next in Thread]