Lines Matching refs:xfrm_input_afinfo
22 static struct xfrm_input_afinfo __rcu *xfrm_input_afinfo[NPROTO]; variable
24 int xfrm_input_register_afinfo(struct xfrm_input_afinfo *afinfo) in xfrm_input_register_afinfo()
33 if (unlikely(xfrm_input_afinfo[afinfo->family] != NULL)) in xfrm_input_register_afinfo()
36 rcu_assign_pointer(xfrm_input_afinfo[afinfo->family], afinfo); in xfrm_input_register_afinfo()
42 int xfrm_input_unregister_afinfo(struct xfrm_input_afinfo *afinfo) in xfrm_input_unregister_afinfo()
51 if (likely(xfrm_input_afinfo[afinfo->family] != NULL)) { in xfrm_input_unregister_afinfo()
52 if (unlikely(xfrm_input_afinfo[afinfo->family] != afinfo)) in xfrm_input_unregister_afinfo()
55 RCU_INIT_POINTER(xfrm_input_afinfo[afinfo->family], NULL); in xfrm_input_unregister_afinfo()
63 static struct xfrm_input_afinfo *xfrm_input_get_afinfo(unsigned int family) in xfrm_input_get_afinfo()
65 struct xfrm_input_afinfo *afinfo; in xfrm_input_get_afinfo()
70 afinfo = rcu_dereference(xfrm_input_afinfo[family]); in xfrm_input_get_afinfo()
76 static void xfrm_input_put_afinfo(struct xfrm_input_afinfo *afinfo) in xfrm_input_put_afinfo()
85 struct xfrm_input_afinfo *afinfo = xfrm_input_get_afinfo(family); in xfrm_rcv_cb()