On Fri, 28 Aug 2020 17:18:06 +0200 peterz@xxxxxxxxxxxxx wrote: > On Sat, Aug 29, 2020 at 12:10:10AM +0900, Masami Hiramatsu wrote: > > On Fri, 28 Aug 2020 14:52:36 +0200 > > peterz@xxxxxxxxxxxxx wrote: > > > > > synchronize_rcu(); > > > > > > This one might help, this means we can do rcu_read_lock() around > > > get_kretprobe() and it's usage. Can we call rp->handler() under RCU? > > > > Yes, as I said above, the get_kretprobe() (and kretprobe handler) must be > > called under preempt-disabled. > > Then we don't need the ordering; we'll need READ_ONCE() (or > rcu_derefernce()) to make sure the address dependency works on Alpha. > And a comment/assertion that explains this might not go amiss in > get_kretprobe(). OK, I'll rewrite it with READ_ONCE() and rcu_read_lock_any_held(). Thank you, -- Masami Hiramatsu <mhiramat@xxxxxxxxxx>