Bladeren bron

* rt_sigaction for all cpus

peter 20 jaren geleden
bovenliggende
commit
523f429d7a
2 gewijzigde bestanden met toevoegingen van 15 en 27 verwijderingen
  1. 5 8
      rtl/linux/osmain.inc
  2. 10 19
      rtl/linux/ossysc.inc

+ 5 - 8
rtl/linux/osmain.inc

@@ -492,13 +492,7 @@ begin
   FillChar(act, sizeof(SigActionRec),0);
   FillChar(act, sizeof(SigActionRec),0);
   { initialize handler                    }
   { initialize handler                    }
   act.sa_handler := @SignalToRunError;
   act.sa_handler := @SignalToRunError;
-{$ifdef RTSIGACTION}
-  act.sa_flags:=SA_SIGINFO
-{$ifdef cpux86_64}
-    or $4000000
-{$endif cpux86_64}
-    ;
-{$endif RTSIGACTION}
+  act.sa_flags:=SA_SIGINFO;
   FpSigAction(SIGFPE,@act,nil);
   FpSigAction(SIGFPE,@act,nil);
   FpSigAction(SIGSEGV,@act,nil);
   FpSigAction(SIGSEGV,@act,nil);
   FpSigAction(SIGBUS,@act,nil);
   FpSigAction(SIGBUS,@act,nil);
@@ -565,7 +559,10 @@ end;
 
 
 {
 {
  $Log$
  $Log$
- Revision 1.23  2005-01-30 18:01:15  peter
+ Revision 1.24  2005-01-31 20:13:24  peter
+   * rt_sigaction for all cpus
+
+ Revision 1.23  2005/01/30 18:01:15  peter
    * signal cleanup for linux
    * signal cleanup for linux
    * sigactionhandler instead of tsigaction for bsds
    * sigactionhandler instead of tsigaction for bsds
    * sigcontext moved to cpu dir
    * sigcontext moved to cpu dir

+ 10 - 19
rtl/linux/ossysc.inc

@@ -15,10 +15,6 @@
 
 
  ****************************************************************************
  ****************************************************************************
 }
 }
-{$if defined(CPUARM) or defined(CPUX86_64) or defined(CPUSPARC) or defined(cpui386)}
-  {$define RTSIGACTION}
-{$endif CPUARM}
-
 {$I syscallh.inc}
 {$I syscallh.inc}
 {$I ostypes.inc}
 {$I ostypes.inc}
 
 
@@ -227,16 +223,12 @@ function Fpsigaction(sig: cint; act : psigactionrec; oact : psigactionrec): cint
   If OldAct is non-nil the previous action is saved there.
   If OldAct is non-nil the previous action is saved there.
 }
 }
 begin
 begin
-{$ifdef RTSIGACTION}
-  {$ifdef cpusparc}
-    { Sparc has an extra stub parameter }
-    Fpsigaction:=do_syscall(syscall_nr_rt_sigaction,TSysParam(sig),TSysParam(act),TSysParam(oact),TSysParam(PtrInt(@Fprt_sigreturn_stub)-8),TSysParam(8));
-  {$else cpusparc}
-    Fpsigaction:=do_syscall(syscall_nr_rt_sigaction,TSysParam(sig),TSysParam(act),TSysParam(oact),TSysParam(8));
-  {$endif cpusparc}
-{$else RTSIGACTION}
-  Fpsigaction:=do_syscall(syscall_nr_sigaction,TSysParam(sig),TSysParam(act),TSysParam(oact));
-{$endif RTSIGACTION}
+{$ifdef cpusparc}
+  { Sparc has an extra stub parameter }
+  Fpsigaction:=do_syscall(syscall_nr_rt_sigaction,TSysParam(sig),TSysParam(act),TSysParam(oact),TSysParam(PtrInt(@Fprt_sigreturn_stub)-8),TSysParam(8));
+{$else cpusparc}
+  Fpsigaction:=do_syscall(syscall_nr_rt_sigaction,TSysParam(sig),TSysParam(act),TSysParam(oact),TSysParam(8));
+{$endif cpusparc}
 end;
 end;
 
 
 
 
@@ -480,11 +472,7 @@ function FPSigProcMask(how:cint;nset : psigset;oset : psigset):cint; [public, al
 }
 }
 
 
 begin
 begin
-{$ifdef RTSIGACTION}
   FPsigprocmask:=do_syscall(syscall_nr_rt_sigprocmask,TSysParam(how),TSysParam(nset),TSysParam(oset),TSysParam(8));
   FPsigprocmask:=do_syscall(syscall_nr_rt_sigprocmask,TSysParam(how),TSysParam(nset),TSysParam(oset),TSysParam(8));
-{$else RTSIGACTION}
-  FPsigprocmask:=do_syscall(syscall_nr_sigprocmask,TSysParam(how),TSysParam(nset),TSysParam(oset),TSysParam(8));
-{$endif RTSIGACTION}
 end;
 end;
 
 
 
 
@@ -545,7 +533,10 @@ end;
 
 
 {
 {
  $Log$
  $Log$
- Revision 1.31  2005-01-31 19:22:48  peter
+ Revision 1.32  2005-01-31 20:13:24  peter
+   * rt_sigaction for all cpus
+
+ Revision 1.31  2005/01/31 19:22:48  peter
    * i386 also needs rtsignal
    * i386 also needs rtsignal
 
 
  Revision 1.30  2004/08/22 12:34:11  florian
  Revision 1.30  2004/08/22 12:34:11  florian