-static inline int __free_nx_info(struct nx_info *nxi)
-{
- int usecnt, refcnt;
-
- BUG_ON(!nxi);
-
- usecnt = atomic_read(&nxi->nx_usecnt);
- BUG_ON(usecnt < 0);
-
- refcnt = atomic_read(&nxi->nx_refcnt);
- BUG_ON(refcnt < 0);
-
- if (!usecnt)
- __dealloc_nx_info(nxi);
- return usecnt;
-}
-
-static void __rcu_put_nx_info(struct rcu_head *head)
-{
- struct nx_info *nxi = container_of(head, struct nx_info, nx_rcu);
-
- vxdprintk(VXD_CBIT(nid, 3),
- "__rcu_put_nx_info(%p[#%d]): %d,%d",
- nxi, nxi->nx_id,
- atomic_read(&nxi->nx_usecnt),
- atomic_read(&nxi->nx_refcnt));
- put_nx_info(nxi);
-}
-