[PATCH 3/9] futex.h: fix compat builds

Nathan Lynch ntl at pobox.com
Wed Sep 16 01:56:52 PDT 2009

With any build where CONFIG_COMPAT=y:

checkpoint/process.c: In function 'save_task_robust_futex_list':
checkpoint/process.c:37: error: implicit declaration of function 'ptr_to_compat'
checkpoint/process.c:38: error: dereferencing pointer to incomplete type
checkpoint/process.c: In function 'restore_task_robust_futex_list':
checkpoint/process.c:54: error: implicit declaration of function 'compat_ptr'
checkpoint/process.c:54: warning: assignment makes pointer from integer without a cast
checkpoint/process.c:55: error: implicit declaration of function 'do_compat_set_robust_list'

ptr_to_compat et al need compat.h; however, futex.h is exported while
compat.h is not.  So the include is guarded by #ifdef __KERNEL__.

Signed-off-by: Nathan Lynch <ntl at pobox.com>
 include/linux/futex.h |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/include/linux/futex.h b/include/linux/futex.h
index 2e126a9..3fb9f33 100644
--- a/include/linux/futex.h
+++ b/include/linux/futex.h
@@ -4,6 +4,10 @@
 #include <linux/compiler.h>
 #include <linux/types.h>
+#ifdef __KERNEL__
+#include <linux/compat.h>
 struct inode;
 struct mm_struct;
 struct task_struct;

More information about the Containers mailing list