Lines Matching refs:outcome_store
40 struct hl_cs_outcome_store *outcome_store, in hl_push_cs_outcome() argument
66 spin_lock_irqsave(&outcome_store->db_lock, flags); in hl_push_cs_outcome()
68 if (list_empty(&outcome_store->free_list)) { in hl_push_cs_outcome()
69 node = list_last_entry(&outcome_store->used_list, in hl_push_cs_outcome()
74 node = list_last_entry(&outcome_store->free_list, in hl_push_cs_outcome()
84 list_add(&node->list_link, &outcome_store->used_list); in hl_push_cs_outcome()
85 hash_add(outcome_store->outcome_map, &node->map_link, node->seq); in hl_push_cs_outcome()
87 spin_unlock_irqrestore(&outcome_store->db_lock, flags); in hl_push_cs_outcome()
90 static bool hl_pop_cs_outcome(struct hl_cs_outcome_store *outcome_store, in hl_pop_cs_outcome() argument
96 spin_lock_irqsave(&outcome_store->db_lock, flags); in hl_pop_cs_outcome()
98 hash_for_each_possible(outcome_store->outcome_map, node, map_link, seq) in hl_pop_cs_outcome()
105 list_add(&node->list_link, &outcome_store->free_list); in hl_pop_cs_outcome()
107 spin_unlock_irqrestore(&outcome_store->db_lock, flags); in hl_pop_cs_outcome()
112 spin_unlock_irqrestore(&outcome_store->db_lock, flags); in hl_pop_cs_outcome()
781 hl_push_cs_outcome(hdev, &cs->ctx->outcome_store, cs->sequence, in cs_do_release()
2660 if (!hl_pop_cs_outcome(&ctx->outcome_store, seq, ×tamp_kt, &error)) { in hl_wait_for_fence()