patch-2.3.21 linux/kernel/signal.c

Next file: linux/mm/filemap.c
Previous file: linux/kernel/fork.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.20/linux/kernel/signal.c linux/kernel/signal.c
@@ -353,13 +353,9 @@
 				break;
 			}
 		} else {
-			/* If this was sent by a rt mechanism, try again.  */
-			if (info->si_code < 0) {
-				ret = -EAGAIN;
-				goto out;
-			}
-			/* Otherwise, mention that the signal is pending,
-			   but don't queue the info.  */
+			/* Queue overflow, we have to abort. */
+			ret = -EAGAIN;
+			goto out;
 		}
 	}
 
@@ -792,6 +788,8 @@
 {
 	struct siginfo info;
 
+	memset(&info, 0, sizeof(info));
+	
 	info.si_signo = sig;
 	info.si_errno = 0;
 	info.si_code = SI_USER;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)