Jelajahi Sumber

* signal handler update, uses uc_mcontext instead of sigcontext_struct in later Linux versions
* syscalls update

git-svn-id: trunk@1711 -

tom_at_work 20 tahun lalu
induk
melakukan
745cafdc70
3 mengubah file dengan 312 tambahan dan 293 penghapusan
  1. 12 19
      rtl/linux/powerpc/sighnd.inc
  2. 25 33
      rtl/linux/powerpc/sighndh.inc
  3. 275 241
      rtl/linux/powerpc/sysnr.inc

+ 12 - 19
rtl/linux/powerpc/sighnd.inc

@@ -15,8 +15,7 @@
 
  **********************************************************************}
 
-
-procedure SignalToRunerror(sig : longint; SigInfo: PSigInfo; SigContext: PSigContext);cdecl;
+procedure SignalToRunerror(sig : longint; SigInfo: PSigInfo; context: PUContext);cdecl;
 var
   res : word;
 {  fpustate: longint; }
@@ -26,30 +25,24 @@ begin
   fpc_enable_ppc_fpu_exceptions;
   case sig of
     SIGFPE :
-        begin
-{
-         fpscr is cleared by the kernel -> can't find out cause :(
-          fpustate := fpc_get_ppc_fpscr;
-          if (fpustate and ppc_fpu_underflow) <> 0 then
-            res := 206
-          else if (fpustate and ppc_fpu_overflow) <> 0 then
-            res := 205
-          else if (fpustate and ppc_fpu_divbyzero) <> 0 then
-            res := 200
-          else
-}
-            res := 207;
-        end;
+      case (SigInfo^.si_code) of
+        FPE_FLTDIV : res := 200;
+        FPE_FLTOVF : res := 205;
+        FPE_FLTUND : res := 206;
+        else
+          res := 207;
+      end;
     SIGBUS :
-        res:=214;
+      res:=214;
     SIGILL,
     SIGSEGV :
-        res:=216;
+      res:=216;
   end;
   reenable_signal(sig);
   { give runtime error at the position where the signal was raised }
   if res<>0 then
-    HandleErrorAddrFrame(res,pointer(SigContext^.pt_regs^.nip),pointer(SigContext^.pt_regs^.gpr[1]));
+    HandleErrorAddrFrame(res, pointer(context^.uc_mcontext.pt_regs^.nip),
+      pointer(context^.uc_mcontext.pt_regs^.gpr[1]));
 end;
 
 

+ 25 - 33
rtl/linux/powerpc/sighndh.inc

@@ -3,7 +3,8 @@
     Copyright (c) 1999-2000 by Jonas Maebe,
     member of the Free Pascal development team.
 
-    TSigContext
+    TSigContext and related records. Translated from headers from
+    2.6.11 kernel sources.
 
     See the file COPYING.FPC, included in this distribution,
     for details about the copyright.
@@ -17,63 +18,54 @@
 {$packrecords C}
 
 type
+  gpr_reg = cULong;
+
   { from include/ppc/ptrace.h }
   pptregs = ^tptregs;
   tptregs = record
-    gpr: array[0..31] of cardinal;
-    nip: cardinal;
-    msr: cardinal;
-    orig_gpr3: cardinal; { Used for restarting system calls }
-    ctr: cardinal;
-    link: cardinal;
-    xer: cardinal;
-    ccr: cardinal;
-    mq: cardinal;        { 601 only (not used at present)  }
-                         { Used on APUS to hold IPL value. }
-    trap: cardinal;      { Reason for being here }
-    dar: cardinal;       { Fault registers }
-    dsisr: cardinal;
-    result: cardinal;    { Result of a system call }
+    gpr: array[0..31] of gpr_reg;
+    nip: gpr_reg;
+    msr: gpr_reg;
+    orig_gpr3: gpr_reg; { Used for restarting system calls }
+    ctr: gpr_reg;
+    link: gpr_reg;
+    xer: gpr_reg;
+    ccr: gpr_reg;
+    mq: gpr_reg;        { 601 only (not used at present)  }
+                        { Used on APUS to hold IPL value. }
+    trap: gpr_reg;      { Reason for being here }
+    dar: gpr_reg;       { Fault registers }
+    dsisr: gpr_reg;
+    result: gpr_reg;    { Result of a system call }
   end;
 
   { from include/asm-ppc/signal.h }
   stack_t = record
     ss_sp: pointer;
-    ss_flags: longint;
+    ss_flags: cInt;
     ss_size: size_t;
   end;
 
   { from include/asm-ppc/sigcontext.h }
   tsigcontext_struct = record
-    _unused: array[0..3] of dword;
-    signal: longint;
-    handler: dword;
-    oldmask: dword;
+    _unused: array[0..3] of cULong;
+    signal: cInt;
+    handler: cULong;
+    oldmask: cULong;
     pt_regs: pptregs;
   end;
 
   { from include/asm-ppc/ucontext.h }
   pucontext = ^tucontext;
   tucontext = record
-    uc_flags : dword;
+    uc_flags : cULong;
     uc_link : pucontext;
     uc_stack : stack_t;
     uc_mcontext : tsigcontext_struct;
     uc_sigmask : sigset_t;
   end;
 
-
   { from arch/ppc/kernel/signal.c, the type of the actual parameter passed }
   { to the sigaction handler                                               }
-  t_rt_sigframe = record
-    _unused: array[0..1] of cardinal;
-    pinfo: psiginfo;
-    puc: pointer;
-    siginfo: tsiginfo;
-    uc: tucontext;
-  end;
-
   PSigContext = ^TSigContext;
-  TSigContext= tsigcontext_struct;
-
-
+  TSigContext= tucontext;

+ 275 - 241
rtl/linux/powerpc/sysnr.inc

@@ -3,7 +3,7 @@
     Copyright (c) 1999-2000 by Michael Van Canneyt,
     member of the Free Pascal development team.
 
-    Syscall nrs for 2.4.18
+    Syscall nrs for 2.6.11
 
     See the file COPYING.FPC, included in this distribution,
     for details about the copyright.
@@ -14,247 +14,281 @@
 
  **********************************************************************}
 
-
 {
-* This file contains the system call numbers.
+  Automatically converted by H2Pas 1.0.0 from 
+  /usr/include/asm-ppc/unistd.h
 }
 
-Const
-        syscall_nr_exit                 =  1;
-        syscall_nr_fork                 =  2;
-        syscall_nr_read                 =  3;
-        syscall_nr_write                =  4;
-        syscall_nr_open                 =  5;
-        syscall_nr_close                =  6;
-        syscall_nr_waitpid              =  7;
-        syscall_nr_creat                =  8;
-        syscall_nr_link                 =  9;
-        syscall_nr_unlink               = 10;
-        syscall_nr_execve               = 11;
-        syscall_nr_chdir                = 12;
-        syscall_nr_time                 = 13;
-        syscall_nr_mknod                = 14;
-        syscall_nr_chmod                = 15;
-        syscall_nr_lchown               = 16;
-        syscall_nr_break                = 17;
-        syscall_nr_oldstat              = 18;
-        syscall_nr_lseek                = 19;
-        syscall_nr_getpid               = 20;
-        syscall_nr_mount                = 21;
-        syscall_nr_umount               = 22;
-        syscall_nr_setuid               = 23;
-        syscall_nr_getuid               = 24;
-        syscall_nr_stime                = 25;
-        syscall_nr_ptrace               = 26;
-        syscall_nr_alarm                = 27;
-        syscall_nr_oldfstat             = 28;
-        syscall_nr_pause                = 29;
-        syscall_nr_utime                = 30;
-        syscall_nr_stty                 = 31;
-        syscall_nr_gtty                 = 32;
-        syscall_nr_access               = 33;
-        syscall_nr_nice                 = 34;
-        syscall_nr_ftime                = 35;
-        syscall_nr_sync                 = 36;
-        syscall_nr_kill                 = 37;
-        syscall_nr_rename               = 38;
-        syscall_nr_mkdir                = 39;
-        syscall_nr_rmdir                = 40;
-        syscall_nr_dup                  = 41;
-        syscall_nr_pipe                 = 42;
-        syscall_nr_times                = 43;
-        syscall_nr_prof                 = 44;
-        syscall_nr_brk                  = 45;
-        syscall_nr_setgid               = 46;
-        syscall_nr_getgid               = 47;
-        syscall_nr_signal               = 48;
-        syscall_nr_geteuid              = 49;
-        syscall_nr_getegid              = 50;
-        syscall_nr_acct                 = 51;
-        syscall_nr_umount2              = 52;
-        syscall_nr_lock                 = 53;
-        syscall_nr_ioctl                = 54;
-        syscall_nr_fcntl                = 55;
-        syscall_nr_mpx                  = 56;
-        syscall_nr_setpgid              = 57;
-        syscall_nr_ulimit               = 58;
-        syscall_nr_oldolduname          = 59;
-        syscall_nr_umask                = 60;
-        syscall_nr_chroot               = 61;
-        syscall_nr_ustat                = 62;
-        syscall_nr_dup2                 = 63;
-        syscall_nr_getppid              = 64;
-        syscall_nr_getpgrp              = 65;
-        syscall_nr_setsid               = 66;
-        syscall_nr_sigaction            = 67;
-        syscall_nr_sgetmask             = 68;
-        syscall_nr_ssetmask             = 69;
-        syscall_nr_setreuid             = 70;
-        syscall_nr_setregid             = 71;
-        syscall_nr_sigsuspend           = 72;
-        syscall_nr_sigpending           = 73;
-        syscall_nr_sethostname          = 74;
-        syscall_nr_setrlimit            = 75;
-        syscall_nr_getrlimit            = 76;   { Back compatible 2Gig limited rlimit }
-        syscall_nr_getrusage            = 77;
-        syscall_nr_gettimeofday         = 78;
-        syscall_nr_settimeofday         = 79;
-        syscall_nr_getgroups            = 80;
-        syscall_nr_setgroups            = 81;
-        syscall_nr_select               = 82;
-        syscall_nr_symlink              = 83;
-        syscall_nr_oldlstat             = 84;
-        syscall_nr_readlink             = 85;
-        syscall_nr_uselib               = 86;
-        syscall_nr_swapon               = 87;
-        syscall_nr_reboot               = 88;
-        syscall_nr_readdir              = 89;
-        syscall_nr_mmap                 = 90;
-        syscall_nr_munmap               = 91;
-        syscall_nr_truncate             = 92;
-        syscall_nr_ftruncate            = 93;
-        syscall_nr_fchmod               = 94;
-        syscall_nr_fchown               = 95;
-        syscall_nr_getpriority          = 96;
-        syscall_nr_setpriority          = 97;
-        syscall_nr_profil               = 98;
-        syscall_nr_statfs               = 99;
-        syscall_nr_fstatfs              = 100;
-        syscall_nr_ioperm               = 101;
-        syscall_nr_socketcall           = 102;
-        syscall_nr_syslog               = 103;
-        syscall_nr_setitimer            = 104;
-        syscall_nr_getitimer            = 105;
-        syscall_nr_stat                 = 106;
-        syscall_nr_lstat                = 107;
-        syscall_nr_fstat                = 108;
-        syscall_nr_olduname             = 109;
-        syscall_nr_iopl                 = 110;
-        syscall_nr_vhangup              = 111;
-        syscall_nr_idle                 = 112;
-        syscall_nr_vm86old              = 113;
-        syscall_nr_wait4                = 114;
-        syscall_nr_swapoff              = 115;
-        syscall_nr_sysinfo              = 116;
-        syscall_nr_ipc                  = 117;
-        syscall_nr_fsync                = 118;
-        syscall_nr_sigreturn            = 119;
-        syscall_nr_clone                = 120;
-        syscall_nr_setdomainname        = 121;
-        syscall_nr_uname                = 122;
-        syscall_nr_modify_ldt           = 123;
-        syscall_nr_adjtimex             = 124;
-        syscall_nr_mprotect             = 125;
-        syscall_nr_sigprocmask          = 126;
-        syscall_nr_create_module        = 127;
-        syscall_nr_init_module          = 128;
-        syscall_nr_delete_module        = 129;
-        syscall_nr_get_kernel_syms      = 130;
-        syscall_nr_quotactl             = 131;
-        syscall_nr_getpgid              = 132;
-        syscall_nr_fchdir               = 133;
-        syscall_nr_bdflush              = 134;
-        syscall_nr_sysfs                = 135;
-        syscall_nr_personality          = 136;
-        syscall_nr_afs_syscall          = 137; { Syscall for Andrew File System }
-        syscall_nr_setfsuid             = 138;
-        syscall_nr_setfsgid             = 139;
-        syscall_nr__llseek              = 140;
-        syscall_nr_getdents             = 141;
-        syscall_nr__newselect           = 142;
-        syscall_nr_flock                = 143;
-        syscall_nr_msync                = 144;
-        syscall_nr_readv                = 145;
-        syscall_nr_writev               = 146;
-        syscall_nr_getsid               = 147;
-        syscall_nr_fdatasync            = 148;
-        syscall_nr__sysctl              = 149;
-        syscall_nr_mlock                = 150;
-        syscall_nr_munlock              = 151;
-        syscall_nr_mlockall             = 152;
-        syscall_nr_munlockall           = 153;
-        syscall_nr_sched_setparam       = 154;
-        syscall_nr_sched_getparam       = 155;
-        syscall_nr_sched_setscheduler   = 156;
-        syscall_nr_sched_getscheduler   = 157;
-        syscall_nr_sched_yield          = 158;
-        syscall_nr_sched_get_priority_max       = 159;
-        syscall_nr_sched_get_priority_min       = 160;
-        syscall_nr_sched_rr_get_interval        = 161;
-        syscall_nr_nanosleep            = 162;
-        syscall_nr_mremap               = 163;
-        syscall_nr_setresuid            = 164;
-        syscall_nr_getresuid            = 165;
-        syscall_nr_vm86                 = 166;
-        syscall_nr_query_module         = 167;
-        syscall_nr_poll                 = 168;
-        syscall_nr_nfsservctl           = 169;
-        syscall_nr_setresgid            = 170;
-        syscall_nr_getresgid            = 171;
-        syscall_nr_prctl                = 172;
-        syscall_nr_rt_sigreturn         = 173;
-        syscall_nr_rt_sigaction         = 174;
-        syscall_nr_rt_sigprocmask       = 175;
-        syscall_nr_rt_sigpending        = 176;
-        syscall_nr_rt_sigtimedwait      = 177;
-        syscall_nr_rt_sigqueueinfo      = 178;
-        syscall_nr_rt_sigsuspend        = 179;
-        syscall_nr_pread                = 180;
-        syscall_nr_pwrite               = 181;
-        syscall_nr_chown                = 182;
-        syscall_nr_getcwd               = 183;
-        syscall_nr_capget               = 184;
-        syscall_nr_capset               = 185;
-        syscall_nr_sigaltstack          = 186;
-        syscall_nr_sendfile             = 187;
-        syscall_nr_getpmsg              = 188;  { some people actually want streams }
-        syscall_nr_putpmsg              = 189;  { some people actually want streams }
-        syscall_nr_vfork                = 190;
-        syscall_nr_ugetrlimit           = 191;  { SuS compliant getrlimit }
-        syscall_nr_mmap2                = 192;
-        syscall_nr_truncate64           = 193;
-        syscall_nr_ftruncate64          = 194;
-        syscall_nr_stat64               = 195;
-        syscall_nr_lstat64              = 196;
-        syscall_nr_fstat64              = 197;
-        syscall_nr_lchown32             = 198;
-        syscall_nr_getuid32             = 199;
-        syscall_nr_getgid32             = 200;
-        syscall_nr_geteuid32            = 201;
-        syscall_nr_getegid32            = 202;
-        syscall_nr_setreuid32           = 203;
-        syscall_nr_setregid32           = 204;
-        syscall_nr_getgroups32          = 205;
-        syscall_nr_setgroups32          = 206;
-        syscall_nr_fchown32             = 207;
-        syscall_nr_setresuid32          = 208;
-        syscall_nr_getresuid32          = 209;
-        syscall_nr_setresgid32          = 210;
-        syscall_nr_getresgid32          = 211;
-        syscall_nr_chown32              = 212;
-        syscall_nr_setuid32             = 213;
-        syscall_nr_setgid32             = 214;
-        syscall_nr_setfsuid32           = 215;
-        syscall_nr_setfsgid32           = 216;
-        syscall_nr_pivot_root           = 217;
-        syscall_nr_mincore              = 218;
-        syscall_nr_madvise              = 219;
-        syscall_nr_madvise1             = 219;  { delete when C lib stub is removed }
-        syscall_nr_getdents64           = 220;
-        syscall_nr_fcntl64              = 221;
-        syscall_nr_security             = 223;  { syscall for security modules }
-        syscall_nr_gettid               = 224;
-        syscall_nr_readahead            = 225;
-        syscall_nr_setxattr             = 226;
-        syscall_nr_lsetxattr            = 227;
-        syscall_nr_fsetxattr            = 228;
-        syscall_nr_getxattr             = 229;
-        syscall_nr_lgetxattr            = 230;
-        syscall_nr_fgetxattr            = 231;
-        syscall_nr_listxattr            = 232;
-        syscall_nr_llistxattr           = 233;
-        syscall_nr_flistxattr           = 234;
-        syscall_nr_removexattr          = 235;
-        syscall_nr_lremovexattr         = 236;
-        syscall_nr_fremovexattr         = 237;
+{ This file contains the system call numbers.  }
 
+const
+  syscall_nr_exit = 1;
+  syscall_nr_fork = 2;
+  syscall_nr_read = 3;
+  syscall_nr_write = 4;
+  syscall_nr_open = 5;
+  syscall_nr_close = 6;
+  syscall_nr_waitpid = 7;
+  syscall_nr_creat = 8;
+  syscall_nr_link = 9;
+  syscall_nr_unlink = 10;
+  syscall_nr_execve = 11;
+  syscall_nr_chdir = 12;
+  syscall_nr_time = 13;
+  syscall_nr_mknod = 14;
+  syscall_nr_chmod = 15;
+  syscall_nr_lchown = 16;
+  syscall_nr_break = 17;
+  syscall_nr_oldstat = 18;
+  syscall_nr_lseek = 19;
+  syscall_nr_getpid = 20;
+  syscall_nr_mount = 21;
+  syscall_nr_umount = 22;
+  syscall_nr_setuid = 23;
+  syscall_nr_getuid = 24;
+  syscall_nr_stime = 25;
+  syscall_nr_ptrace = 26;
+  syscall_nr_alarm = 27;
+  syscall_nr_oldfstat = 28;
+  syscall_nr_pause = 29;
+  syscall_nr_utime = 30;
+  syscall_nr_stty = 31;
+  syscall_nr_gtty = 32;
+  syscall_nr_access = 33;
+  syscall_nr_nice = 34;
+  syscall_nr_ftime = 35;
+  syscall_nr_sync = 36;
+  syscall_nr_kill = 37;
+  syscall_nr_rename = 38;
+  syscall_nr_mkdir = 39;
+  syscall_nr_rmdir = 40;
+  syscall_nr_dup = 41;
+  syscall_nr_pipe = 42;
+  syscall_nr_times = 43;
+  syscall_nr_prof = 44;
+  syscall_nr_brk = 45;
+  syscall_nr_setgid = 46;
+  syscall_nr_getgid = 47;
+  syscall_nr_signal = 48;
+  syscall_nr_geteuid = 49;
+  syscall_nr_getegid = 50;
+  syscall_nr_acct = 51;
+  syscall_nr_umount2 = 52;
+  syscall_nr_lock = 53;
+  syscall_nr_ioctl = 54;
+  syscall_nr_fcntl = 55;
+  syscall_nr_mpx = 56;
+  syscall_nr_setpgid = 57;
+  syscall_nr_ulimit = 58;
+  syscall_nr_oldolduname = 59;
+  syscall_nr_umask = 60;
+  syscall_nr_chroot = 61;
+  syscall_nr_ustat = 62;
+  syscall_nr_dup2 = 63;
+  syscall_nr_getppid = 64;
+  syscall_nr_getpgrp = 65;
+  syscall_nr_setsid = 66;
+  syscall_nr_sigaction = 67;
+  syscall_nr_sgetmask = 68;
+  syscall_nr_ssetmask = 69;
+  syscall_nr_setreuid = 70;
+  syscall_nr_setregid = 71;
+  syscall_nr_sigsuspend = 72;
+  syscall_nr_sigpending = 73;
+  syscall_nr_sethostname = 74;
+  syscall_nr_setrlimit = 75;
+  syscall_nr_getrlimit = 76;
+  syscall_nr_getrusage = 77;
+  syscall_nr_gettimeofday = 78;
+  syscall_nr_settimeofday = 79;
+  syscall_nr_getgroups = 80;
+  syscall_nr_setgroups = 81;
+  syscall_nr_select = 82;
+  syscall_nr_symlink = 83;
+  syscall_nr_oldlstat = 84;
+  syscall_nr_readlink = 85;
+  syscall_nr_uselib = 86;
+  syscall_nr_swapon = 87;
+  syscall_nr_reboot = 88;
+  syscall_nr_readdir = 89;
+  syscall_nr_mmap = 90;
+  syscall_nr_munmap = 91;
+  syscall_nr_truncate = 92;
+  syscall_nr_ftruncate = 93;
+  syscall_nr_fchmod = 94;
+  syscall_nr_fchown = 95;
+  syscall_nr_getpriority = 96;
+  syscall_nr_setpriority = 97;
+  syscall_nr_profil = 98;
+  syscall_nr_statfs = 99;
+  syscall_nr_fstatfs = 100;
+  syscall_nr_ioperm = 101;
+  syscall_nr_socketcall = 102;
+  syscall_nr_syslog = 103;
+  syscall_nr_setitimer = 104;
+  syscall_nr_getitimer = 105;
+  syscall_nr_stat = 106;
+  syscall_nr_lstat = 107;
+  syscall_nr_fstat = 108;
+  syscall_nr_olduname = 109;
+  syscall_nr_iopl = 110;
+  syscall_nr_vhangup = 111;
+  syscall_nr_idle = 112;
+  syscall_nr_vm86 = 113;
+  syscall_nr_wait4 = 114;
+  syscall_nr_swapoff = 115;
+  syscall_nr_sysinfo = 116;
+  syscall_nr_ipc = 117;
+  syscall_nr_fsync = 118;
+  syscall_nr_sigreturn = 119;
+  syscall_nr_clone = 120;
+  syscall_nr_setdomainname = 121;
+  syscall_nr_uname = 122;
+  syscall_nr_modify_ldt = 123;
+  syscall_nr_adjtimex = 124;
+  syscall_nr_mprotect = 125;
+  syscall_nr_sigprocmask = 126;
+  syscall_nr_create_module = 127;
+  syscall_nr_init_module = 128;
+  syscall_nr_delete_module = 129;
+  syscall_nr_get_kernel_syms = 130;
+  syscall_nr_quotactl = 131;
+  syscall_nr_getpgid = 132;
+  syscall_nr_fchdir = 133;
+  syscall_nr_bdflush = 134;
+  syscall_nr_sysfs = 135;
+  syscall_nr_personality = 136;
+  { Syscall for Andrew File System  }
+  syscall_nr_afs_syscall = 137;
+  syscall_nr_setfsuid = 138;
+  syscall_nr_setfsgid = 139;
+  syscall_nr__llseek = 140;
+  syscall_nr_getdents = 141;
+  syscall_nr__newselect = 142;
+  syscall_nr_flock = 143;
+  syscall_nr_msync = 144;
+  syscall_nr_readv = 145;
+  syscall_nr_writev = 146;
+  syscall_nr_getsid = 147;
+  syscall_nr_fdatasync = 148;
+  syscall_nr__sysctl = 149;
+  syscall_nr_mlock = 150;
+  syscall_nr_munlock = 151;
+  syscall_nr_mlockall = 152;
+  syscall_nr_munlockall = 153;
+  syscall_nr_sched_setparam = 154;
+  syscall_nr_sched_getparam = 155;
+  syscall_nr_sched_setscheduler = 156;
+  syscall_nr_sched_getscheduler = 157;
+  syscall_nr_sched_yield = 158;
+  syscall_nr_sched_get_priority_max = 159;
+  syscall_nr_sched_get_priority_min = 160;
+  syscall_nr_sched_rr_get_interval = 161;
+  syscall_nr_nanosleep = 162;
+  syscall_nr_mremap = 163;
+  syscall_nr_setresuid = 164;
+  syscall_nr_getresuid = 165;
+  syscall_nr_query_module = 166;
+  syscall_nr_poll = 167;
+  syscall_nr_nfsservctl = 168;
+  syscall_nr_setresgid = 169;
+  syscall_nr_getresgid = 170;
+  syscall_nr_prctl = 171;
+  syscall_nr_rt_sigreturn = 172;
+  syscall_nr_rt_sigaction = 173;
+  syscall_nr_rt_sigprocmask = 174;
+  syscall_nr_rt_sigpending = 175;
+  syscall_nr_rt_sigtimedwait = 176;
+  syscall_nr_rt_sigqueueinfo = 177;
+  syscall_nr_rt_sigsuspend = 178;
+  syscall_nr_pread = 179;
+  syscall_nr_pwrite = 180;
+  syscall_nr_chown = 181;
+  syscall_nr_getcwd = 182;
+  syscall_nr_capget = 183;
+  syscall_nr_capset = 184;
+  syscall_nr_sigaltstack = 185;
+  syscall_nr_sendfile = 186;
+  { some people actually want streams  }
+  syscall_nr_getpmsg = 187;
+  { some people actually want streams  }
+  syscall_nr_putpmsg = 188;
+  syscall_nr_vfork = 189;
+  { SuS compliant getrlimit  }
+  syscall_nr_ugetrlimit = 190;
+  syscall_nr_readahead = 191;
+  syscall_nr_mmap2 = 192;
+  syscall_nr_truncate64 = 193;
+  syscall_nr_ftruncate64 = 194;
+  syscall_nr_stat64 = 195;
+  syscall_nr_lstat64 = 196;
+  syscall_nr_fstat64 = 197;
+  syscall_nr_pciconfig_read = 198;
+  syscall_nr_pciconfig_write = 199;
+  syscall_nr_pciconfig_iobase = 200;
+  syscall_nr_multiplexer = 201;
+  syscall_nr_getdents64 = 202;
+  syscall_nr_pivot_root = 203;
+  syscall_nr_fcntl64 = 204;
+  syscall_nr_madvise = 205;
+  syscall_nr_mincore = 206;
+  syscall_nr_gettid = 207;
+  syscall_nr_tkill = 208;
+  syscall_nr_setxattr = 209;
+  syscall_nr_lsetxattr = 210;
+  syscall_nr_fsetxattr = 211;
+  syscall_nr_getxattr = 212;
+  syscall_nr_lgetxattr = 213;
+  syscall_nr_fgetxattr = 214;
+  syscall_nr_listxattr = 215;
+  syscall_nr_llistxattr = 216;
+  syscall_nr_flistxattr = 217;
+  syscall_nr_removexattr = 218;
+  syscall_nr_lremovexattr = 219;
+  syscall_nr_fremovexattr = 220;
+  syscall_nr_futex = 221;
+  syscall_nr_sched_setaffinity = 222;
+  syscall_nr_sched_getaffinity = 223;
+  { 224 currently unused  }
+  syscall_nr_tuxcall = 225;
+  syscall_nr_sendfile64 = 226;
+  syscall_nr_io_setup = 227;
+  syscall_nr_io_destroy = 228;
+  syscall_nr_io_getevents = 229;
+  syscall_nr_io_submit = 230;
+  syscall_nr_io_cancel = 231;
+  syscall_nr_set_tid_address = 232;
+  syscall_nr_fadvise64 = 233;
+  syscall_nr_exit_group = 234;
+  syscall_nr_lookup_dcookie = 235;
+  syscall_nr_epoll_create = 236;
+  syscall_nr_epoll_ctl = 237;
+  syscall_nr_epoll_wait = 238;
+  syscall_nr_remap_file_pages = 239;
+  syscall_nr_timer_create = 240;
+  syscall_nr_timer_settime = 241;
+  syscall_nr_timer_gettime = 242;
+  syscall_nr_timer_getoverrun = 243;
+  syscall_nr_timer_delete = 244;
+  syscall_nr_clock_settime = 245;
+  syscall_nr_clock_gettime = 246;
+  syscall_nr_clock_getres = 247;
+  syscall_nr_clock_nanosleep = 248;
+  syscall_nr_swapcontext = 249;
+  syscall_nr_tgkill = 250;
+  syscall_nr_utimes = 251;
+  syscall_nr_statfs64 = 252;
+  syscall_nr_fstatfs64 = 253;
+  syscall_nr_fadvise64_64 = 254;
+  syscall_nr_rtas = 255;
+  syscall_nr_mq_open = 262;
+  syscall_nr_mq_unlink = 263;
+  syscall_nr_mq_timedsend = 264;
+  syscall_nr_mq_timedreceive = 265;
+  syscall_nr_mq_notify = 266;
+  syscall_nr_mq_getsetattr = 267;
+  syscall_nr_kexec_load = 268;
+  syscall_nr_add_key = 269;
+  syscall_nr_request_key = 270;
+  syscall_nr_keyctl = 271;
+  syscall_nr_waitid = 272;