uctxt 82 drivers/infiniband/hw/hfi1/file_ops.c static void init_subctxts(struct hfi1_ctxtdata *uctxt, uctxt 85 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt); uctxt 86 drivers/infiniband/hw/hfi1/file_ops.c static void user_init(struct hfi1_ctxtdata *uctxt); uctxt 96 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt); uctxt 97 drivers/infiniband/hw/hfi1/file_ops.c static int setup_subctxt(struct hfi1_ctxtdata *uctxt); uctxt 104 drivers/infiniband/hw/hfi1/file_ops.c static void deallocate_ctxt(struct hfi1_ctxtdata *uctxt); uctxt 107 drivers/infiniband/hw/hfi1/file_ops.c static int user_event_ack(struct hfi1_ctxtdata *uctxt, u16 subctxt, uctxt 109 drivers/infiniband/hw/hfi1/file_ops.c static int set_ctxt_pkey(struct hfi1_ctxtdata *uctxt, unsigned long arg); uctxt 110 drivers/infiniband/hw/hfi1/file_ops.c static int ctxt_reset(struct hfi1_ctxtdata *uctxt); uctxt 111 drivers/infiniband/hw/hfi1/file_ops.c static int manage_rcvq(struct hfi1_ctxtdata *uctxt, u16 subctxt, uctxt 227 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 234 drivers/infiniband/hw/hfi1/file_ops.c !uctxt) uctxt 251 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt) uctxt 252 drivers/infiniband/hw/hfi1/file_ops.c sc_return_credits(uctxt->sc); uctxt 268 drivers/infiniband/hw/hfi1/file_ops.c ret = manage_rcvq(uctxt, fd->subctxt, arg); uctxt 274 drivers/infiniband/hw/hfi1/file_ops.c uctxt->poll_type = (typeof(uctxt->poll_type))uval; uctxt 278 drivers/infiniband/hw/hfi1/file_ops.c ret = user_event_ack(uctxt, fd->subctxt, arg); uctxt 282 drivers/infiniband/hw/hfi1/file_ops.c ret = set_ctxt_pkey(uctxt, arg); uctxt 286 drivers/infiniband/hw/hfi1/file_ops.c ret = ctxt_reset(uctxt); uctxt 323 drivers/infiniband/hw/hfi1/file_ops.c trace_hfi1_sdma_request(fd->dd, fd->uctxt->ctxt, fd->subctxt, dim); uctxt 353 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 364 drivers/infiniband/hw/hfi1/file_ops.c if (!is_valid_mmap(token) || !uctxt || uctxt 369 drivers/infiniband/hw/hfi1/file_ops.c dd = uctxt->dd; uctxt 373 drivers/infiniband/hw/hfi1/file_ops.c if (ctxt != uctxt->ctxt || subctxt != fd->subctxt) { uctxt 385 drivers/infiniband/hw/hfi1/file_ops.c (uctxt->sc->hw_context * BIT(16))) + uctxt 393 drivers/infiniband/hw/hfi1/file_ops.c memlen = PAGE_ALIGN(uctxt->sc->credits * PIO_BLOCK_SIZE); uctxt 409 drivers/infiniband/hw/hfi1/file_ops.c memvirt = dd->cr_base[uctxt->numa_id].va; uctxt 411 drivers/infiniband/hw/hfi1/file_ops.c (((u64)uctxt->sc->hw_free - uctxt 412 drivers/infiniband/hw/hfi1/file_ops.c (u64)dd->cr_base[uctxt->numa_id].va) & PAGE_MASK); uctxt 425 drivers/infiniband/hw/hfi1/file_ops.c memlen = rcvhdrq_size(uctxt); uctxt 426 drivers/infiniband/hw/hfi1/file_ops.c memvirt = uctxt->rcvhdrq; uctxt 436 drivers/infiniband/hw/hfi1/file_ops.c memlen = uctxt->egrbufs.size; uctxt 449 drivers/infiniband/hw/hfi1/file_ops.c for (i = 0 ; i < uctxt->egrbufs.numbufs; i++) { uctxt 450 drivers/infiniband/hw/hfi1/file_ops.c memlen = uctxt->egrbufs.buffers[i].len; uctxt 451 drivers/infiniband/hw/hfi1/file_ops.c memvirt = uctxt->egrbufs.buffers[i].addr; uctxt 476 drivers/infiniband/hw/hfi1/file_ops.c + (uctxt->ctxt * RXE_PER_CONTEXT_SIZE); uctxt 492 drivers/infiniband/hw/hfi1/file_ops.c (dd->events + uctxt_offset(uctxt)) & PAGE_MASK; uctxt 519 drivers/infiniband/hw/hfi1/file_ops.c if ((flags & VM_WRITE) || !uctxt->rcvhdrtail_kvaddr) { uctxt 524 drivers/infiniband/hw/hfi1/file_ops.c memvirt = (void *)uctxt->rcvhdrtail_kvaddr; uctxt 528 drivers/infiniband/hw/hfi1/file_ops.c memaddr = (u64)uctxt->subctxt_uregbase; uctxt 534 drivers/infiniband/hw/hfi1/file_ops.c memaddr = (u64)uctxt->subctxt_rcvhdr_base; uctxt 535 drivers/infiniband/hw/hfi1/file_ops.c memlen = rcvhdrq_size(uctxt) * uctxt->subctxt_cnt; uctxt 540 drivers/infiniband/hw/hfi1/file_ops.c memaddr = (u64)uctxt->subctxt_rcvegrbuf; uctxt 541 drivers/infiniband/hw/hfi1/file_ops.c memlen = uctxt->egrbufs.size * uctxt->subctxt_cnt; uctxt 566 drivers/infiniband/hw/hfi1/file_ops.c uctxt->ctxt, fd->subctxt, uctxt 621 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt; uctxt 624 drivers/infiniband/hw/hfi1/file_ops.c uctxt = ((struct hfi1_filedata *)fp->private_data)->uctxt; uctxt 625 drivers/infiniband/hw/hfi1/file_ops.c if (!uctxt) uctxt 627 drivers/infiniband/hw/hfi1/file_ops.c else if (uctxt->poll_type == HFI1_POLL_TYPE_URGENT) uctxt 629 drivers/infiniband/hw/hfi1/file_ops.c else if (uctxt->poll_type == HFI1_POLL_TYPE_ANYRCV) uctxt 640 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt = fdata->uctxt; uctxt 648 drivers/infiniband/hw/hfi1/file_ops.c if (!uctxt) uctxt 651 drivers/infiniband/hw/hfi1/file_ops.c hfi1_cdbg(PROC, "closing ctxt %u:%u", uctxt->ctxt, fdata->subctxt); uctxt 655 drivers/infiniband/hw/hfi1/file_ops.c hfi1_user_sdma_free_queues(fdata, uctxt); uctxt 667 drivers/infiniband/hw/hfi1/file_ops.c fdata->uctxt = NULL; uctxt 668 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcd_put(uctxt); uctxt 674 drivers/infiniband/hw/hfi1/file_ops.c ev = dd->events + uctxt_offset(uctxt) + fdata->subctxt; uctxt 678 drivers/infiniband/hw/hfi1/file_ops.c __clear_bit(fdata->subctxt, uctxt->in_use_ctxts); uctxt 679 drivers/infiniband/hw/hfi1/file_ops.c if (!bitmap_empty(uctxt->in_use_ctxts, HFI1_MAX_SHARED_CTXTS)) { uctxt 696 drivers/infiniband/hw/hfi1/file_ops.c HFI1_RCVCTRL_URGENT_DIS, uctxt); uctxt 698 drivers/infiniband/hw/hfi1/file_ops.c hfi1_clear_ctxt_jkey(dd, uctxt); uctxt 703 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->sc) { uctxt 704 drivers/infiniband/hw/hfi1/file_ops.c sc_disable(uctxt->sc); uctxt 705 drivers/infiniband/hw/hfi1/file_ops.c set_pio_integrity(uctxt->sc); uctxt 708 drivers/infiniband/hw/hfi1/file_ops.c hfi1_free_ctxt_rcv_groups(uctxt); uctxt 709 drivers/infiniband/hw/hfi1/file_ops.c hfi1_clear_ctxt_pkey(dd, uctxt); uctxt 711 drivers/infiniband/hw/hfi1/file_ops.c uctxt->event_flags = 0; uctxt 713 drivers/infiniband/hw/hfi1/file_ops.c deallocate_ctxt(uctxt); uctxt 764 drivers/infiniband/hw/hfi1/file_ops.c fd->uctxt->wait, uctxt 765 drivers/infiniband/hw/hfi1/file_ops.c !test_bit(HFI1_CTXT_BASE_UNINIT, &fd->uctxt->event_flags)); uctxt 767 drivers/infiniband/hw/hfi1/file_ops.c if (test_bit(HFI1_CTXT_BASE_FAILED, &fd->uctxt->event_flags)) uctxt 772 drivers/infiniband/hw/hfi1/file_ops.c fd->rec_cpu_num = hfi1_get_proc_affinity(fd->uctxt->numa_id); uctxt 773 drivers/infiniband/hw/hfi1/file_ops.c ret = init_user_ctxt(fd, fd->uctxt); uctxt 778 drivers/infiniband/hw/hfi1/file_ops.c __clear_bit(fd->subctxt, fd->uctxt->in_use_ctxts); uctxt 780 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcd_put(fd->uctxt); uctxt 781 drivers/infiniband/hw/hfi1/file_ops.c fd->uctxt = NULL; uctxt 791 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt = NULL; uctxt 794 drivers/infiniband/hw/hfi1/file_ops.c if (fd->uctxt) uctxt 826 drivers/infiniband/hw/hfi1/file_ops.c ret = allocate_ctxt(fd, fd->dd, &uinfo, &uctxt); uctxt 833 drivers/infiniband/hw/hfi1/file_ops.c ret = setup_base_ctxt(fd, uctxt); uctxt 835 drivers/infiniband/hw/hfi1/file_ops.c deallocate_ctxt(uctxt); uctxt 858 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt) uctxt 865 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->sc && (uctxt->sc->type == SC_KERNEL)) uctxt 869 drivers/infiniband/hw/hfi1/file_ops.c if (memcmp(uctxt->uuid, uinfo->uuid, sizeof(uctxt->uuid)) || uctxt 870 drivers/infiniband/hw/hfi1/file_ops.c uctxt->jkey != generate_jkey(current_uid()) || uctxt 871 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_id != uinfo->subctxt_id || uctxt 872 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_cnt != uinfo->subctxt_cnt) uctxt 876 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->userversion != uinfo->userversion) uctxt 881 drivers/infiniband/hw/hfi1/file_ops.c if (bitmap_empty(uctxt->in_use_ctxts, HFI1_MAX_SHARED_CTXTS)) { uctxt 887 drivers/infiniband/hw/hfi1/file_ops.c subctxt = find_first_zero_bit(uctxt->in_use_ctxts, uctxt 889 drivers/infiniband/hw/hfi1/file_ops.c if (subctxt >= uctxt->subctxt_cnt) { uctxt 895 drivers/infiniband/hw/hfi1/file_ops.c __set_bit(fd->subctxt, uctxt->in_use_ctxts); uctxt 898 drivers/infiniband/hw/hfi1/file_ops.c fd->uctxt = uctxt; uctxt 899 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcd_get(uctxt); uctxt 921 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt; uctxt 930 drivers/infiniband/hw/hfi1/file_ops.c uctxt = hfi1_rcd_get_by_index(dd, i); uctxt 931 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt) { uctxt 932 drivers/infiniband/hw/hfi1/file_ops.c ret = match_ctxt(fd, uinfo, uctxt); uctxt 933 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcd_put(uctxt); uctxt 947 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt; uctxt 973 drivers/infiniband/hw/hfi1/file_ops.c ret = hfi1_create_ctxtdata(dd->pport, numa, &uctxt); uctxt 979 drivers/infiniband/hw/hfi1/file_ops.c uctxt->ctxt, fd->subctxt, current->pid, fd->rec_cpu_num, uctxt 980 drivers/infiniband/hw/hfi1/file_ops.c uctxt->numa_id); uctxt 985 drivers/infiniband/hw/hfi1/file_ops.c uctxt->sc = sc_alloc(dd, SC_USER, uctxt->rcvhdrqentsize, dd->node); uctxt 986 drivers/infiniband/hw/hfi1/file_ops.c if (!uctxt->sc) { uctxt 990 drivers/infiniband/hw/hfi1/file_ops.c hfi1_cdbg(PROC, "allocated send context %u(%u)\n", uctxt->sc->sw_index, uctxt 991 drivers/infiniband/hw/hfi1/file_ops.c uctxt->sc->hw_context); uctxt 992 drivers/infiniband/hw/hfi1/file_ops.c ret = sc_enable(uctxt->sc); uctxt 1005 drivers/infiniband/hw/hfi1/file_ops.c __set_bit(0, uctxt->in_use_ctxts); uctxt 1007 drivers/infiniband/hw/hfi1/file_ops.c init_subctxts(uctxt, uinfo); uctxt 1008 drivers/infiniband/hw/hfi1/file_ops.c uctxt->userversion = uinfo->userversion; uctxt 1009 drivers/infiniband/hw/hfi1/file_ops.c uctxt->flags = hfi1_cap_mask; /* save current flag state */ uctxt 1010 drivers/infiniband/hw/hfi1/file_ops.c init_waitqueue_head(&uctxt->wait); uctxt 1011 drivers/infiniband/hw/hfi1/file_ops.c strlcpy(uctxt->comm, current->comm, sizeof(uctxt->comm)); uctxt 1012 drivers/infiniband/hw/hfi1/file_ops.c memcpy(uctxt->uuid, uinfo->uuid, sizeof(uctxt->uuid)); uctxt 1013 drivers/infiniband/hw/hfi1/file_ops.c uctxt->jkey = generate_jkey(current_uid()); uctxt 1022 drivers/infiniband/hw/hfi1/file_ops.c *rcd = uctxt; uctxt 1027 drivers/infiniband/hw/hfi1/file_ops.c hfi1_free_ctxt(uctxt); uctxt 1031 drivers/infiniband/hw/hfi1/file_ops.c static void deallocate_ctxt(struct hfi1_ctxtdata *uctxt) uctxt 1035 drivers/infiniband/hw/hfi1/file_ops.c if (++uctxt->dd->freectxts == uctxt->dd->num_user_contexts) uctxt 1036 drivers/infiniband/hw/hfi1/file_ops.c aspm_enable_all(uctxt->dd); uctxt 1039 drivers/infiniband/hw/hfi1/file_ops.c hfi1_free_ctxt(uctxt); uctxt 1042 drivers/infiniband/hw/hfi1/file_ops.c static void init_subctxts(struct hfi1_ctxtdata *uctxt, uctxt 1045 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_cnt = uinfo->subctxt_cnt; uctxt 1046 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_id = uinfo->subctxt_id; uctxt 1047 drivers/infiniband/hw/hfi1/file_ops.c set_bit(HFI1_CTXT_BASE_UNINIT, &uctxt->event_flags); uctxt 1050 drivers/infiniband/hw/hfi1/file_ops.c static int setup_subctxt(struct hfi1_ctxtdata *uctxt) uctxt 1053 drivers/infiniband/hw/hfi1/file_ops.c u16 num_subctxts = uctxt->subctxt_cnt; uctxt 1055 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_uregbase = vmalloc_user(PAGE_SIZE); uctxt 1056 drivers/infiniband/hw/hfi1/file_ops.c if (!uctxt->subctxt_uregbase) uctxt 1060 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_rcvhdr_base = vmalloc_user(rcvhdrq_size(uctxt) * uctxt 1062 drivers/infiniband/hw/hfi1/file_ops.c if (!uctxt->subctxt_rcvhdr_base) { uctxt 1067 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_rcvegrbuf = vmalloc_user(uctxt->egrbufs.size * uctxt 1069 drivers/infiniband/hw/hfi1/file_ops.c if (!uctxt->subctxt_rcvegrbuf) { uctxt 1077 drivers/infiniband/hw/hfi1/file_ops.c vfree(uctxt->subctxt_rcvhdr_base); uctxt 1078 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_rcvhdr_base = NULL; uctxt 1080 drivers/infiniband/hw/hfi1/file_ops.c vfree(uctxt->subctxt_uregbase); uctxt 1081 drivers/infiniband/hw/hfi1/file_ops.c uctxt->subctxt_uregbase = NULL; uctxt 1086 drivers/infiniband/hw/hfi1/file_ops.c static void user_init(struct hfi1_ctxtdata *uctxt) uctxt 1091 drivers/infiniband/hw/hfi1/file_ops.c uctxt->urgent = 0; uctxt 1092 drivers/infiniband/hw/hfi1/file_ops.c uctxt->urgent_poll = 0; uctxt 1105 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->rcvhdrtail_kvaddr) uctxt 1106 drivers/infiniband/hw/hfi1/file_ops.c clear_rcvhdrtail(uctxt); uctxt 1109 drivers/infiniband/hw/hfi1/file_ops.c hfi1_set_ctxt_jkey(uctxt->dd, uctxt, uctxt->jkey); uctxt 1113 drivers/infiniband/hw/hfi1/file_ops.c if (HFI1_CAP_UGET_MASK(uctxt->flags, HDRSUPP)) uctxt 1120 drivers/infiniband/hw/hfi1/file_ops.c if (!HFI1_CAP_UGET_MASK(uctxt->flags, MULTI_PKT_EGR)) uctxt 1122 drivers/infiniband/hw/hfi1/file_ops.c if (HFI1_CAP_UGET_MASK(uctxt->flags, NODROP_EGR_FULL)) uctxt 1124 drivers/infiniband/hw/hfi1/file_ops.c if (HFI1_CAP_UGET_MASK(uctxt->flags, NODROP_RHQ_FULL)) uctxt 1132 drivers/infiniband/hw/hfi1/file_ops.c if (HFI1_CAP_UGET_MASK(uctxt->flags, DMA_RTAIL)) uctxt 1136 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcvctrl(uctxt->dd, rcvctrl_ops, uctxt); uctxt 1142 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 1148 drivers/infiniband/hw/hfi1/file_ops.c cinfo.runtime_flags = (((uctxt->flags >> HFI1_CAP_MISC_SHIFT) & uctxt 1150 drivers/infiniband/hw/hfi1/file_ops.c HFI1_CAP_UGET_MASK(uctxt->flags, MASK) | uctxt 1151 drivers/infiniband/hw/hfi1/file_ops.c HFI1_CAP_KGET_MASK(uctxt->flags, K2U); uctxt 1157 drivers/infiniband/hw/hfi1/file_ops.c cinfo.unit = uctxt->dd->unit; uctxt 1158 drivers/infiniband/hw/hfi1/file_ops.c cinfo.ctxt = uctxt->ctxt; uctxt 1160 drivers/infiniband/hw/hfi1/file_ops.c cinfo.rcvtids = roundup(uctxt->egrbufs.alloced, uctxt 1161 drivers/infiniband/hw/hfi1/file_ops.c uctxt->dd->rcv_entries.group_size) + uctxt 1162 drivers/infiniband/hw/hfi1/file_ops.c uctxt->expected_count; uctxt 1163 drivers/infiniband/hw/hfi1/file_ops.c cinfo.credits = uctxt->sc->credits; uctxt 1164 drivers/infiniband/hw/hfi1/file_ops.c cinfo.numa_node = uctxt->numa_id; uctxt 1166 drivers/infiniband/hw/hfi1/file_ops.c cinfo.send_ctxt = uctxt->sc->hw_context; uctxt 1168 drivers/infiniband/hw/hfi1/file_ops.c cinfo.egrtids = uctxt->egrbufs.alloced; uctxt 1169 drivers/infiniband/hw/hfi1/file_ops.c cinfo.rcvhdrq_cnt = uctxt->rcvhdrq_cnt; uctxt 1170 drivers/infiniband/hw/hfi1/file_ops.c cinfo.rcvhdrq_entsize = uctxt->rcvhdrqentsize << 2; uctxt 1172 drivers/infiniband/hw/hfi1/file_ops.c cinfo.rcvegr_size = uctxt->egrbufs.rcvtid_size; uctxt 1174 drivers/infiniband/hw/hfi1/file_ops.c trace_hfi1_ctxt_info(uctxt->dd, uctxt->ctxt, fd->subctxt, &cinfo); uctxt 1182 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt) uctxt 1186 drivers/infiniband/hw/hfi1/file_ops.c ret = hfi1_user_sdma_alloc_queues(uctxt, fd); uctxt 1190 drivers/infiniband/hw/hfi1/file_ops.c ret = hfi1_user_exp_rcv_init(fd, uctxt); uctxt 1192 drivers/infiniband/hw/hfi1/file_ops.c hfi1_user_sdma_free_queues(fd, uctxt); uctxt 1198 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt) uctxt 1200 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_devdata *dd = uctxt->dd; uctxt 1203 drivers/infiniband/hw/hfi1/file_ops.c hfi1_init_ctxt(uctxt->sc); uctxt 1206 drivers/infiniband/hw/hfi1/file_ops.c ret = hfi1_create_rcvhdrq(dd, uctxt); uctxt 1210 drivers/infiniband/hw/hfi1/file_ops.c ret = hfi1_setup_eagerbufs(uctxt); uctxt 1215 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->subctxt_cnt) uctxt 1216 drivers/infiniband/hw/hfi1/file_ops.c ret = setup_subctxt(uctxt); uctxt 1220 drivers/infiniband/hw/hfi1/file_ops.c ret = hfi1_alloc_ctxt_rcv_groups(uctxt); uctxt 1224 drivers/infiniband/hw/hfi1/file_ops.c ret = init_user_ctxt(fd, uctxt); uctxt 1228 drivers/infiniband/hw/hfi1/file_ops.c user_init(uctxt); uctxt 1231 drivers/infiniband/hw/hfi1/file_ops.c fd->uctxt = uctxt; uctxt 1232 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcd_get(uctxt); uctxt 1235 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->subctxt_cnt) { uctxt 1241 drivers/infiniband/hw/hfi1/file_ops.c set_bit(HFI1_CTXT_BASE_FAILED, &uctxt->event_flags); uctxt 1247 drivers/infiniband/hw/hfi1/file_ops.c clear_bit(HFI1_CTXT_BASE_UNINIT, &uctxt->event_flags); uctxt 1248 drivers/infiniband/hw/hfi1/file_ops.c wake_up(&uctxt->wait); uctxt 1257 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 1258 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_devdata *dd = uctxt->dd; uctxt 1261 drivers/infiniband/hw/hfi1/file_ops.c trace_hfi1_uctxtdata(uctxt->dd, uctxt, fd->subctxt); uctxt 1270 drivers/infiniband/hw/hfi1/file_ops.c binfo.jkey = uctxt->jkey; uctxt 1277 drivers/infiniband/hw/hfi1/file_ops.c offset = ((u64)uctxt->sc->hw_free - uctxt 1278 drivers/infiniband/hw/hfi1/file_ops.c (u64)dd->cr_base[uctxt->numa_id].va) % PAGE_SIZE; uctxt 1279 drivers/infiniband/hw/hfi1/file_ops.c binfo.sc_credits_addr = HFI1_MMAP_TOKEN(PIO_CRED, uctxt->ctxt, uctxt 1281 drivers/infiniband/hw/hfi1/file_ops.c binfo.pio_bufbase = HFI1_MMAP_TOKEN(PIO_BUFS, uctxt->ctxt, uctxt 1283 drivers/infiniband/hw/hfi1/file_ops.c uctxt->sc->base_addr); uctxt 1285 drivers/infiniband/hw/hfi1/file_ops.c uctxt->ctxt, uctxt 1287 drivers/infiniband/hw/hfi1/file_ops.c uctxt->sc->base_addr); uctxt 1288 drivers/infiniband/hw/hfi1/file_ops.c binfo.rcvhdr_bufbase = HFI1_MMAP_TOKEN(RCV_HDRQ, uctxt->ctxt, uctxt 1290 drivers/infiniband/hw/hfi1/file_ops.c uctxt->rcvhdrq); uctxt 1291 drivers/infiniband/hw/hfi1/file_ops.c binfo.rcvegr_bufbase = HFI1_MMAP_TOKEN(RCV_EGRBUF, uctxt->ctxt, uctxt 1293 drivers/infiniband/hw/hfi1/file_ops.c uctxt->egrbufs.rcvtids[0].dma); uctxt 1294 drivers/infiniband/hw/hfi1/file_ops.c binfo.sdma_comp_bufbase = HFI1_MMAP_TOKEN(SDMA_COMP, uctxt->ctxt, uctxt 1300 drivers/infiniband/hw/hfi1/file_ops.c binfo.user_regbase = HFI1_MMAP_TOKEN(UREGS, uctxt->ctxt, uctxt 1302 drivers/infiniband/hw/hfi1/file_ops.c offset = offset_in_page((uctxt_offset(uctxt) + fd->subctxt) * uctxt 1304 drivers/infiniband/hw/hfi1/file_ops.c binfo.events_bufbase = HFI1_MMAP_TOKEN(EVENTS, uctxt->ctxt, uctxt 1307 drivers/infiniband/hw/hfi1/file_ops.c binfo.status_bufbase = HFI1_MMAP_TOKEN(STATUS, uctxt->ctxt, uctxt 1311 drivers/infiniband/hw/hfi1/file_ops.c binfo.rcvhdrtail_base = HFI1_MMAP_TOKEN(RTAIL, uctxt->ctxt, uctxt 1313 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->subctxt_cnt) { uctxt 1315 drivers/infiniband/hw/hfi1/file_ops.c uctxt->ctxt, uctxt 1318 drivers/infiniband/hw/hfi1/file_ops.c uctxt->ctxt, uctxt 1321 drivers/infiniband/hw/hfi1/file_ops.c uctxt->ctxt, uctxt 1448 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 1449 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_devdata *dd = uctxt->dd; uctxt 1452 drivers/infiniband/hw/hfi1/file_ops.c poll_wait(fp, &uctxt->wait, pt); uctxt 1455 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->urgent != uctxt->urgent_poll) { uctxt 1457 drivers/infiniband/hw/hfi1/file_ops.c uctxt->urgent_poll = uctxt->urgent; uctxt 1460 drivers/infiniband/hw/hfi1/file_ops.c set_bit(HFI1_CTXT_WAITING_URG, &uctxt->event_flags); uctxt 1471 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 1472 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_devdata *dd = uctxt->dd; uctxt 1475 drivers/infiniband/hw/hfi1/file_ops.c poll_wait(fp, &uctxt->wait, pt); uctxt 1478 drivers/infiniband/hw/hfi1/file_ops.c if (hdrqempty(uctxt)) { uctxt 1479 drivers/infiniband/hw/hfi1/file_ops.c set_bit(HFI1_CTXT_WAITING_RCV, &uctxt->event_flags); uctxt 1480 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcvctrl(dd, HFI1_RCVCTRL_INTRAVAIL_ENB, uctxt); uctxt 1497 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_ctxtdata *uctxt; uctxt 1506 drivers/infiniband/hw/hfi1/file_ops.c uctxt = hfi1_rcd_get_by_index(dd, ctxt); uctxt 1507 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt) { uctxt 1514 drivers/infiniband/hw/hfi1/file_ops.c evs = dd->events + uctxt_offset(uctxt); uctxt 1516 drivers/infiniband/hw/hfi1/file_ops.c for (i = 1; i < uctxt->subctxt_cnt; i++) uctxt 1518 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcd_put(uctxt); uctxt 1535 drivers/infiniband/hw/hfi1/file_ops.c static int manage_rcvq(struct hfi1_ctxtdata *uctxt, u16 subctxt, uctxt 1538 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_devdata *dd = uctxt->dd; uctxt 1558 drivers/infiniband/hw/hfi1/file_ops.c if (uctxt->rcvhdrtail_kvaddr) uctxt 1559 drivers/infiniband/hw/hfi1/file_ops.c clear_rcvhdrtail(uctxt); uctxt 1564 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcvctrl(dd, rcvctrl_op, uctxt); uctxt 1575 drivers/infiniband/hw/hfi1/file_ops.c static int user_event_ack(struct hfi1_ctxtdata *uctxt, u16 subctxt, uctxt 1579 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_devdata *dd = uctxt->dd; uctxt 1589 drivers/infiniband/hw/hfi1/file_ops.c evs = dd->events + uctxt_offset(uctxt) + subctxt; uctxt 1599 drivers/infiniband/hw/hfi1/file_ops.c static int set_ctxt_pkey(struct hfi1_ctxtdata *uctxt, unsigned long arg) uctxt 1602 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_pportdata *ppd = uctxt->ppd; uctxt 1603 drivers/infiniband/hw/hfi1/file_ops.c struct hfi1_devdata *dd = uctxt->dd; uctxt 1617 drivers/infiniband/hw/hfi1/file_ops.c return hfi1_set_ctxt_pkey(dd, uctxt, pkey); uctxt 1626 drivers/infiniband/hw/hfi1/file_ops.c static int ctxt_reset(struct hfi1_ctxtdata *uctxt) uctxt 1632 drivers/infiniband/hw/hfi1/file_ops.c if (!uctxt || !uctxt->dd || !uctxt->sc) uctxt 1641 drivers/infiniband/hw/hfi1/file_ops.c dd = uctxt->dd; uctxt 1642 drivers/infiniband/hw/hfi1/file_ops.c sc = uctxt->sc; uctxt 1675 drivers/infiniband/hw/hfi1/file_ops.c hfi1_rcvctrl(dd, HFI1_RCVCTRL_CTXT_ENB, uctxt); uctxt 1443 drivers/infiniband/hw/hfi1/hfi.h struct hfi1_ctxtdata *uctxt; uctxt 1467 drivers/infiniband/hw/hfi1/hfi.h static inline unsigned long uctxt_offset(struct hfi1_ctxtdata *uctxt) uctxt 1469 drivers/infiniband/hw/hfi1/hfi.h return (uctxt->ctxt - uctxt->dd->first_dyn_alloc_ctxt) * uctxt 62 drivers/infiniband/hw/hfi1/trace_ctxts.h TP_PROTO(struct hfi1_devdata *dd, struct hfi1_ctxtdata *uctxt, uctxt 64 drivers/infiniband/hw/hfi1/trace_ctxts.h TP_ARGS(dd, uctxt, subctxt), uctxt 78 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->ctxt = uctxt->ctxt; uctxt 80 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->credits = uctxt->sc->credits; uctxt 81 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->hw_free = le64_to_cpu(*uctxt->sc->hw_free); uctxt 82 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->piobase = uctxt->sc->base_addr; uctxt 83 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->rcvhdrq_cnt = uctxt->rcvhdrq_cnt; uctxt 84 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->rcvhdrq_dma = uctxt->rcvhdrq_dma; uctxt 85 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->eager_cnt = uctxt->egrbufs.alloced; uctxt 86 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->rcvegr_dma = uctxt->egrbufs.rcvtids[0].dma; uctxt 87 drivers/infiniband/hw/hfi1/trace_ctxts.h __entry->subctxt_cnt = uctxt->subctxt_cnt; uctxt 54 drivers/infiniband/hw/hfi1/user_exp_rcv.c static void unlock_exp_tids(struct hfi1_ctxtdata *uctxt, uctxt 88 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt) uctxt 90 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_devdata *dd = uctxt->dd; uctxt 93 drivers/infiniband/hw/hfi1/user_exp_rcv.c fd->entry_to_rb = kcalloc(uctxt->expected_count, uctxt 99 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (!HFI1_CAP_UGET_MASK(uctxt->flags, TID_UNMAP)) { uctxt 101 drivers/infiniband/hw/hfi1/user_exp_rcv.c fd->invalid_tids = kcalloc(uctxt->expected_count, uctxt 139 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (uctxt->subctxt_cnt && fd->handler) { uctxt 142 drivers/infiniband/hw/hfi1/user_exp_rcv.c fd->tid_limit = uctxt->expected_count / uctxt->subctxt_cnt; uctxt 143 drivers/infiniband/hw/hfi1/user_exp_rcv.c remainder = uctxt->expected_count % uctxt->subctxt_cnt; uctxt 147 drivers/infiniband/hw/hfi1/user_exp_rcv.c fd->tid_limit = uctxt->expected_count; uctxt 156 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 165 drivers/infiniband/hw/hfi1/user_exp_rcv.c mutex_lock(&uctxt->exp_mutex); uctxt 166 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (!EXP_TID_SET_EMPTY(uctxt->tid_full_list)) uctxt 167 drivers/infiniband/hw/hfi1/user_exp_rcv.c unlock_exp_tids(uctxt, &uctxt->tid_full_list, fd); uctxt 168 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (!EXP_TID_SET_EMPTY(uctxt->tid_used_list)) uctxt 169 drivers/infiniband/hw/hfi1/user_exp_rcv.c unlock_exp_tids(uctxt, &uctxt->tid_used_list, fd); uctxt 170 drivers/infiniband/hw/hfi1/user_exp_rcv.c mutex_unlock(&uctxt->exp_mutex); uctxt 199 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_devdata *dd = fd->uctxt->dd; uctxt 221 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_devdata *dd = fd->uctxt->dd; uctxt 228 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (npages > fd->uctxt->expected_count) { uctxt 319 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 320 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_devdata *dd = uctxt->dd; uctxt 335 drivers/infiniband/hw/hfi1/user_exp_rcv.c tidbuf->psets = kcalloc(uctxt->expected_count, sizeof(*tidbuf->psets), uctxt 380 drivers/infiniband/hw/hfi1/user_exp_rcv.c mutex_lock(&uctxt->exp_mutex); uctxt 385 drivers/infiniband/hw/hfi1/user_exp_rcv.c while (ngroups && uctxt->tid_group_list.count) { uctxt 387 drivers/infiniband/hw/hfi1/user_exp_rcv.c tid_group_pop(&uctxt->tid_group_list); uctxt 398 drivers/infiniband/hw/hfi1/user_exp_rcv.c tid_group_add_tail(grp, &uctxt->tid_group_list); uctxt 404 drivers/infiniband/hw/hfi1/user_exp_rcv.c tid_group_add_tail(grp, &uctxt->tid_full_list); uctxt 417 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (!uctxt->tid_used_list.count || need_group) { uctxt 418 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (!uctxt->tid_group_list.count) uctxt 421 drivers/infiniband/hw/hfi1/user_exp_rcv.c grp = tid_group_pop(&uctxt->tid_group_list); uctxt 422 drivers/infiniband/hw/hfi1/user_exp_rcv.c tid_group_add_tail(grp, &uctxt->tid_used_list); uctxt 430 drivers/infiniband/hw/hfi1/user_exp_rcv.c list_for_each_entry_safe(grp, ptr, &uctxt->tid_used_list.list, uctxt 446 drivers/infiniband/hw/hfi1/user_exp_rcv.c &uctxt->tid_used_list, uctxt 447 drivers/infiniband/hw/hfi1/user_exp_rcv.c &uctxt->tid_full_list); uctxt 466 drivers/infiniband/hw/hfi1/user_exp_rcv.c mutex_unlock(&uctxt->exp_mutex); uctxt 510 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 522 drivers/infiniband/hw/hfi1/user_exp_rcv.c mutex_lock(&uctxt->exp_mutex); uctxt 535 drivers/infiniband/hw/hfi1/user_exp_rcv.c mutex_unlock(&uctxt->exp_mutex); uctxt 544 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 545 drivers/infiniband/hw/hfi1/user_exp_rcv.c unsigned long *ev = uctxt->dd->events + uctxt 546 drivers/infiniband/hw/hfi1/user_exp_rcv.c (uctxt_offset(uctxt) + fd->subctxt); uctxt 556 drivers/infiniband/hw/hfi1/user_exp_rcv.c array = kcalloc(uctxt->expected_count, sizeof(*array), GFP_KERNEL); uctxt 686 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 687 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_devdata *dd = uctxt->dd; uctxt 733 drivers/infiniband/hw/hfi1/user_exp_rcv.c tidinfo = rcventry2tidinfo(rcventry - uctxt->expected_base) | uctxt 754 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 756 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_devdata *dd = uctxt->dd; uctxt 803 drivers/infiniband/hw/hfi1/user_exp_rcv.c trace_hfi1_exp_tid_reg(uctxt->ctxt, fd->subctxt, rcventry, npages, uctxt 811 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 812 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_devdata *dd = uctxt->dd; uctxt 817 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (tididx >= uctxt->expected_count) { uctxt 819 drivers/infiniband/hw/hfi1/user_exp_rcv.c tididx, uctxt->ctxt); uctxt 829 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (!node || node->rcventry != (uctxt->expected_base + rcventry)) uctxt 845 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 846 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_devdata *dd = uctxt->dd; uctxt 848 drivers/infiniband/hw/hfi1/user_exp_rcv.c trace_hfi1_exp_tid_unreg(uctxt->ctxt, fd->subctxt, node->rcventry, uctxt 864 drivers/infiniband/hw/hfi1/user_exp_rcv.c tid_group_move(node->grp, &uctxt->tid_full_list, uctxt 865 drivers/infiniband/hw/hfi1/user_exp_rcv.c &uctxt->tid_used_list); uctxt 867 drivers/infiniband/hw/hfi1/user_exp_rcv.c tid_group_move(node->grp, &uctxt->tid_used_list, uctxt 868 drivers/infiniband/hw/hfi1/user_exp_rcv.c &uctxt->tid_group_list); uctxt 876 drivers/infiniband/hw/hfi1/user_exp_rcv.c static void unlock_exp_tids(struct hfi1_ctxtdata *uctxt, uctxt 892 drivers/infiniband/hw/hfi1/user_exp_rcv.c uctxt->expected_base]; uctxt 912 drivers/infiniband/hw/hfi1/user_exp_rcv.c struct hfi1_ctxtdata *uctxt = fdata->uctxt; uctxt 919 drivers/infiniband/hw/hfi1/user_exp_rcv.c trace_hfi1_exp_tid_inval(uctxt->ctxt, fdata->subctxt, node->mmu.addr, uctxt 924 drivers/infiniband/hw/hfi1/user_exp_rcv.c if (fdata->invalid_tid_idx < uctxt->expected_count) { uctxt 926 drivers/infiniband/hw/hfi1/user_exp_rcv.c rcventry2tidinfo(node->rcventry - uctxt->expected_base); uctxt 941 drivers/infiniband/hw/hfi1/user_exp_rcv.c ev = uctxt->dd->events + uctxt 942 drivers/infiniband/hw/hfi1/user_exp_rcv.c (uctxt_offset(uctxt) + fdata->subctxt); uctxt 956 drivers/infiniband/hw/hfi1/user_exp_rcv.c u32 base = fdata->uctxt->expected_base; uctxt 965 drivers/infiniband/hw/hfi1/user_exp_rcv.c u32 base = fdata->uctxt->expected_base; uctxt 88 drivers/infiniband/hw/hfi1/user_exp_rcv.h struct hfi1_ctxtdata *uctxt); uctxt 164 drivers/infiniband/hw/hfi1/user_sdma.c int hfi1_user_sdma_alloc_queues(struct hfi1_ctxtdata *uctxt, uctxt 173 drivers/infiniband/hw/hfi1/user_sdma.c if (!uctxt || !fd) uctxt 179 drivers/infiniband/hw/hfi1/user_sdma.c dd = uctxt->dd; uctxt 185 drivers/infiniband/hw/hfi1/user_sdma.c pq->ctxt = uctxt->ctxt; uctxt 209 drivers/infiniband/hw/hfi1/user_sdma.c snprintf(buf, 64, "txreq-kmem-cache-%u-%u-%u", dd->unit, uctxt->ctxt, uctxt 218 drivers/infiniband/hw/hfi1/user_sdma.c uctxt->ctxt); uctxt 277 drivers/infiniband/hw/hfi1/user_sdma.c struct hfi1_ctxtdata *uctxt) uctxt 281 drivers/infiniband/hw/hfi1/user_sdma.c trace_hfi1_sdma_user_free_queues(uctxt->dd, uctxt->ctxt, fd->subctxt); uctxt 347 drivers/infiniband/hw/hfi1/user_sdma.c struct hfi1_ctxtdata *uctxt = fd->uctxt; uctxt 366 drivers/infiniband/hw/hfi1/user_sdma.c dd->unit, uctxt->ctxt, fd->subctxt, uctxt 373 drivers/infiniband/hw/hfi1/user_sdma.c dd->unit, uctxt->ctxt, fd->subctxt, ret); uctxt 377 drivers/infiniband/hw/hfi1/user_sdma.c trace_hfi1_sdma_user_reqinfo(dd, uctxt->ctxt, fd->subctxt, uctxt 382 drivers/infiniband/hw/hfi1/user_sdma.c dd->unit, uctxt->ctxt, fd->subctxt, info.comp_idx); uctxt 393 drivers/infiniband/hw/hfi1/user_sdma.c dd->unit, uctxt->ctxt, fd->subctxt, info.comp_idx, uctxt 401 drivers/infiniband/hw/hfi1/user_sdma.c dd->unit, uctxt->ctxt, fd->subctxt, info.comp_idx); uctxt 408 drivers/infiniband/hw/hfi1/user_sdma.c dd->unit, uctxt->ctxt, fd->subctxt, uctxt 415 drivers/infiniband/hw/hfi1/user_sdma.c trace_hfi1_sdma_user_process_request(dd, uctxt->ctxt, fd->subctxt, uctxt 517 drivers/infiniband/hw/hfi1/user_sdma.c trace_hfi1_sdma_user_initial_tidoffset(dd, uctxt->ctxt, fd->subctxt, uctxt 535 drivers/infiniband/hw/hfi1/user_sdma.c trace_hfi1_sdma_user_data_length(dd, uctxt->ctxt, fd->subctxt, uctxt 578 drivers/infiniband/hw/hfi1/user_sdma.c selector += uctxt->ctxt + fd->subctxt; uctxt 245 drivers/infiniband/hw/hfi1/user_sdma.h int hfi1_user_sdma_alloc_queues(struct hfi1_ctxtdata *uctxt, uctxt 248 drivers/infiniband/hw/hfi1/user_sdma.h struct hfi1_ctxtdata *uctxt); uctxt 65 drivers/infiniband/hw/hfi1/vnic_main.c static int setup_vnic_ctxt(struct hfi1_devdata *dd, struct hfi1_ctxtdata *uctxt) uctxt 70 drivers/infiniband/hw/hfi1/vnic_main.c uctxt->do_interrupt = &handle_receive_interrupt; uctxt 73 drivers/infiniband/hw/hfi1/vnic_main.c ret = hfi1_create_rcvhdrq(dd, uctxt); uctxt 77 drivers/infiniband/hw/hfi1/vnic_main.c ret = hfi1_setup_eagerbufs(uctxt); uctxt 81 drivers/infiniband/hw/hfi1/vnic_main.c if (uctxt->rcvhdrtail_kvaddr) uctxt 82 drivers/infiniband/hw/hfi1/vnic_main.c clear_rcvhdrtail(uctxt); uctxt 87 drivers/infiniband/hw/hfi1/vnic_main.c if (!HFI1_CAP_KGET_MASK(uctxt->flags, MULTI_PKT_EGR)) uctxt 89 drivers/infiniband/hw/hfi1/vnic_main.c if (HFI1_CAP_KGET_MASK(uctxt->flags, NODROP_EGR_FULL)) uctxt 91 drivers/infiniband/hw/hfi1/vnic_main.c if (HFI1_CAP_KGET_MASK(uctxt->flags, NODROP_RHQ_FULL)) uctxt 93 drivers/infiniband/hw/hfi1/vnic_main.c if (HFI1_CAP_KGET_MASK(uctxt->flags, DMA_RTAIL)) uctxt 96 drivers/infiniband/hw/hfi1/vnic_main.c hfi1_rcvctrl(uctxt->dd, rcvctrl_ops, uctxt); uctxt 104 drivers/infiniband/hw/hfi1/vnic_main.c struct hfi1_ctxtdata *uctxt; uctxt 110 drivers/infiniband/hw/hfi1/vnic_main.c ret = hfi1_create_ctxtdata(dd->pport, dd->node, &uctxt); uctxt 116 drivers/infiniband/hw/hfi1/vnic_main.c uctxt->flags = HFI1_CAP_KGET(MULTI_PKT_EGR) | uctxt 120 drivers/infiniband/hw/hfi1/vnic_main.c uctxt->seq_cnt = 1; uctxt 121 drivers/infiniband/hw/hfi1/vnic_main.c uctxt->is_vnic = true; uctxt 123 drivers/infiniband/hw/hfi1/vnic_main.c msix_request_rcd_irq(uctxt); uctxt 126 drivers/infiniband/hw/hfi1/vnic_main.c dd_dev_dbg(dd, "created vnic context %d\n", uctxt->ctxt); uctxt 127 drivers/infiniband/hw/hfi1/vnic_main.c *vnic_ctxt = uctxt; uctxt 133 drivers/infiniband/hw/hfi1/vnic_main.c struct hfi1_ctxtdata *uctxt) uctxt 135 drivers/infiniband/hw/hfi1/vnic_main.c dd_dev_dbg(dd, "closing vnic context %d\n", uctxt->ctxt); uctxt 147 drivers/infiniband/hw/hfi1/vnic_main.c HFI1_RCVCTRL_NO_EGR_DROP_DIS, uctxt); uctxt 150 drivers/infiniband/hw/hfi1/vnic_main.c if (uctxt->msix_intr) uctxt 151 drivers/infiniband/hw/hfi1/vnic_main.c msix_free_irq(dd, uctxt->msix_intr); uctxt 153 drivers/infiniband/hw/hfi1/vnic_main.c uctxt->event_flags = 0; uctxt 155 drivers/infiniband/hw/hfi1/vnic_main.c hfi1_clear_tids(uctxt); uctxt 156 drivers/infiniband/hw/hfi1/vnic_main.c hfi1_clear_ctxt_pkey(dd, uctxt); uctxt 160 drivers/infiniband/hw/hfi1/vnic_main.c hfi1_free_ctxt(uctxt); uctxt 1655 drivers/infiniband/hw/qib/qib_file_ops.c unsigned uctxt; uctxt 1667 drivers/infiniband/hw/qib/qib_file_ops.c uctxt = rcd->ctxt - dd->first_user_ctxt; uctxt 1668 drivers/infiniband/hw/qib/qib_file_ops.c if (uctxt < dd->ctxts_extrabuf) { uctxt 1670 drivers/infiniband/hw/qib/qib_file_ops.c rcd->pio_base = rcd->piocnt * uctxt; uctxt 1673 drivers/infiniband/hw/qib/qib_file_ops.c rcd->pio_base = rcd->piocnt * uctxt + uctxt 262 tools/testing/selftests/x86/protection_keys.c ucontext_t *uctxt = vucontext; uctxt 277 tools/testing/selftests/x86/protection_keys.c trapno = uctxt->uc_mcontext.gregs[REG_TRAPNO]; uctxt 278 tools/testing/selftests/x86/protection_keys.c ip = uctxt->uc_mcontext.gregs[REG_IP_IDX]; uctxt 279 tools/testing/selftests/x86/protection_keys.c fpregset = uctxt->uc_mcontext.fpregs;