Lines Matching refs:nb
86 static inline __u32 xsk_prod_nb_free(struct xsk_ring_prod *r, __u32 nb)
90 if (free_entries >= nb)
106 static inline __u32 xsk_cons_nb_avail(struct xsk_ring_cons *r, __u32 nb)
115 return (entries > nb) ? nb : entries;
118 static inline __u32 xsk_ring_prod__reserve(struct xsk_ring_prod *prod, __u32 nb, __u32 *idx)
120 if (xsk_prod_nb_free(prod, nb) < nb)
124 prod->cached_prod += nb;
126 return nb;
129 static inline void xsk_ring_prod__submit(struct xsk_ring_prod *prod, __u32 nb)
134 __atomic_store_n(prod->producer, *prod->producer + nb, __ATOMIC_RELEASE);
137 static inline void xsk_ring_prod__cancel(struct xsk_ring_prod *prod, __u32 nb)
139 prod->cached_prod -= nb;
142 static inline __u32 xsk_ring_cons__peek(struct xsk_ring_cons *cons, __u32 nb, __u32 *idx)
144 __u32 entries = xsk_cons_nb_avail(cons, nb);
154 static inline void xsk_ring_cons__cancel(struct xsk_ring_cons *cons, __u32 nb)
156 cons->cached_cons -= nb;
159 static inline void xsk_ring_cons__release(struct xsk_ring_cons *cons, __u32 nb)
164 __atomic_store_n(cons->consumer, *cons->consumer + nb, __ATOMIC_RELEASE);