• Home
  • Raw
  • Download

Lines Matching refs:slave

222 static int send_mad_to_slave(int slave, struct mlx4_ib_demux_ctx *ctx,  in send_mad_to_slave()  argument
243 return mlx4_ib_send_to_slave(dev, slave, ctx->port, IB_QPT_GSI, &wc, NULL, mad); in send_mad_to_slave()
312 static int send_reply_to_slave(int slave, struct mcast_group *group, in send_reply_to_slave() argument
339 sa_data->scope_join_state |= (group->func[slave].join_state & 0x0f); in send_reply_to_slave()
342 ret = send_mad_to_slave(slave, group->demux, (struct ib_mad *)&mad); in send_reply_to_slave()
489 static int join_group(struct mcast_group *group, int slave, u8 join_mask) in join_group() argument
495 join_state = join_mask & (~group->func[slave].join_state); in join_group()
497 group->func[slave].join_state |= join_state; in join_group()
498 if (group->func[slave].state != MCAST_MEMBER && join_state) { in join_group()
499 group->func[slave].state = MCAST_MEMBER; in join_group()
505 static int leave_group(struct mcast_group *group, int slave, u8 leave_state) in leave_group() argument
510 group->func[slave].join_state &= ~leave_state; in leave_group()
511 if (!group->func[slave].join_state) { in leave_group()
512 group->func[slave].state = MCAST_NOT_MEMBER; in leave_group()
518 static int check_leave(struct mcast_group *group, int slave, u8 leave_mask) in check_leave() argument
520 if (group->func[slave].state != MCAST_MEMBER) in check_leave()
524 if (~group->func[slave].join_state & leave_mask) in check_leave()
880 int mlx4_ib_mcg_demux_handler(struct ib_device *ibdev, int port, int slave, in mlx4_ib_mcg_demux_handler() argument
897 *(u8 *)(&tid) = (u8)slave; /* in group we kept the modified TID */ in mlx4_ib_mcg_demux_handler()
930 int slave, struct ib_sa_mad *sa_mad) in mlx4_ib_mcg_multiplex_handler() argument
950 req->func = slave; in mlx4_ib_mcg_multiplex_handler()
961 if (group->func[slave].num_pend_reqs > MAX_PEND_REQS_PER_FUNC) { in mlx4_ib_mcg_multiplex_handler()
964 port, slave, MAX_PEND_REQS_PER_FUNC); in mlx4_ib_mcg_multiplex_handler()
969 ++group->func[slave].num_pend_reqs; in mlx4_ib_mcg_multiplex_handler()
982 port, slave, sa_mad->mad_hdr.method); in mlx4_ib_mcg_multiplex_handler()
1193 static int push_deleteing_req(struct mcast_group *group, int slave) in push_deleteing_req() argument
1198 if (!group->func[slave].join_state) in push_deleteing_req()
1207 if (!list_empty(&group->func[slave].pending)) { in push_deleteing_req()
1208 pend_req = list_entry(group->func[slave].pending.prev, struct mcast_req, group_list); in push_deleteing_req()
1216 req->func = slave; in push_deleteing_req()
1218 ++group->func[slave].num_pend_reqs; in push_deleteing_req()
1224 void clean_vf_mcast(struct mlx4_ib_demux_ctx *ctx, int slave) in clean_vf_mcast() argument
1235 clear_pending_reqs(group, slave); in clean_vf_mcast()
1236 push_deleteing_req(group, slave); in clean_vf_mcast()