Lines Matching refs:mtt

110 	struct res_mtt	       *mtt;  member
158 struct res_mtt *mtt; member
170 struct res_mtt *mtt; member
181 struct res_mtt *mtt; member
193 struct res_mtt *mtt; member
456 dev->quotas.mtt = dev->caps.num_mtts - dev->caps.reserved_mtts; in mlx4_init_quotas()
468 dev->quotas.mtt = in mlx4_init_quotas()
2734 int size, struct res_mtt *mtt) in check_mtt_range() argument
2736 int res_start = mtt->com.res_id; in check_mtt_range()
2737 int res_size = (1 << mtt->order); in check_mtt_range()
2752 struct res_mtt *mtt; in mlx4_SW2HW_MPT_wrapper() local
2794 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_SW2HW_MPT_wrapper()
2799 mr_get_mtt_size(inbox->buf), mtt); in mlx4_SW2HW_MPT_wrapper()
2803 mpt->mtt = mtt; in mlx4_SW2HW_MPT_wrapper()
2811 atomic_inc(&mtt->ref_count); in mlx4_SW2HW_MPT_wrapper()
2812 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_MPT_wrapper()
2820 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_MPT_wrapper()
2847 if (mpt->mtt) in mlx4_HW2SW_MPT_wrapper()
2848 atomic_dec(&mpt->mtt->ref_count); in mlx4_HW2SW_MPT_wrapper()
2949 struct res_mtt *mtt; in mlx4_RST2INIT_QP_wrapper() local
2980 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_RST2INIT_QP_wrapper()
2984 err = check_mtt_range(dev, slave, mtt_base, mtt_size, mtt); in mlx4_RST2INIT_QP_wrapper()
3010 atomic_inc(&mtt->ref_count); in mlx4_RST2INIT_QP_wrapper()
3011 qp->mtt = mtt; in mlx4_RST2INIT_QP_wrapper()
3095 struct res_mtt *mtt; in mlx4_SW2HW_EQ_wrapper() local
3104 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_SW2HW_EQ_wrapper()
3108 err = check_mtt_range(dev, slave, mtt_base, mtt_size, mtt); in mlx4_SW2HW_EQ_wrapper()
3116 atomic_inc(&mtt->ref_count); in mlx4_SW2HW_EQ_wrapper()
3117 eq->mtt = mtt; in mlx4_SW2HW_EQ_wrapper()
3118 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_EQ_wrapper()
3123 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_EQ_wrapper()
3153 struct res_mtt *mtt; in get_containing_mtt() local
3157 list_for_each_entry(mtt, &tracker->slave_list[slave].res_list[RES_MTT], in get_containing_mtt()
3159 if (!check_mtt_range(dev, slave, start, len, mtt)) { in get_containing_mtt()
3160 *res = mtt; in get_containing_mtt()
3161 mtt->com.from_state = mtt->com.state; in get_containing_mtt()
3162 mtt->com.state = RES_MTT_BUSY; in get_containing_mtt()
3258 struct mlx4_mtt mtt; in mlx4_WRITE_MTT_wrapper() local
3274 mtt.offset = 0; /* TBD this is broken but I don't handle it since in mlx4_WRITE_MTT_wrapper()
3276 mtt.order = 0; in mlx4_WRITE_MTT_wrapper()
3277 mtt.page_shift = 0; in mlx4_WRITE_MTT_wrapper()
3281 err = __mlx4_write_mtt(dev, &mtt, be64_to_cpu(page_list[0]), npages, in mlx4_WRITE_MTT_wrapper()
3305 err = get_res(dev, slave, eq->mtt->com.res_id, RES_MTT, NULL); in mlx4_HW2SW_EQ_wrapper()
3313 atomic_dec(&eq->mtt->ref_count); in mlx4_HW2SW_EQ_wrapper()
3314 put_res(dev, slave, eq->mtt->com.res_id, RES_MTT); in mlx4_HW2SW_EQ_wrapper()
3321 put_res(dev, slave, eq->mtt->com.res_id, RES_MTT); in mlx4_HW2SW_EQ_wrapper()
3434 struct res_mtt *mtt; in mlx4_SW2HW_CQ_wrapper() local
3439 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_SW2HW_CQ_wrapper()
3442 err = check_mtt_range(dev, slave, mtt_base, cq_get_mtt_size(cqc), mtt); in mlx4_SW2HW_CQ_wrapper()
3448 atomic_inc(&mtt->ref_count); in mlx4_SW2HW_CQ_wrapper()
3449 cq->mtt = mtt; in mlx4_SW2HW_CQ_wrapper()
3450 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_CQ_wrapper()
3455 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_CQ_wrapper()
3477 atomic_dec(&cq->mtt->ref_count); in mlx4_HW2SW_CQ_wrapper()
3519 struct res_mtt *mtt; in handle_resize() local
3523 err = get_res(dev, slave, cq->mtt->com.res_id, RES_MTT, &orig_mtt); in handle_resize()
3527 if (orig_mtt != cq->mtt) { in handle_resize()
3532 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in handle_resize()
3536 err = check_mtt_range(dev, slave, mtt_base, cq_get_mtt_size(cqc), mtt); in handle_resize()
3544 atomic_inc(&mtt->ref_count); in handle_resize()
3545 cq->mtt = mtt; in handle_resize()
3546 put_res(dev, slave, mtt->com.res_id, RES_MTT); in handle_resize()
3550 put_res(dev, slave, mtt->com.res_id, RES_MTT); in handle_resize()
3607 struct res_mtt *mtt; in mlx4_SW2HW_SRQ_wrapper() local
3618 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_SW2HW_SRQ_wrapper()
3622 mtt); in mlx4_SW2HW_SRQ_wrapper()
3630 atomic_inc(&mtt->ref_count); in mlx4_SW2HW_SRQ_wrapper()
3631 srq->mtt = mtt; in mlx4_SW2HW_SRQ_wrapper()
3632 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_SRQ_wrapper()
3637 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_SRQ_wrapper()
3660 atomic_dec(&srq->mtt->ref_count); in mlx4_HW2SW_SRQ_wrapper()
3991 atomic_dec(&qp->mtt->ref_count); in mlx4_2RST_QP_wrapper()
4707 atomic_dec(&qp->mtt->ref_count); in rem_slave_qps()
4772 atomic_dec(&srq->mtt->ref_count); in rem_slave_srqs()
4837 atomic_dec(&cq->mtt->ref_count); in rem_slave_cqs()
4905 if (mpt->mtt) in rem_slave_mrs()
4906 atomic_dec(&mpt->mtt->ref_count); in rem_slave_mrs()
4926 struct res_mtt *mtt; in rem_slave_mtts() local
4939 list_for_each_entry_safe(mtt, tmp, mtt_list, com.list) { in rem_slave_mtts()
4941 if (mtt->com.owner == slave) { in rem_slave_mtts()
4942 base = mtt->com.res_id; in rem_slave_mtts()
4943 state = mtt->com.from_state; in rem_slave_mtts()
4948 mtt->order); in rem_slave_mtts()
4950 rb_erase(&mtt->com.node, in rem_slave_mtts()
4952 list_del(&mtt->com.list); in rem_slave_mtts()
4955 1 << mtt->order, 0); in rem_slave_mtts()
4956 kfree(mtt); in rem_slave_mtts()
5152 atomic_dec(&eq->mtt->ref_count); in rem_slave_eqs()