summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
Diffstat (limited to 'sys')
-rw-r--r--sys/amd64/ia32/ia32_signal.c4
-rw-r--r--sys/compat/ia32/ia32_signal.h21
2 files changed, 22 insertions, 3 deletions
diff --git a/sys/amd64/ia32/ia32_signal.c b/sys/amd64/ia32/ia32_signal.c
index eaf64f4..a29abf0 100644
--- a/sys/amd64/ia32/ia32_signal.c
+++ b/sys/amd64/ia32/ia32_signal.c
@@ -754,5 +754,7 @@ siginfo_to_ia32siginfo(siginfo_t *src, struct ia32_siginfo *dst)
dst->si_addr = dst->si_addr;
dst->si_value.sigval_int = src->si_value.sival_int;
dst->si_band = src->si_band;
- dst->__spare__[0] = src->si_trapno;
+ dst->si_trapno = src->si_trapno;
+ dst->si_timerid = src->si_timerid;
+ dst->si_overrun = src->si_overrun;
}
diff --git a/sys/compat/ia32/ia32_signal.h b/sys/compat/ia32/ia32_signal.h
index 267d472..8868a7e 100644
--- a/sys/compat/ia32/ia32_signal.h
+++ b/sys/compat/ia32/ia32_signal.h
@@ -155,8 +155,25 @@ struct ia32_siginfo {
int si_status; /* exit value */
u_int32_t si_addr; /* faulting instruction */
union ia32_sigval si_value; /* signal value */
- int32_t si_band; /* band event for SIGPOLL */
- int __spare__[7]; /* gimme some slack */
+ union {
+ struct {
+ int _trapno;/* machine specific trap code */
+ } _fault;
+ struct {
+ int _timerid;
+ int _overrun;
+ } _timer;
+ struct {
+ int _mqd;
+ } _mesgq;
+ struct {
+ int _band; /* band event for SIGPOLL */
+ } _poll; /* was this ever used ? */
+ struct {
+ int __spare1__;
+ int __spare2__[7];
+ } __spare__;
+ } _reason;
};
#ifdef COMPAT_FREEBSD4
OpenPOWER on IntegriCloud