ck_fifo: SPSC FIFO dequeue only requires load depends barrier.

ck_pring
Samy Al Bahra 12 years ago
parent 533136627f
commit f3111b006b

@ -142,9 +142,8 @@ ck_fifo_spsc_dequeue(struct ck_fifo_spsc *fifo, void *value)
return (false); return (false);
/* If entry is visible, guarantee store to value is visible. */ /* If entry is visible, guarantee store to value is visible. */
ck_pr_fence_load(); ck_pr_fence_load_depends();
ck_pr_store_ptr(value, entry->value); ck_pr_store_ptr(value, entry->value);
ck_pr_fence_store(); ck_pr_fence_store();
ck_pr_store_ptr(&fifo->head, entry); ck_pr_store_ptr(&fifo->head, entry);
return (true); return (true);

Loading…
Cancel
Save