On Tue, Oct 5, 2021 at 12:40 PM Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > > I may try it, because exposing the structure I want to hide, is pulling out > a lot of other crap with it :-p One option is just "don't do rcu_access of a pointer that you're not supposed to touch in a file that isn't supposed to touch it". IOW, why are you doing that pid_list = rcu_dereference_sched(tr->function_pids); in a place that isn't supposed to look at the pid_list in the first place? Yeah, yeah, I see how you just pass it to trace_ignore_this_task() as an argument, but maybe the real fix is to just pass that trace_array pointer instead? IOW, if you want to keep that structure private, maybe you really just shouldn't have non-private users of it randomly doing RCU lookups of it? Linus