Lines Matching refs:pfault
292 struct mlx5_pagefault *pfault, in mlx5_ib_page_fault_resume() argument
295 int wq_num = pfault->event_subtype == MLX5_PFAULT_SUBTYPE_WQE ? in mlx5_ib_page_fault_resume()
296 pfault->wqe.wq_num : pfault->token; in mlx5_ib_page_fault_resume()
298 pfault->token, in mlx5_ib_page_fault_resume()
300 pfault->type, in mlx5_ib_page_fault_resume()
781 struct mlx5_pagefault *pfault, in pagefault_data_segments() argument
826 pfault->bytes_committed); in pagefault_data_segments()
833 if (inline_segment || bcnt <= pfault->bytes_committed) { in pagefault_data_segments()
834 pfault->bytes_committed -= in pagefault_data_segments()
836 pfault->bytes_committed); in pagefault_data_segments()
841 &pfault->bytes_committed, in pagefault_data_segments()
867 struct mlx5_ib_dev *dev, struct mlx5_pagefault *pfault, in mlx5_ib_mr_initiator_pfault_handler() argument
871 u16 wqe_index = pfault->wqe.wqe_index; in mlx5_ib_mr_initiator_pfault_handler()
970 struct mlx5_ib_dev *dev, struct mlx5_pagefault *pfault, in mlx5_ib_mr_responder_pfault_handler() argument
1023 struct mlx5_pagefault *pfault) in mlx5_ib_mr_wqe_pfault_handler() argument
1030 u16 wqe_index = pfault->wqe.wqe_index; in mlx5_ib_mr_wqe_pfault_handler()
1031 int requestor = pfault->type & MLX5_PFAULT_REQUESTOR; in mlx5_ib_mr_wqe_pfault_handler()
1040 qp = mlx5_ib_odp_find_qp(dev, pfault->wqe.wq_num); in mlx5_ib_mr_wqe_pfault_handler()
1048 ret, wqe_index, pfault->token); in mlx5_ib_mr_wqe_pfault_handler()
1054 ret = mlx5_ib_mr_initiator_pfault_handler(dev, pfault, qp, &wqe, in mlx5_ib_mr_wqe_pfault_handler()
1057 ret = mlx5_ib_mr_responder_pfault_handler(dev, pfault, qp, &wqe, in mlx5_ib_mr_wqe_pfault_handler()
1067 ret = pagefault_data_segments(dev, pfault, qp, wqe, wqe_end, in mlx5_ib_mr_wqe_pfault_handler()
1079 mlx5_ib_page_fault_resume(dev, pfault, resume_with_error); in mlx5_ib_mr_wqe_pfault_handler()
1081 pfault->wqe.wq_num, resume_with_error, in mlx5_ib_mr_wqe_pfault_handler()
1082 pfault->type); in mlx5_ib_mr_wqe_pfault_handler()
1093 struct mlx5_pagefault *pfault) in mlx5_ib_mr_rdma_pfault_handler() argument
1097 u32 prefetch_len = pfault->bytes_committed; in mlx5_ib_mr_rdma_pfault_handler()
1099 u32 rkey = pfault->rdma.r_key; in mlx5_ib_mr_rdma_pfault_handler()
1108 pfault->rdma.rdma_va += pfault->bytes_committed; in mlx5_ib_mr_rdma_pfault_handler()
1109 pfault->rdma.rdma_op_len -= min(pfault->bytes_committed, in mlx5_ib_mr_rdma_pfault_handler()
1110 pfault->rdma.rdma_op_len); in mlx5_ib_mr_rdma_pfault_handler()
1111 pfault->bytes_committed = 0; in mlx5_ib_mr_rdma_pfault_handler()
1113 address = pfault->rdma.rdma_va; in mlx5_ib_mr_rdma_pfault_handler()
1114 length = pfault->rdma.rdma_op_len; in mlx5_ib_mr_rdma_pfault_handler()
1121 length = pfault->rdma.packet_size; in mlx5_ib_mr_rdma_pfault_handler()
1126 &pfault->bytes_committed, NULL); in mlx5_ib_mr_rdma_pfault_handler()
1131 mlx5_ib_page_fault_resume(dev, pfault, 1); in mlx5_ib_mr_rdma_pfault_handler()
1134 ret, pfault->token, pfault->type); in mlx5_ib_mr_rdma_pfault_handler()
1138 mlx5_ib_page_fault_resume(dev, pfault, 0); in mlx5_ib_mr_rdma_pfault_handler()
1140 pfault->token, pfault->type, in mlx5_ib_mr_rdma_pfault_handler()
1156 ret, pfault->token, address, prefetch_len); in mlx5_ib_mr_rdma_pfault_handler()
1162 struct mlx5_pagefault *pfault) in mlx5_ib_pfault() argument
1165 u8 event_subtype = pfault->event_subtype; in mlx5_ib_pfault()
1169 mlx5_ib_mr_wqe_pfault_handler(dev, pfault); in mlx5_ib_pfault()
1172 mlx5_ib_mr_rdma_pfault_handler(dev, pfault); in mlx5_ib_pfault()
1177 mlx5_ib_page_fault_resume(dev, pfault, 1); in mlx5_ib_pfault()