Lines Matching refs:mtt

109 	struct res_mtt	       *mtt;  member
157 struct res_mtt *mtt; member
169 struct res_mtt *mtt; member
180 struct res_mtt *mtt; member
192 struct res_mtt *mtt; member
448 dev->quotas.mtt = dev->caps.num_mtts - dev->caps.reserved_mtts; in mlx4_init_quotas()
460 dev->quotas.mtt = in mlx4_init_quotas()
2667 int size, struct res_mtt *mtt) in check_mtt_range() argument
2669 int res_start = mtt->com.res_id; in check_mtt_range()
2670 int res_size = (1 << mtt->order); in check_mtt_range()
2685 struct res_mtt *mtt; in mlx4_SW2HW_MPT_wrapper() local
2727 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_SW2HW_MPT_wrapper()
2732 mr_get_mtt_size(inbox->buf), mtt); in mlx4_SW2HW_MPT_wrapper()
2736 mpt->mtt = mtt; in mlx4_SW2HW_MPT_wrapper()
2744 atomic_inc(&mtt->ref_count); in mlx4_SW2HW_MPT_wrapper()
2745 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_MPT_wrapper()
2753 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_MPT_wrapper()
2780 if (mpt->mtt) in mlx4_HW2SW_MPT_wrapper()
2781 atomic_dec(&mpt->mtt->ref_count); in mlx4_HW2SW_MPT_wrapper()
2882 struct res_mtt *mtt; in mlx4_RST2INIT_QP_wrapper() local
2913 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_RST2INIT_QP_wrapper()
2917 err = check_mtt_range(dev, slave, mtt_base, mtt_size, mtt); in mlx4_RST2INIT_QP_wrapper()
2943 atomic_inc(&mtt->ref_count); in mlx4_RST2INIT_QP_wrapper()
2944 qp->mtt = mtt; in mlx4_RST2INIT_QP_wrapper()
3025 struct res_mtt *mtt; in mlx4_SW2HW_EQ_wrapper() local
3034 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_SW2HW_EQ_wrapper()
3038 err = check_mtt_range(dev, slave, mtt_base, mtt_size, mtt); in mlx4_SW2HW_EQ_wrapper()
3046 atomic_inc(&mtt->ref_count); in mlx4_SW2HW_EQ_wrapper()
3047 eq->mtt = mtt; in mlx4_SW2HW_EQ_wrapper()
3048 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_EQ_wrapper()
3053 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_EQ_wrapper()
3083 struct res_mtt *mtt; in get_containing_mtt() local
3087 list_for_each_entry(mtt, &tracker->slave_list[slave].res_list[RES_MTT], in get_containing_mtt()
3089 if (!check_mtt_range(dev, slave, start, len, mtt)) { in get_containing_mtt()
3090 *res = mtt; in get_containing_mtt()
3091 mtt->com.from_state = mtt->com.state; in get_containing_mtt()
3092 mtt->com.state = RES_MTT_BUSY; in get_containing_mtt()
3188 struct mlx4_mtt mtt; in mlx4_WRITE_MTT_wrapper() local
3204 mtt.offset = 0; /* TBD this is broken but I don't handle it since in mlx4_WRITE_MTT_wrapper()
3206 mtt.order = 0; in mlx4_WRITE_MTT_wrapper()
3207 mtt.page_shift = 0; in mlx4_WRITE_MTT_wrapper()
3211 err = __mlx4_write_mtt(dev, &mtt, be64_to_cpu(page_list[0]), npages, in mlx4_WRITE_MTT_wrapper()
3235 err = get_res(dev, slave, eq->mtt->com.res_id, RES_MTT, NULL); in mlx4_HW2SW_EQ_wrapper()
3243 atomic_dec(&eq->mtt->ref_count); in mlx4_HW2SW_EQ_wrapper()
3244 put_res(dev, slave, eq->mtt->com.res_id, RES_MTT); in mlx4_HW2SW_EQ_wrapper()
3251 put_res(dev, slave, eq->mtt->com.res_id, RES_MTT); in mlx4_HW2SW_EQ_wrapper()
3364 struct res_mtt *mtt; in mlx4_SW2HW_CQ_wrapper() local
3369 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_SW2HW_CQ_wrapper()
3372 err = check_mtt_range(dev, slave, mtt_base, cq_get_mtt_size(cqc), mtt); in mlx4_SW2HW_CQ_wrapper()
3378 atomic_inc(&mtt->ref_count); in mlx4_SW2HW_CQ_wrapper()
3379 cq->mtt = mtt; in mlx4_SW2HW_CQ_wrapper()
3380 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_CQ_wrapper()
3385 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_CQ_wrapper()
3407 atomic_dec(&cq->mtt->ref_count); in mlx4_HW2SW_CQ_wrapper()
3449 struct res_mtt *mtt; in handle_resize() local
3453 err = get_res(dev, slave, cq->mtt->com.res_id, RES_MTT, &orig_mtt); in handle_resize()
3457 if (orig_mtt != cq->mtt) { in handle_resize()
3462 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in handle_resize()
3466 err = check_mtt_range(dev, slave, mtt_base, cq_get_mtt_size(cqc), mtt); in handle_resize()
3474 atomic_inc(&mtt->ref_count); in handle_resize()
3475 cq->mtt = mtt; in handle_resize()
3476 put_res(dev, slave, mtt->com.res_id, RES_MTT); in handle_resize()
3480 put_res(dev, slave, mtt->com.res_id, RES_MTT); in handle_resize()
3537 struct res_mtt *mtt; in mlx4_SW2HW_SRQ_wrapper() local
3548 err = get_res(dev, slave, mtt_base, RES_MTT, &mtt); in mlx4_SW2HW_SRQ_wrapper()
3552 mtt); in mlx4_SW2HW_SRQ_wrapper()
3560 atomic_inc(&mtt->ref_count); in mlx4_SW2HW_SRQ_wrapper()
3561 srq->mtt = mtt; in mlx4_SW2HW_SRQ_wrapper()
3562 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_SRQ_wrapper()
3567 put_res(dev, slave, mtt->com.res_id, RES_MTT); in mlx4_SW2HW_SRQ_wrapper()
3590 atomic_dec(&srq->mtt->ref_count); in mlx4_HW2SW_SRQ_wrapper()
3923 atomic_dec(&qp->mtt->ref_count); in mlx4_2RST_QP_wrapper()
4575 atomic_dec(&qp->mtt->ref_count); in rem_slave_qps()
4640 atomic_dec(&srq->mtt->ref_count); in rem_slave_srqs()
4705 atomic_dec(&cq->mtt->ref_count); in rem_slave_cqs()
4773 if (mpt->mtt) in rem_slave_mrs()
4774 atomic_dec(&mpt->mtt->ref_count); in rem_slave_mrs()
4794 struct res_mtt *mtt; in rem_slave_mtts() local
4807 list_for_each_entry_safe(mtt, tmp, mtt_list, com.list) { in rem_slave_mtts()
4809 if (mtt->com.owner == slave) { in rem_slave_mtts()
4810 base = mtt->com.res_id; in rem_slave_mtts()
4811 state = mtt->com.from_state; in rem_slave_mtts()
4816 mtt->order); in rem_slave_mtts()
4818 rb_erase(&mtt->com.node, in rem_slave_mtts()
4820 list_del(&mtt->com.list); in rem_slave_mtts()
4823 1 << mtt->order, 0); in rem_slave_mtts()
4824 kfree(mtt); in rem_slave_mtts()
4934 atomic_dec(&eq->mtt->ref_count); in rem_slave_eqs()