Re: [trace:ftrace/core 1/3] include/trace/syscall.h:39:6: error: 'TIF_SYSCALL_TRACEPOINT' undeclared

From: Steven Rostedt
Date: Thu Jun 19 2014 - 10:10:23 EST


On Wed, 18 Jun 2014 21:15:59 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> On Thu, 19 Jun 2014 03:25:46 +0800
> kbuild test robot <fengguang.wu@xxxxxxxxx> wrote:
>
> > tree: git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git ftrace/core
> > head: 72fa1a896d8ef355e81270667803ceb16a3dd13f
> > commit: 32def52ce8faec72c353b6304ca98176687e18f1 [1/3] tracing: Fix syscall_*regfunc() vs copy_process() race
> > config: make ARCH=xtensa allyesconfig

I got a bit confused because I just noticed that the patch does include
thread_info.h. But then I noticed that TIF_SYSCALL_TRACEPOINT is
defined in arch/x86/include/asm/thread_info.h, and this is generic
code. and the error here is for ARCH=xtensa. We can not be using this.

Crap, I just sent a pull request to Linus, I'll have to tell him not to
pull it.

I'll look for other solutions.

Thanks!

-- Steve



> >
> > All error/warnings:
> >
> > In file included from include/linux/syscalls.h:80:0,
> > from fs/ecryptfs/keystore.c:29:
> > include/trace/syscall.h: In function 'syscall_tracepoint_update':
> > >> include/trace/syscall.h:39:6: error: 'TIF_SYSCALL_TRACEPOINT' undeclared (first use in this function)
> > include/trace/syscall.h:39:6: note: each undeclared identifier is reported only once for each function it appears in
> >
> > vim +/TIF_SYSCALL_TRACEPOINT +39 include/trace/syscall.h
> >
> > 33 struct ftrace_event_call *exit_event;
> > 34 };
> > 35
> > 36 #ifdef CONFIG_TRACEPOINTS
> > 37 static inline void syscall_tracepoint_update(struct task_struct *p)
> > 38 {
> > > 39 if (test_thread_flag(TIF_SYSCALL_TRACEPOINT))
> > 40 set_tsk_thread_flag(p, TIF_SYSCALL_TRACEPOINT);
> > 41 else
> > 42 clear_tsk_thread_flag(p, TIF_SYSCALL_TRACEPOINT);
> >
> > ---
> > 0-DAY kernel build testing backend Open Source Technology Center
> > http://lists.01.org/mailman/listinfo/kbuild Intel Corporation
>
> My allyesconfig build passed with flying colors. Although we should
> probably still add the include of thread_info.h into trace/syscalls.h,
> there's no reason that ecryptfs/keystore.c includes linux/syscalls.h.
>
> I suggest adding the patch below.
>
> -- Steve
>
> From 58029546c4acf896b9ce01a820e0093e37bb98be Mon Sep 17 00:00:00 2001
> From: "Steven Rostedt (Red Hat)" <rostedt@xxxxxxxxxxx>
> Date: Wed, 18 Jun 2014 21:12:38 -0400
> Subject: [PATCH] ecryptfs: Remove unnecessary include of syscall.h in
> keystore.c
>
> There's no reason to include syscalls.h in keystore.c. Remove it.
>
> Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
> ---
> fs/ecryptfs/keystore.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/fs/ecryptfs/keystore.c b/fs/ecryptfs/keystore.c
> index 4725a07f003c..831c5f8529be 100644
> --- a/fs/ecryptfs/keystore.c
> +++ b/fs/ecryptfs/keystore.c
> @@ -26,7 +26,6 @@
> */
>
> #include <linux/string.h>
> -#include <linux/syscalls.h>
> #include <linux/pagemap.h>
> #include <linux/key.h>
> #include <linux/random.h>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/