Lines Matching refs:outcome_store
39 struct hl_cs_outcome_store *outcome_store, in hl_push_cs_outcome() argument
65 spin_lock_irqsave(&outcome_store->db_lock, flags); in hl_push_cs_outcome()
67 if (list_empty(&outcome_store->free_list)) { in hl_push_cs_outcome()
68 node = list_last_entry(&outcome_store->used_list, in hl_push_cs_outcome()
73 node = list_last_entry(&outcome_store->free_list, in hl_push_cs_outcome()
83 list_add(&node->list_link, &outcome_store->used_list); in hl_push_cs_outcome()
84 hash_add(outcome_store->outcome_map, &node->map_link, node->seq); in hl_push_cs_outcome()
86 spin_unlock_irqrestore(&outcome_store->db_lock, flags); in hl_push_cs_outcome()
89 static bool hl_pop_cs_outcome(struct hl_cs_outcome_store *outcome_store, in hl_pop_cs_outcome() argument
95 spin_lock_irqsave(&outcome_store->db_lock, flags); in hl_pop_cs_outcome()
97 hash_for_each_possible(outcome_store->outcome_map, node, map_link, seq) in hl_pop_cs_outcome()
104 list_add(&node->list_link, &outcome_store->free_list); in hl_pop_cs_outcome()
106 spin_unlock_irqrestore(&outcome_store->db_lock, flags); in hl_pop_cs_outcome()
111 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()
2508 if (!hl_pop_cs_outcome(&ctx->outcome_store, seq, ×tamp_kt, &error)) { in hl_wait_for_fence()