Lines Matching refs:grp
60 u32 rcventry, struct tid_group *grp,
68 struct tid_group *grp,
73 struct tid_group **grp);
384 struct tid_group *grp = in hfi1_user_exp_rcv_setup() local
387 ret = program_rcvarray(fd, tidbuf, grp, in hfi1_user_exp_rcv_setup()
396 tid_group_add_tail(grp, &uctxt->tid_group_list); in hfi1_user_exp_rcv_setup()
402 tid_group_add_tail(grp, &uctxt->tid_full_list); in hfi1_user_exp_rcv_setup()
409 struct tid_group *grp, *ptr; in hfi1_user_exp_rcv_setup() local
419 grp = tid_group_pop(&uctxt->tid_group_list); in hfi1_user_exp_rcv_setup()
420 tid_group_add_tail(grp, &uctxt->tid_used_list); in hfi1_user_exp_rcv_setup()
428 list_for_each_entry_safe(grp, ptr, &uctxt->tid_used_list.list, in hfi1_user_exp_rcv_setup()
431 grp->size - grp->used); in hfi1_user_exp_rcv_setup()
433 ret = program_rcvarray(fd, tidbuf, grp, in hfi1_user_exp_rcv_setup()
443 if (grp->used == grp->size) in hfi1_user_exp_rcv_setup()
444 tid_group_move(grp, in hfi1_user_exp_rcv_setup()
684 struct tid_group *grp, in program_rcvarray() argument
696 if (count > grp->size) in program_rcvarray()
700 for (idx = 0; idx < grp->size; idx++) { in program_rcvarray()
701 if (!(grp->map & (1 << idx))) { in program_rcvarray()
705 rcv_array_wc_fill(dd, grp->base + idx); in program_rcvarray()
717 if (useidx >= grp->size) { in program_rcvarray()
719 } else if (grp->map & (1 << useidx)) { in program_rcvarray()
720 rcv_array_wc_fill(dd, grp->base + useidx); in program_rcvarray()
725 rcventry = grp->base + useidx; in program_rcvarray()
730 rcventry, grp, pageidx, in program_rcvarray()
739 grp->used++; in program_rcvarray()
740 grp->map |= 1 << useidx++; in program_rcvarray()
745 for (; useidx < grp->size; useidx++) in program_rcvarray()
746 rcv_array_wc_fill(dd, grp->base + useidx); in program_rcvarray()
753 u32 rcventry, struct tid_group *grp, in set_rcvarray_entry() argument
788 node->grp = grp; in set_rcvarray_entry()
812 struct tid_group **grp) in unprogram_rcvarray() argument
835 if (grp) in unprogram_rcvarray()
836 *grp = node->grp; in unprogram_rcvarray()
863 node->grp->used--; in clear_tid_node()
864 node->grp->map &= ~(1 << (node->rcventry - node->grp->base)); in clear_tid_node()
866 if (node->grp->used == node->grp->size - 1) in clear_tid_node()
867 tid_group_move(node->grp, &uctxt->tid_full_list, in clear_tid_node()
869 else if (!node->grp->used) in clear_tid_node()
870 tid_group_move(node->grp, &uctxt->tid_used_list, in clear_tid_node()
883 struct tid_group *grp, *ptr; in unlock_exp_tids() local
886 list_for_each_entry_safe(grp, ptr, &set->list, list) { in unlock_exp_tids()
887 list_del_init(&grp->list); in unlock_exp_tids()
889 for (i = 0; i < grp->size; i++) { in unlock_exp_tids()
890 if (grp->map & (1 << i)) { in unlock_exp_tids()
891 u16 rcventry = grp->base + i; in unlock_exp_tids()