Lines Matching refs:new
601 struct ionic_qcq *new; in ionic_qcq_alloc() local
629 new = rte_zmalloc("ionic", struct_size, 0); in ionic_qcq_alloc()
630 if (!new) { in ionic_qcq_alloc()
635 new->lif = lif; in ionic_qcq_alloc()
637 new->q.info = rte_calloc_socket("ionic", in ionic_qcq_alloc()
640 if (!new->q.info) { in ionic_qcq_alloc()
646 new->q.type = type; in ionic_qcq_alloc()
648 err = ionic_q_init(&new->q, index, num_descs); in ionic_qcq_alloc()
654 err = ionic_cq_init(&new->cq, num_descs); in ionic_qcq_alloc()
660 new->base_z = rte_eth_dma_zone_reserve(lif->eth_dev, in ionic_qcq_alloc()
664 if (!new->base_z) { in ionic_qcq_alloc()
670 new->base = new->base_z->addr; in ionic_qcq_alloc()
671 new->base_pa = new->base_z->iova; in ionic_qcq_alloc()
673 q_base = new->base; in ionic_qcq_alloc()
674 q_base_pa = new->base_pa; in ionic_qcq_alloc()
686 ionic_q_sg_map(&new->q, sg_base, sg_base_pa); in ionic_qcq_alloc()
693 ionic_q_map(&new->q, q_base, q_base_pa); in ionic_qcq_alloc()
694 ionic_cq_map(&new->cq, cq_base, cq_base_pa); in ionic_qcq_alloc()
696 *qcq = new; in ionic_qcq_alloc()
701 rte_free(new->q.info); in ionic_qcq_alloc()
703 rte_free(new); in ionic_qcq_alloc()