aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Chagin <dchagin@FreeBSD.org>2011-02-15 21:46:36 +0000
committerDmitry Chagin <dchagin@FreeBSD.org>2011-02-15 21:46:36 +0000
commit09d6cb0a23a1a8d045af492b17b75bd98e5b6d32 (patch)
tree942d40e010271adecb89335b134ba8fb75f78ab4
parentf3481dd9ab406c9baebdf4245d36c445bb2d6921 (diff)
downloadsrc-09d6cb0a23a1a8d045af492b17b75bd98e5b6d32.tar.gz
src-09d6cb0a23a1a8d045af492b17b75bd98e5b6d32.zip
For realtime signals fill the sigval value.
Notes
Notes: svn path=/head/; revision=218720
-rw-r--r--sys/amd64/linux32/linux.h1
-rw-r--r--sys/compat/linux/linux_signal.c4
-rw-r--r--sys/i386/linux/linux.h1
3 files changed, 6 insertions, 0 deletions
diff --git a/sys/amd64/linux32/linux.h b/sys/amd64/linux32/linux.h
index 87597ee7a675..555a91256b18 100644
--- a/sys/amd64/linux32/linux.h
+++ b/sys/amd64/linux32/linux.h
@@ -306,6 +306,7 @@ struct l_new_utsname {
#define LINUX_SIGPOLL LINUX_SIGIO
#define LINUX_SIGPWR 30
#define LINUX_SIGSYS 31
+#define LINUX_SIGRTMIN 32
#define LINUX_SIGTBLSZ 31
#define LINUX_NSIG_WORDS 2
diff --git a/sys/compat/linux/linux_signal.c b/sys/compat/linux/linux_signal.c
index 4a233c84c0fc..82dd2ee427c0 100644
--- a/sys/compat/linux/linux_signal.c
+++ b/sys/compat/linux/linux_signal.c
@@ -649,4 +649,8 @@ ksiginfo_to_lsiginfo(ksiginfo_t *ksi, l_siginfo_t *lsi, l_int sig)
lsi->lsi_uid = ksi->ksi_uid;
break;
}
+ if (sig >= LINUX_SIGRTMIN) {
+ lsi->lsi_int = ksi->ksi_info.si_value.sival_int;
+ lsi->lsi_ptr = PTROUT(ksi->ksi_info.si_value.sival_ptr);
+ }
}
diff --git a/sys/i386/linux/linux.h b/sys/i386/linux/linux.h
index 08f0fbdad550..78958db50f28 100644
--- a/sys/i386/linux/linux.h
+++ b/sys/i386/linux/linux.h
@@ -281,6 +281,7 @@ struct l_new_utsname {
#define LINUX_SIGPOLL LINUX_SIGIO
#define LINUX_SIGPWR 30
#define LINUX_SIGSYS 31
+#define LINUX_SIGRTMIN 32
#define LINUX_SIGTBLSZ 31
#define LINUX_NSIG_WORDS 2