Lines Matching refs:dxp
234 struct vq_desc_extra *dxp;
258 dxp = &vq->vq_descx[i];
260 dxp->indirect = malloc(size, M_DEVBUF, M_NOWAIT);
261 if (dxp->indirect == NULL) {
266 dxp->indirect_paddr = vtophys(dxp->indirect);
267 virtqueue_init_indirect_list(vq, dxp->indirect);
276 struct vq_desc_extra *dxp;
280 dxp = &vq->vq_descx[i];
282 if (dxp->indirect == NULL)
285 free(dxp->indirect, M_DEVBUF);
286 dxp->indirect = NULL;
287 dxp->indirect_paddr = 0;
310 struct vq_desc_extra *dxp;
336 dxp = &vq->vq_descx[i];
337 dxp->cookie = NULL;
338 dxp->ndescs = 0;
340 virtqueue_init_indirect_list(vq, dxp->indirect);
527 struct vq_desc_extra *dxp;
554 dxp = &vq->vq_descx[head_idx];
556 VQASSERT(vq, dxp->cookie == NULL,
558 dxp->cookie = cookie;
559 dxp->ndescs = needed;
756 struct vq_desc_extra *dxp;
767 dxp = &vq->vq_descx[head_idx];
769 VQASSERT(vq, dxp->cookie == NULL,
771 dxp->cookie = cookie;
772 dxp->ndescs = 1;
774 dp->addr = vq_gtoh64(vq, dxp->indirect_paddr);
778 vq_ring_enqueue_segments(vq, dxp->indirect, 0,
849 struct vq_desc_extra *dxp;
853 dxp = &vq->vq_descx[desc_idx];
858 vq->vq_free_cnt += dxp->ndescs;
859 dxp->ndescs--;
866 dxp->ndescs--;
870 VQASSERT(vq, dxp->ndescs == 0,
871 "failed to free entire desc chain, remaining: %d", dxp->ndescs);