This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

MIPS struct sigaction


Hongjiu,

I'd like to get rid of the sa_restorer / SA_RESTORER functionality in
the kernel interface and replace it with trampolines that stay just
above STACK_TOP on the kernel stack for the entire life time of a
process.  That would improve signal performance for all processors and
for some like the SB1250 where the cacheflush operation requires on IPI
the impact should be quite noticable.

Afaik nobody was ever using SA_RESTORER on MIPS and therefore I think we
should also remove the sa_restorer field from Glibc's definition of
struct sigaction - exposing them to the user doesn't make sense anyway.

Would this patch be ok with you?

  Ralf

--- sigaction.h.orig	Wed Feb 26 16:26:11 2003
+++ sigaction.h	Wed Feb 26 16:26:02 2003
@@ -45,12 +45,8 @@
     /* Additional set of signals to be blocked.  */
     __sigset_t sa_mask;
 
-    /* The ABI says here are two unused ints following. */
-    /* Restore handler.  */
-    void (*sa_restorer) (void);
-
 #if _MIPS_ISA == _MIPS_ISA_MIPS1 || _MIPS_ISA == _MIPS_ISA_MIPS2
-    int sa_resv[1];
+    int sa_resv[2];
 #endif
   };
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]