Lines Matching refs:calls
26 struct cxl_calls *calls = NULL; in cxl_calls_get() local
29 calls = rcu_dereference(cxl_calls); in cxl_calls_get()
30 if (calls && !try_module_get(calls->owner)) in cxl_calls_get()
31 calls = NULL; in cxl_calls_get()
34 return calls; in cxl_calls_get()
37 static inline void cxl_calls_put(struct cxl_calls *calls) in cxl_calls_put() argument
39 BUG_ON(calls != cxl_calls); in cxl_calls_put()
52 static inline void cxl_calls_put(struct cxl_calls *calls) { } in cxl_calls_put() argument
58 struct cxl_calls *calls; in cxl_slbia() local
60 calls = cxl_calls_get(); in cxl_slbia()
61 if (!calls) in cxl_slbia()
65 calls->cxl_slbia(mm); in cxl_slbia()
67 cxl_calls_put(calls); in cxl_slbia()
70 int register_cxl_calls(struct cxl_calls *calls) in register_cxl_calls() argument
75 rcu_assign_pointer(cxl_calls, calls); in register_cxl_calls()
80 void unregister_cxl_calls(struct cxl_calls *calls) in unregister_cxl_calls() argument
82 BUG_ON(cxl_calls->owner != calls->owner); in unregister_cxl_calls()