tree 19b2c9e85dcab6df9250ba38df885d951c96e0a6
parent dadeafdfc8da8c27e5a68e0706b9856eaac89391
author Jurij Smakov <[EMAIL PROTECTED]> Mon, 18 Apr 2005 08:03:12 -0700
committer Linus Torvalds <[EMAIL PROTECTED]> Mon, 18 Apr 2005 08:03:12 -0700

[PATCH] sparc64: Fix copy_sigingo_to_user32()

The compat routine to copy over this data structure was not
handling SI_POLL correctly, breaking various fcntl() variants
in compat tasks.

Signed-off-by: David S. Miller <[EMAIL PROTECTED]>
Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>

 sparc64/kernel/signal32.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)

Index: arch/sparc64/kernel/signal32.c
===================================================================
--- 17993d26e93e598a2f449063fe213afad2a45814/arch/sparc64/kernel/signal32.c  
(mode:100644 sha1:859255cf67622dbddff7ba42b084b17f5cf028c9)
+++ 19b2c9e85dcab6df9250ba38df885d951c96e0a6/arch/sparc64/kernel/signal32.c  
(mode:100644 sha1:9a375e975cffbdcc0d6e2403addf7e203459b2e5)
@@ -192,10 +192,13 @@
                        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);
-
To unsubscribe from this list: send the line "unsubscribe bk-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to