• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/sys/dev/drm2/ttm/

Lines Matching refs:pages

29  * - Pool collects resently freed pages for reuse (and hooks up to
31 * - Tracks currently in use pages
84 * for each 'struct device'. The 'cached' is for pages that are actively used.
91 * @inuse_list: Pool of pages that are in use. The order is very important and
92 * it is in the order that the TTM pages that are put back are in.
93 * @free_list: Pool of pages that are free to be used. No order requirements.
96 * @npages_free: Count of available pages for re-use.
97 * @npages_in_use: Count of pages that are in use.
220 /* Convert kb to number of pages */
274 static int set_pages_array_wb(struct page **pages, int addrinarray)
280 unmap_page_from_agp(pages[i]);
285 static int set_pages_array_wc(struct page **pages, int addrinarray)
291 map_page_into_agp(pages[i]);
296 static int set_pages_array_uc(struct page **pages, int addrinarray)
302 map_page_into_agp(pages[i]);
309 struct page **pages, unsigned cpages)
314 r = set_pages_array_uc(pages, cpages);
316 pr_err("%s: Failed to set %d pages to uc!\n",
320 r = set_pages_array_wc(pages, cpages);
322 pr_err("%s: Failed to set %d pages to wc!\n",
379 /* set memory back to wb and free the pages. */
381 struct page *pages[], unsigned npages)
387 set_pages_array_wb(pages, npages))
388 pr_err("%s: Failed to set %d pages to wb!\n",
401 pr_err("%s: Failed to set %d pages to wb!\n",
409 * Free pages from pool.
412 * number of pages in one go.
414 * @pool: to free the pages from
415 * @nr_free: If set to true will free all pages in pool
430 pr_debug("%s: (%s:%d) Attempting to free %d (%d) pages\n",
495 /* remove range of pages from the pool */
657 * thing is at that point of time there are no pages associated with the
670 * Free pages the pages that failed to change the caching state. If there
671 * are pages that have changed their caching state already put them to the
702 * Allocate 'count' pages, and put 'need' number of them on the
703 * 'pages' and as well on the 'dma_address' starting at 'dma_offset' offset.
704 * The full list of pages should also be on 'd_pages'.
723 pr_err("%s: Unable to allocate table for new pages\n",
729 pr_debug("%s: (%s:%d) Getting %d pages\n",
739 /* store already allocated pages in the pool after
789 * @return count of pages still required to fulfill the request.
834 * @return count of pages still required to fulfill the request.
851 ttm->pages[index] = d_page->p;
863 * On success pages list will hold count number of correctly
864 * cached pages. On failure will hold the negative return value (-ENOMEM, etc).
903 ret = ttm_mem_global_alloc_page(mem_glob, ttm->pages[i],
924 /* Get good estimation how many pages are free in pools */
937 /* Put all pages in pages list to correct pool to wait for reuse */
956 /* make sure pages array match list and count number of pages */
958 ttm->pages[count] = d_page->p;
972 /* free at least NUM_PAGES_TO_ALLOC number of pages
989 ttm->pages[i]);
995 ttm->pages[i] = NULL;
1040 /* return estimated number of unused pages in pool */
1110 char *h[] = {"pool", "refills", "pages freed", "inuse", "available",