diff options
author | jurij@wooyd.org <jurij@wooyd.org> | 2005-04-29 18:04:37 -0700 |
---|---|---|
committer | Greg KH <gregkh@suse.de> | 2005-05-12 10:00:22 -0700 |
commit | f94f30de06786fbe86b9f2d03de346a5273a7ed4 (patch) | |
tree | 755e50c18b37118cb8e83e4ea0e71c3631fab5c6 | |
parent | 12ca665cce7f63eac7064a7aabd71afe53b70be7 (diff) | |
download | linux-stable-f94f30de06786fbe86b9f2d03de346a5273a7ed4.tar.gz linux-stable-f94f30de06786fbe86b9f2d03de346a5273a7ed4.tar.bz2 linux-stable-f94f30de06786fbe86b9f2d03de346a5273a7ed4.zip |
[PATCH] sparc64: Fix copy_sigingo_to_user32()
Because this routine was not filling in the siginfo
values for si_band and si_fd, this broke applications
trying to actually get at this data.
This makes the sparc64 code in line with PowerPC64's
implementation, which already gets it right.
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | arch/sparc64/kernel/signal32.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/sparc64/kernel/signal32.c b/arch/sparc64/kernel/signal32.c index 4b060cacf995..7f8853213d8a 100644 --- a/arch/sparc64/kernel/signal32.c +++ b/arch/sparc64/kernel/signal32.c @@ -192,10 +192,13 @@ int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from) err |= __put_user(from->si_uid, &to->si_uid); break; case __SI_FAULT >> 16: - case __SI_POLL >> 16: err |= __put_user(from->si_trapno, &to->si_trapno); err |= __put_user((unsigned long)from->si_addr, &to->si_addr); break; + case __SI_POLL >> 16: + err |= __put_user(from->si_band, &to->si_band); + err |= __put_user(from->si_fd, &to->si_fd); + break; case __SI_RT >> 16: /* This is not generated by the kernel as of now. */ case __SI_MESGQ >> 16: err |= __put_user(from->si_pid, &to->si_pid); |