diff --git a/.gnulib b/.gnulib
index 7c1b995..e2843e3 160000
--- a/.gnulib
+++ b/.gnulib
@@ -1 +1 @@
-Subproject commit 7c1b995a7041ea366acafeb8632e1080f349f03f
+Subproject commit e2843e30e8c2885eb8cbc77e20c4e0f4d562d44d
diff --git a/.x-sc_prohibit_always_true_header_tests b/.x-sc_prohibit_always_true_header_tests
new file mode 100644
index 0000000..ff753ce
--- /dev/null
+++ b/.x-sc_prohibit_always_true_header_tests
@@ -0,0 +1,4 @@
+ChangeLog*
+docs/news.html.in
+python/libvirt-override.c
+python/typewrappers.c
diff --git a/bootstrap.conf b/bootstrap.conf
index baf0bc2..1e93490 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -46,6 +46,7 @@ posix-shell
 pthread
 recv
 random_r
+sched
 send
 setsockopt
 socket
diff --git a/configure.ac b/configure.ac
index c643c56..c187420 100644
--- a/configure.ac
+++ b/configure.ac
@@ -108,7 +108,7 @@ LIBS=$old_libs

 dnl Availability of various common headers (non-fatal if missing).
 AC_CHECK_HEADERS([pwd.h paths.h regex.h sys/syslimits.h \
-  sched.h termios.h sys/poll.h syslog.h mntent.h net/ethernet.h])
+  termios.h sys/poll.h syslog.h mntent.h net/ethernet.h])

 dnl Where are the XDR functions?
 dnl If portablexdr is installed, prefer that.
@@ -495,33 +495,19 @@ if test "$with_libvirtd" = "no" ; then
   with_lxc=no
 fi
 if test "$with_lxc" = "yes" || test "$with_lxc" = "check"; then
-    AC_CHECK_HEADER([sched.h],
-    dnl Header is there, check for unshare()
-    [
-        AC_TRY_LINK([#define _GNU_SOURCE
-            #include <sched.h>], [
-            unshare (1);
-	], [
-            with_lxc=yes
-	], [
-            if test "$with_lxc" = "check"; then
-	        with_lxc=no
-		AC_MSG_NOTICE([Function unshare() not present in <sched.h> header but required for LXC driver, disabling it])
-            else
-	        AC_MSG_ERROR([Function unshare() not present in <sched.h> header, but required for LXC driver])
-            fi
-
-        ])
-
-    dnl Header is not there
-    ],[
+    AC_TRY_LINK([#define _GNU_SOURCE
+        #include <sched.h>
+    ], [
+        unshare (1);
+    ], [
+        with_lxc=yes
+    ], [
         if test "$with_lxc" = "check"; then
             with_lxc=no
-            AC_MSG_NOTICE([Header <sched.h> not found but required for LXC driver, disabling it])
+            AC_MSG_NOTICE([Function unshare() not present in <sched.h> header but required for LXC driver, disabling it])
         else
-            AC_MSG_ERROR([Header <sched.h> not found but required for LXC driver])
+            AC_MSG_ERROR([Function unshare() not present in <sched.h> header, but required for LXC driver])
         fi
-
     ])
 fi
 if test "$with_lxc" = "yes" ; then
diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c
index 132392b..8432bbc 100644
--- a/src/network/bridge_driver.c
+++ b/src/network/bridge_driver.c
@@ -29,7 +29,6 @@
 #include <limits.h>
 #include <string.h>
 #include <stdio.h>
-#include <strings.h>
 #include <stdarg.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/src/openvz/openvz_conf.c b/src/openvz/openvz_conf.c
index 8735cc1..b52f4ac 100644
--- a/src/openvz/openvz_conf.c
+++ b/src/openvz/openvz_conf.c
@@ -1,6 +1,7 @@
 /*
  * openvz_conf.c: config functions for managing OpenVZ VEs
  *
+ * Copyright (C) 2010 Red Hat, Inc.
  * Copyright (C) 2006, 2007 Binary Karma
  * Copyright (C) 2006 Shuveb Hussain
  * Copyright (C) 2007 Anoop Joe Cyriac
@@ -33,7 +34,6 @@
 #include <fcntl.h>
 #include <sys/types.h>
 #include <dirent.h>
-#include <strings.h>
 #include <time.h>
 #include <sys/stat.h>
 #include <unistd.h>
diff --git a/src/openvz/openvz_driver.c b/src/openvz/openvz_driver.c
index 00b8a14..ce159d0 100644
--- a/src/openvz/openvz_driver.c
+++ b/src/openvz/openvz_driver.c
@@ -1,6 +1,7 @@
 /*
  * openvz_driver.c: core driver methods for managing OpenVZ VEs
  *
+ * Copyright (C) 2010 Red Hat, Inc.
  * Copyright (C) 2006, 2007 Binary Karma
  * Copyright (C) 2006 Shuveb Hussain
  * Copyright (C) 2007 Anoop Joe Cyriac
@@ -33,7 +34,6 @@
 #include <limits.h>
 #include <string.h>
 #include <stdio.h>
-#include <strings.h>
 #include <stdarg.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c
index 467ea19..cec99b1 100644
--- a/src/phyp/phyp_driver.c
+++ b/src/phyp/phyp_driver.c
@@ -29,7 +29,6 @@
 #include <sys/stat.h>
 #include <limits.h>
 #include <string.h>
-#include <strings.h>
 #include <stdio.h>
 #include <stdarg.h>
 #include <stdlib.h>
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index 47ae52c..791d954 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -31,7 +31,6 @@
 #include <string.h>
 #include <stdbool.h>
 #include <stdio.h>
-#include <strings.h>
 #include <stdarg.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/src/uml/uml_driver.c b/src/uml/uml_driver.c
index 644ac8b..63fe808 100644
--- a/src/uml/uml_driver.c
+++ b/src/uml/uml_driver.c
@@ -29,7 +29,6 @@
 #include <limits.h>
 #include <string.h>
 #include <stdio.h>
-#include <strings.h>
 #include <stdarg.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/src/util/processinfo.c b/src/util/processinfo.c
index ed2130a..b1b1737 100644
--- a/src/util/processinfo.c
+++ b/src/util/processinfo.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009 Red Hat, Inc.
+ * Copyright (C) 2009-2010 Red Hat, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -21,9 +21,7 @@

 #include <config.h>

-#if HAVE_SCHED_H
-# include <sched.h>
-#endif
+#include <sched.h>

 #include "processinfo.h"
 #include "virterror_internal.h"
