Lines Matching refs:npages

87 			       unsigned start, unsigned npages);
765 if (unlikely(queued < datalen && pageidx == iovec->npages && in user_sdma_txadd()
957 static u32 sdma_cache_evict(struct hfi1_user_sdma_pkt_q *pq, u32 npages) in sdma_cache_evict() argument
962 evict_data.target = npages; in sdma_cache_evict()
970 int npages) in pin_sdma_pages() argument
976 pages = kcalloc(npages, sizeof(*pages), GFP_KERNEL); in pin_sdma_pages()
979 memcpy(pages, node->pages, node->npages * sizeof(*pages)); in pin_sdma_pages()
981 npages -= node->npages; in pin_sdma_pages()
984 atomic_read(&pq->n_locked), npages)) { in pin_sdma_pages()
985 cleared = sdma_cache_evict(pq, npages); in pin_sdma_pages()
986 if (cleared >= npages) in pin_sdma_pages()
991 (node->npages * PAGE_SIZE)), npages, 0, in pin_sdma_pages()
992 pages + node->npages); in pin_sdma_pages()
997 if (pinned != npages) { in pin_sdma_pages()
998 unpin_vector_pages(current->mm, pages, node->npages, pinned); in pin_sdma_pages()
1010 if (node->npages) { in unpin_sdma_pages()
1012 node->npages); in unpin_sdma_pages()
1013 atomic_sub(node->npages, &node->pq->n_locked); in unpin_sdma_pages()
1020 int ret = 0, pinned, npages; in pin_vector_pages() local
1037 iovec->npages = node->npages; in pin_vector_pages()
1054 npages = num_user_pages((unsigned long)iov->iov_base, iov->iov_len); in pin_vector_pages()
1055 if (node->npages < npages) { in pin_vector_pages()
1056 pinned = pin_sdma_pages(req, iovec, node, npages); in pin_vector_pages()
1061 node->npages += pinned; in pin_vector_pages()
1062 npages = node->npages; in pin_vector_pages()
1065 iovec->npages = npages; in pin_vector_pages()
1081 unsigned start, unsigned npages) in unpin_vector_pages() argument
1083 hfi1_release_user_pages(mm, pages + start, npages, false); in unpin_vector_pages()
1519 evict_data->cleared += node->npages; in sdma_rb_evict()