Lines Matching refs:migrate

307 	struct migrate_vma migrate = {  in drm_pagemap_migrate_to_devmem()  local
343 buf = kvcalloc(npages, 2 * sizeof(*migrate.src) + sizeof(*dma_addr) + in drm_pagemap_migrate_to_devmem()
349 dma_addr = buf + (2 * sizeof(*migrate.src) * npages); in drm_pagemap_migrate_to_devmem()
350 pages = buf + (2 * sizeof(*migrate.src) + sizeof(*dma_addr)) * npages; in drm_pagemap_migrate_to_devmem()
358 migrate.vma = vas; in drm_pagemap_migrate_to_devmem()
359 migrate.src = buf; in drm_pagemap_migrate_to_devmem()
360 migrate.dst = migrate.src + npages; in drm_pagemap_migrate_to_devmem()
362 err = migrate_vma_setup(&migrate); in drm_pagemap_migrate_to_devmem()
366 if (!migrate.cpages) { in drm_pagemap_migrate_to_devmem()
371 if (migrate.cpages != npages) { in drm_pagemap_migrate_to_devmem()
376 err = ops->populate_devmem_pfn(devmem_allocation, npages, migrate.dst); in drm_pagemap_migrate_to_devmem()
381 migrate.src, npages, DMA_TO_DEVICE); in drm_pagemap_migrate_to_devmem()
386 struct page *page = pfn_to_page(migrate.dst[i]); in drm_pagemap_migrate_to_devmem()
389 migrate.dst[i] = migrate_pfn(migrate.dst[i]); in drm_pagemap_migrate_to_devmem()
404 drm_pagemap_migration_unlock_put_pages(npages, migrate.dst); in drm_pagemap_migrate_to_devmem()
405 migrate_vma_pages(&migrate); in drm_pagemap_migrate_to_devmem()
406 migrate_vma_finalize(&migrate); in drm_pagemap_migrate_to_devmem()
603 struct migrate_vma migrate = { in __drm_pagemap_migrate_to_ram() local
636 migrate.start = start; in __drm_pagemap_migrate_to_ram()
637 migrate.end = end; in __drm_pagemap_migrate_to_ram()
640 buf = kvcalloc(npages, 2 * sizeof(*migrate.src) + sizeof(*dma_addr) + in __drm_pagemap_migrate_to_ram()
646 dma_addr = buf + (2 * sizeof(*migrate.src) * npages); in __drm_pagemap_migrate_to_ram()
647 pages = buf + (2 * sizeof(*migrate.src) + sizeof(*dma_addr)) * npages; in __drm_pagemap_migrate_to_ram()
649 migrate.vma = vas; in __drm_pagemap_migrate_to_ram()
650 migrate.src = buf; in __drm_pagemap_migrate_to_ram()
651 migrate.dst = migrate.src + npages; in __drm_pagemap_migrate_to_ram()
653 err = migrate_vma_setup(&migrate); in __drm_pagemap_migrate_to_ram()
658 if (!migrate.cpages) in __drm_pagemap_migrate_to_ram()
663 if (!(migrate.src[i] & MIGRATE_PFN_MIGRATE)) in __drm_pagemap_migrate_to_ram()
666 page = migrate_pfn_to_page(migrate.src[i]); in __drm_pagemap_migrate_to_ram()
678 migrate.src, migrate.dst, in __drm_pagemap_migrate_to_ram()
683 err = drm_pagemap_migrate_map_pages(dev, dma_addr, migrate.dst, npages, in __drm_pagemap_migrate_to_ram()
689 pages[i] = migrate_pfn_to_page(migrate.src[i]); in __drm_pagemap_migrate_to_ram()
697 drm_pagemap_migration_unlock_put_pages(npages, migrate.dst); in __drm_pagemap_migrate_to_ram()
698 migrate_vma_pages(&migrate); in __drm_pagemap_migrate_to_ram()
699 migrate_vma_finalize(&migrate); in __drm_pagemap_migrate_to_ram()