Lines Matching refs:ring
475 struct ioat_ring_ent **ring; in ioat2_alloc_ring() local
483 ring = kcalloc(descs, sizeof(*ring), flags); in ioat2_alloc_ring()
484 if (!ring) in ioat2_alloc_ring()
487 ring[i] = ioat2_alloc_ring_ent(c, flags); in ioat2_alloc_ring()
488 if (!ring[i]) { in ioat2_alloc_ring()
490 ioat2_free_ring_ent(ring[i], c); in ioat2_alloc_ring()
491 kfree(ring); in ioat2_alloc_ring()
494 set_desc_id(ring[i], i); in ioat2_alloc_ring()
499 struct ioat_ring_ent *next = ring[i+1]; in ioat2_alloc_ring()
500 struct ioat_dma_descriptor *hw = ring[i]->hw; in ioat2_alloc_ring()
504 ring[i]->hw->next = ring[0]->txd.phys; in ioat2_alloc_ring()
506 return ring; in ioat2_alloc_ring()
518 struct ioat_ring_ent **ring; in ioat2_alloc_chan_resources() local
524 if (ioat->ring) in ioat2_alloc_chan_resources()
544 ring = ioat2_alloc_ring(c, order, GFP_KERNEL); in ioat2_alloc_chan_resources()
545 if (!ring) in ioat2_alloc_chan_resources()
550 ioat->ring = ring; in ioat2_alloc_chan_resources()
590 struct ioat_ring_ent **ring; in reshape_ring() local
607 ring = kcalloc(new_size, sizeof(*ring), GFP_NOWAIT); in reshape_ring()
608 if (!ring) in reshape_ring()
618 ring[new_idx] = ioat->ring[curr_idx]; in reshape_ring()
619 set_desc_id(ring[new_idx], new_idx); in reshape_ring()
626 ring[new_idx] = ioat2_alloc_ring_ent(c, GFP_NOWAIT); in reshape_ring()
627 if (!ring[new_idx]) { in reshape_ring()
631 ioat2_free_ring_ent(ring[new_idx], c); in reshape_ring()
633 kfree(ring); in reshape_ring()
636 set_desc_id(ring[new_idx], new_idx); in reshape_ring()
642 struct ioat_ring_ent *next = ring[(new_idx+1) & (new_size-1)]; in reshape_ring()
643 struct ioat_dma_descriptor *hw = ring[new_idx]->hw; in reshape_ring()
658 ring[new_idx] = ioat->ring[curr_idx]; in reshape_ring()
659 set_desc_id(ring[new_idx], new_idx); in reshape_ring()
671 hw = ring[(ioat->tail+new_size-1) & (new_size-1)]->hw; in reshape_ring()
672 next = ring[(ioat->tail+new_size) & (new_size-1)]; in reshape_ring()
679 kfree(ioat->ring); in reshape_ring()
680 ioat->ring = ring; in reshape_ring()
808 if (!ioat->ring) in ioat2_free_chan_resources()
833 kfree(ioat->ring); in ioat2_free_chan_resources()
834 ioat->ring = NULL; in ioat2_free_chan_resources()