Lines Matching refs:nr_pages
306 sgl->nr_pages = DIV_ROUND_UP(sgl->fpage_offs + user_size, PAGE_SIZE); in genwqe_alloc_sync_sgl()
310 __func__, user_addr, user_size, sgl->nr_pages, in genwqe_alloc_sync_sgl()
315 sgl->sgl_size = genwqe_sgl_size(sgl->nr_pages); in genwqe_alloc_sync_sgl()
383 while (p < sgl->nr_pages) { in genwqe_setup_sgl()
401 } else if ((p == sgl->nr_pages - 1) && in genwqe_setup_sgl()
422 if (p == sgl->nr_pages) in genwqe_setup_sgl()
438 if (p == sgl->nr_pages) in genwqe_setup_sgl()
520 static int free_user_pages(struct page **page_list, unsigned int nr_pages, in free_user_pages() argument
525 for (i = 0; i < nr_pages; i++) { in free_user_pages()
575 m->nr_pages = DIV_ROUND_UP(offs + size, PAGE_SIZE); in genwqe_user_vmap()
577 m->page_list = kcalloc(m->nr_pages, in genwqe_user_vmap()
582 m->nr_pages = 0; in genwqe_user_vmap()
587 m->dma_list = (dma_addr_t *)(m->page_list + m->nr_pages); in genwqe_user_vmap()
591 m->nr_pages, in genwqe_user_vmap()
598 if (rc < m->nr_pages) { in genwqe_user_vmap()
604 rc = genwqe_map_pages(cd, m->page_list, m->nr_pages, m->dma_list); in genwqe_user_vmap()
611 free_user_pages(m->page_list, m->nr_pages, 0); in genwqe_user_vmap()
617 m->nr_pages = 0; in genwqe_user_vmap()
641 genwqe_unmap_pages(cd, m->dma_list, m->nr_pages); in genwqe_user_vunmap()
644 free_user_pages(m->page_list, m->nr_pages, 1); in genwqe_user_vunmap()
649 m->nr_pages = 0; in genwqe_user_vunmap()