Lines Matching refs:entry
40 ck_hp_stack_push_mpmc(struct ck_stack *target, struct ck_stack_entry *entry) in ck_hp_stack_push_mpmc() argument
43 ck_stack_push_upmc(target, entry); in ck_hp_stack_push_mpmc()
48 ck_hp_stack_trypush_mpmc(struct ck_stack *target, struct ck_stack_entry *entry) in ck_hp_stack_trypush_mpmc() argument
51 return ck_stack_trypush_upmc(target, entry); in ck_hp_stack_trypush_mpmc()
57 struct ck_stack_entry *entry, *update; in ck_hp_stack_pop_mpmc() local
60 entry = ck_pr_load_ptr(&target->head); in ck_hp_stack_pop_mpmc()
61 if (entry == NULL) in ck_hp_stack_pop_mpmc()
64 ck_hp_set_fence(record, 0, entry); in ck_hp_stack_pop_mpmc()
65 } while (entry != ck_pr_load_ptr(&target->head)); in ck_hp_stack_pop_mpmc()
67 while (ck_pr_cas_ptr_value(&target->head, entry, entry->next, &entry) == false) { in ck_hp_stack_pop_mpmc()
68 if (entry == NULL) in ck_hp_stack_pop_mpmc()
71 ck_hp_set_fence(record, 0, entry); in ck_hp_stack_pop_mpmc()
74 while (entry != update) { in ck_hp_stack_pop_mpmc()
76 entry = update; in ck_hp_stack_pop_mpmc()
83 return entry; in ck_hp_stack_pop_mpmc()
89 struct ck_stack_entry *entry; in ck_hp_stack_trypop_mpmc() local
91 entry = ck_pr_load_ptr(&target->head); in ck_hp_stack_trypop_mpmc()
92 if (entry == NULL) in ck_hp_stack_trypop_mpmc()
95 ck_hp_set_fence(record, 0, entry); in ck_hp_stack_trypop_mpmc()
96 if (entry != ck_pr_load_ptr(&target->head)) in ck_hp_stack_trypop_mpmc()
99 if (ck_pr_cas_ptr_value(&target->head, entry, entry->next, &entry) == false) in ck_hp_stack_trypop_mpmc()
102 *r = entry; in ck_hp_stack_trypop_mpmc()