A complete reworking of Valgrind's handling of system calls and signals,
with the aim of making it more robust, more correct and perhaps faster.

This patch removes the need to poll blocking syscalls, by adding a proxy
LWP for each application thread.  This LWP is a kernel thread whose job
is to run all (potentially) blocking syscalls, and also to handle signals.

This allows the kernel to do more of the work of dealing with signals,
so on kernels which do this properly (2.6), Valgrind's behavious is a
lot more posix compliant.  On base 2.4 kernels, we emulate some of the
missing 2.6 functionality.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1918 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/configure.in b/configure.in
index 62e1d0f..d241195 100644
--- a/configure.in
+++ b/configure.in
@@ -114,7 +114,7 @@
 
      *) 
 	    AC_MSG_RESULT([unsupported (${kernel})])
-	    AC_MSG_ERROR([Valgrind works on kernels 2.2 and 2.4])
+	    AC_MSG_ERROR([Valgrind works on kernels 2.2, 2.4, 2.6])
 	    ;;
 esac