• Home
  • Raw
  • Download

Lines Matching refs:tp_funcs

297 static enum tp_func_state nr_func_state(const struct tracepoint_func *tp_funcs)  in nr_func_state()  argument
299 if (!tp_funcs) in nr_func_state()
301 if (!tp_funcs[1].func) in nr_func_state()
303 if (!tp_funcs[2].func) in nr_func_state()
308 static void tracepoint_update_call(struct tracepoint *tp, struct tracepoint_func *tp_funcs) in tracepoint_update_call() argument
315 if (nr_func_state(tp_funcs) == TP_FUNC_1) in tracepoint_update_call()
316 func = tp_funcs[0].func; in tracepoint_update_call()
327 struct tracepoint_func *old, *tp_funcs; in tracepoint_add_func() local
336 tp_funcs = rcu_dereference_protected(tp->funcs, in tracepoint_add_func()
338 old = func_add(&tp_funcs, func, prio); in tracepoint_add_func()
350 switch (nr_func_state(tp_funcs)) { in tracepoint_add_func()
358 tracepoint_update_call(tp, tp_funcs); in tracepoint_add_func()
360 rcu_assign_pointer(tp->funcs, tp_funcs); in tracepoint_add_func()
365 tracepoint_update_call(tp, tp_funcs); in tracepoint_add_func()
373 rcu_assign_pointer(tp->funcs, tp_funcs); in tracepoint_add_func()
378 if (tp_funcs[0].data != old[0].data) in tracepoint_add_func()
399 struct tracepoint_func *old, *tp_funcs; in tracepoint_remove_func() local
401 tp_funcs = rcu_dereference_protected(tp->funcs, in tracepoint_remove_func()
403 old = func_remove(&tp_funcs, func); in tracepoint_remove_func()
407 if (tp_funcs == old) in tracepoint_remove_func()
411 switch (nr_func_state(tp_funcs)) { in tracepoint_remove_func()
419 tracepoint_update_call(tp, tp_funcs); in tracepoint_remove_func()
429 rcu_assign_pointer(tp->funcs, tp_funcs); in tracepoint_remove_func()
437 if (tp_funcs[0].data != old[0].data) in tracepoint_remove_func()
441 tracepoint_update_call(tp, tp_funcs); in tracepoint_remove_func()
446 rcu_assign_pointer(tp->funcs, tp_funcs); in tracepoint_remove_func()
451 if (tp_funcs[0].data != old[0].data) in tracepoint_remove_func()