Lines Matching defs:pc_ref

465 	struct nvmet_pr_per_ctrl_ref *pc_ref =
468 complete(&pc_ref->confirm_done);
473 struct nvmet_pr_per_ctrl_ref *pc_ref;
477 xa_for_each(&ns->pr_per_ctrl_refs, idx, pc_ref) {
478 if (uuid_equal(&pc_ref->hostid, hostid)) {
479 percpu_ref_kill_and_confirm(&pc_ref->ref,
481 wait_for_completion(&pc_ref->confirm_done);
621 struct nvmet_pr_per_ctrl_ref *pc_ref;
628 xa_for_each(&ns->pr_per_ctrl_refs, idx, pc_ref) {
629 if (percpu_ref_is_dying(&pc_ref->ref)) {
630 wait_for_completion(&pc_ref->free_done);
631 reinit_completion(&pc_ref->confirm_done);
632 reinit_completion(&pc_ref->free_done);
633 percpu_ref_resurrect(&pc_ref->ref);
1018 struct nvmet_pr_per_ctrl_ref *pc_ref;
1020 pc_ref = xa_load(&req->ns->pr_per_ctrl_refs,
1022 if (unlikely(!percpu_ref_tryget_live(&pc_ref->ref)))
1024 req->pc_ref = pc_ref;
1030 struct nvmet_pr_per_ctrl_ref *pc_ref =
1033 complete(&pc_ref->free_done);
1040 struct nvmet_pr_per_ctrl_ref *pc_ref;
1043 pc_ref = kmalloc_obj(*pc_ref, GFP_ATOMIC);
1044 if (!pc_ref)
1047 ret = percpu_ref_init(&pc_ref->ref, nvmet_pr_ctrl_ns_all_cmds_done,
1052 init_completion(&pc_ref->free_done);
1053 init_completion(&pc_ref->confirm_done);
1054 uuid_copy(&pc_ref->hostid, hostid);
1056 ret = xa_insert(&ns->pr_per_ctrl_refs, idx, pc_ref, GFP_KERNEL);
1061 percpu_ref_exit(&pc_ref->ref);
1063 kfree(pc_ref);
1070 struct nvmet_pr_per_ctrl_ref *pc_ref;
1099 pc_ref = xa_erase(&ns->pr_per_ctrl_refs, ctrl->cntlid);
1100 if (pc_ref)
1101 percpu_ref_exit(&pc_ref->ref);
1102 kfree(pc_ref);
1110 struct nvmet_pr_per_ctrl_ref *pc_ref;
1119 pc_ref = xa_erase(&ns->pr_per_ctrl_refs, ctrl->cntlid);
1120 if (pc_ref)
1121 percpu_ref_exit(&pc_ref->ref);
1122 kfree(pc_ref);
1130 struct nvmet_pr_per_ctrl_ref *pc_ref;
1152 xa_for_each(&ns->pr_per_ctrl_refs, idx, pc_ref) {
1154 percpu_ref_exit(&pc_ref->ref);
1155 kfree(pc_ref);
1163 struct nvmet_pr_per_ctrl_ref *pc_ref;
1172 xa_for_each(&ns->pr_per_ctrl_refs, idx, pc_ref) {
1174 * No command on ns here, we can safely free pc_ref.
1176 pc_ref = xa_erase(&ns->pr_per_ctrl_refs, idx);
1177 percpu_ref_exit(&pc_ref->ref);
1178 kfree(pc_ref);