Lines Matching defs:bufq
76 #include <sys/bufq.h>
134 struct bufq_state *bufq;
181 /* Try to autoload the bufq strategy module */
212 *bufqp = bufq = kmem_zalloc(sizeof(*bufq), KM_SLEEP);
213 bufq->bq_flags = flags;
214 bufq->bq_strat = bsp;
215 (*bsp->bs_initfn)(bufq);
222 bufq_put(struct bufq_state *bufq, struct buf *bp)
225 (*bufq->bq_put)(bufq, bp);
229 bufq_get(struct bufq_state *bufq)
232 return (*bufq->bq_get)(bufq, 1);
236 bufq_peek(struct bufq_state *bufq)
239 return (*bufq->bq_get)(bufq, 0);
243 bufq_cancel(struct bufq_state *bufq, struct buf *bp)
246 return (*bufq->bq_cancel)(bufq, bp);
253 bufq_drain(struct bufq_state *bufq)
257 while ((bp = bufq_get(bufq)) != NULL) {
268 bufq_free(struct bufq_state *bufq)
271 KASSERT(bufq_peek(bufq) == NULL);
273 bufq->bq_fini(bufq);
276 bufq->bq_strat->bs_refcnt--;
279 kmem_free(bufq, sizeof(*bufq));
286 bufq_getstrategyname(struct bufq_state *bufq)
289 return bufq->bq_strat->bs_name;
344 * sysctl function that will print all bufq strategies
391 CTLTYPE_NODE, "bufq",
399 SYSCTL_DESCR("List of bufq strategies present"),