uatomic/x86: Remove redundant memory barriers
[urcu.git] / src / wfqueue.c
CommitLineData
acdb82a2
MJ
1// SPDX-FileCopyrightText: 2010 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4
4d001e96 5/*
4d001e96 6 * Userspace RCU library - Queue with Wait-Free Enqueue/Blocking Dequeue
4d001e96
MD
7 */
8
14748510
MD
9/* Remove deprecation warnings from LGPL wrapper build. */
10#define CDS_WFQ_DEPRECATED
11
4d001e96
MD
12/* Do not #define _LGPL_SOURCE to ensure we can emit the wrapper symbols */
13#include "urcu/wfqueue.h"
af7c2dbe 14#include "urcu/static/wfqueue.h"
4d001e96
MD
15
16/*
17 * library wrappers to be used by non-LGPL compatible source code.
18 */
19
16aa9ee8 20void cds_wfq_node_init(struct cds_wfq_node *node)
4d001e96 21{
16aa9ee8 22 _cds_wfq_node_init(node);
4d001e96
MD
23}
24
16aa9ee8 25void cds_wfq_init(struct cds_wfq_queue *q)
4d001e96 26{
16aa9ee8 27 _cds_wfq_init(q);
4d001e96
MD
28}
29
200d100e
MD
30void cds_wfq_destroy(struct cds_wfq_queue *q)
31{
32 _cds_wfq_destroy(q);
33}
34
16aa9ee8 35void cds_wfq_enqueue(struct cds_wfq_queue *q, struct cds_wfq_node *node)
4d001e96 36{
16aa9ee8 37 _cds_wfq_enqueue(q, node);
4d001e96
MD
38}
39
16aa9ee8 40struct cds_wfq_node *__cds_wfq_dequeue_blocking(struct cds_wfq_queue *q)
b0dd35e2 41{
16aa9ee8 42 return ___cds_wfq_dequeue_blocking(q);
b0dd35e2
MD
43}
44
16aa9ee8 45struct cds_wfq_node *cds_wfq_dequeue_blocking(struct cds_wfq_queue *q)
4d001e96 46{
16aa9ee8 47 return _cds_wfq_dequeue_blocking(q);
4d001e96 48}
This page took 0.044636 seconds and 4 git commands to generate.