Lines Matching defs:bakery
17 * bakery lock data structures in coherent memory.
44 static unsigned int bakery_get_ticket(bakery_lock_t *bakery, unsigned int me)
50 assert(bakery_ticket_number(bakery->lock_data[me]) == 0U);
63 bakery->lock_data[me] = make_bakery_data(CHOOSING_TICKET, my_ticket);
65 their_ticket = bakery_ticket_number(bakery->lock_data[they]);
75 bakery->lock_data[me] = make_bakery_data(CHOSEN_TICKET, my_ticket);
82 * Acquire bakery lock
92 void bakery_lock_get(bakery_lock_t *bakery)
100 assert_bakery_entry_valid(me, bakery);
103 my_ticket = bakery_get_ticket(bakery, me);
116 their_bakery_data = bakery->lock_data[they];
135 bakery_ticket_number(bakery->lock_data[they]));
149 void bakery_lock_release(bakery_lock_t *bakery)
153 assert_bakery_entry_valid(me, bakery);
154 assert(bakery_ticket_number(bakery->lock_data[me]) != 0U);
163 bakery->lock_data[me] = 0U;