Lines Matching refs:nr_pages
305 sgl->nr_pages = DIV_ROUND_UP(sgl->fpage_offs + user_size, PAGE_SIZE); in genwqe_alloc_sync_sgl()
309 __func__, user_addr, user_size, sgl->nr_pages, in genwqe_alloc_sync_sgl()
314 sgl->sgl_size = genwqe_sgl_size(sgl->nr_pages); in genwqe_alloc_sync_sgl()
382 while (p < sgl->nr_pages) { in genwqe_setup_sgl()
400 } else if ((p == sgl->nr_pages - 1) && in genwqe_setup_sgl()
421 if (p == sgl->nr_pages) in genwqe_setup_sgl()
437 if (p == sgl->nr_pages) in genwqe_setup_sgl()
519 static int free_user_pages(struct page **page_list, unsigned int nr_pages, in free_user_pages() argument
524 for (i = 0; i < nr_pages; i++) { in free_user_pages()
574 m->nr_pages = DIV_ROUND_UP(offs + size, PAGE_SIZE); in genwqe_user_vmap()
576 m->page_list = kcalloc(m->nr_pages, in genwqe_user_vmap()
581 m->nr_pages = 0; in genwqe_user_vmap()
586 m->dma_list = (dma_addr_t *)(m->page_list + m->nr_pages); in genwqe_user_vmap()
590 m->nr_pages, in genwqe_user_vmap()
597 if (rc < m->nr_pages) { in genwqe_user_vmap()
603 rc = genwqe_map_pages(cd, m->page_list, m->nr_pages, m->dma_list); in genwqe_user_vmap()
610 free_user_pages(m->page_list, m->nr_pages, 0); in genwqe_user_vmap()
616 m->nr_pages = 0; in genwqe_user_vmap()
640 genwqe_unmap_pages(cd, m->dma_list, m->nr_pages); in genwqe_user_vunmap()
643 free_user_pages(m->page_list, m->nr_pages, 1); in genwqe_user_vunmap()
648 m->nr_pages = 0; in genwqe_user_vunmap()