summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2013-06-29 12:24:06 -0400
committerRich Felker <dalias@aerifal.cx>2013-06-29 12:24:06 -0400
commit2b0af609ef3d90fe6433270f2e2f62fc77ec7441 (patch)
tree338e346e14ae53b5e9511e35cffcde431e7ccec2
parent509b50eda8ea7d4a28f738e4cf8ea98d25959f00 (diff)
downloadmusl-2b0af609ef3d90fe6433270f2e2f62fc77ec7441.tar.gz
add some comments about the mips ksigaction structure weirdness
-rw-r--r--arch/mips/ksigaction.h3
-rw-r--r--src/internal/ksigaction.h3
2 files changed, 6 insertions, 0 deletions
diff --git a/arch/mips/ksigaction.h b/arch/mips/ksigaction.h
index 648ce068..6d731646 100644
--- a/arch/mips/ksigaction.h
+++ b/arch/mips/ksigaction.h
@@ -2,5 +2,8 @@ struct k_sigaction {
unsigned flags;
void (*handler)(int);
unsigned long mask[4];
+ /* The following field is past the end of the structure the
+ * kernel will read or write, and exists only to avoid having
+ * mips-specific preprocessor conditionals in sigaction.c. */
void (*restorer)();
};
diff --git a/src/internal/ksigaction.h b/src/internal/ksigaction.h
index 9a70f937..2eacabf1 100644
--- a/src/internal/ksigaction.h
+++ b/src/internal/ksigaction.h
@@ -1,3 +1,6 @@
+/* This is the structure used for the rt_sigaction syscall on most archs,
+ * but it can be overridden by a file with the same name in the top-level
+ * arch dir for a given arch, if necessary. */
struct k_sigaction {
void (*handler)(int);
unsigned long flags;