Searched refs:ifmp_ring (Results 1 - 3 of 3) sorted by path

/haiku/src/libs/compat/freebsd_iflib/compat/net/
H A Dmp_ring.h38 struct ifmp_ring;
39 typedef u_int (*mp_ring_drain_t)(struct ifmp_ring *, u_int, u_int);
40 typedef u_int (*mp_ring_can_drain_t)(struct ifmp_ring *);
41 typedef void (*mp_ring_serial_t)(struct ifmp_ring *);
47 struct ifmp_ring { struct
72 int ifmp_ring_alloc(struct ifmp_ring **, int, void *, mp_ring_drain_t,
74 void ifmp_ring_free(struct ifmp_ring *);
75 int ifmp_ring_enqueue(struct ifmp_ring *, void **, int, int, int);
76 void ifmp_ring_check_drainage(struct ifmp_ring *, int);
77 void ifmp_ring_reset_stats(struct ifmp_ring *);
[all...]
/haiku/src/libs/compat/freebsd_iflib/
H A Diflib.c366 struct ifmp_ring *ift_br;
735 static uint32_t iflib_txq_can_drain(struct ifmp_ring *);
3804 _ring_peek_one(struct ifmp_ring *r, int cidx, int offset, int remaining)
3831 iflib_txq_can_drain(struct ifmp_ring *r)
3845 iflib_txq_drain(struct ifmp_ring *r, uint32_t cidx, uint32_t pidx)
3953 iflib_txq_drain_always(struct ifmp_ring *r)
3959 iflib_txq_drain_free(struct ifmp_ring *r, uint32_t cidx, uint32_t pidx)
3987 struct ifmp_ring *r;
H A Dmp_ring.c60 space_available(struct ifmp_ring *r, union ring_state s)
73 increment_idx(struct ifmp_ring *r, uint16_t idx, uint16_t n)
96 drain_ring_locked(struct ifmp_ring *r, union ring_state os, uint16_t prev, int budget)
170 drain_ring_lockless(struct ifmp_ring *r, union ring_state os, uint16_t prev, int budget)
250 ifmp_ring_alloc(struct ifmp_ring **pr, int size, void *cookie, mp_ring_drain_t drain,
253 struct ifmp_ring *r;
263 r = malloc(__offsetof(struct ifmp_ring, items[size]), mt, flags | M_ZERO);
292 ifmp_ring_free(struct ifmp_ring *r)
321 ifmp_ring_enqueue(struct ifmp_ring *r, void **items, int n, int budget, int abdicate)
396 ifmp_ring_enqueue(struct ifmp_ring *
[all...]

Completed in 110 milliseconds