Re: [trace:tip/perf/core 5/15]kernel/trace/trace_functions.c:79:16: sparse: incorrect type in initializer(different address spaces)

From: Steven Rostedt
Date: Sat Mar 02 2013 - 08:15:28 EST


On Sat, 2013-03-02 at 08:12 -0500, Steven Rostedt wrote:

> Hmm, actually it seems to be complaining everywhere but in trace.c which
> is where the per_cpu was allocated. Do I need to annotate the trace.h
> header to specify (at least to sparse) that the pointer is allocated per
> cpu?

I guess I need this patch:

diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
index c597523..50a9c81 100644
--- a/kernel/trace/trace.h
+++ b/kernel/trace/trace.h
@@ -198,7 +198,7 @@ struct trace_array {
struct list_head systems;
struct list_head events;
struct task_struct *waiter;
- struct trace_array_cpu *data;
+ struct trace_array_cpu __percpu *data;
};

enum {

-- Steve


--
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/