xe_migrate_from_vram(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay so bestie, this is xe_migrate_from_vram(9) from the Kernel API Manual, and it is literally the Migrate from VRAM moment. Function name: xe_migrate_from_vram; short description: Migrate from VRAM. Slay, periodt.

✨ SYNOPSIS ✨

Here’s the signature, exactly as written, no edits:

struct dma_fence * xe_migrate_from_vram (struct xe_migrate *m , unsigned long npages , u64 src_addr , struct drm_pagemap_addr *dst_addr , struct dma_fence *deps );

No cap, that’s the whole signature. πŸ’…

πŸŽ€ ARGUMENTS πŸŽ€

  • m β€” the migration context. Main character struct, fr.
  • npages β€” number of pages to migrate. Count β€˜em.
  • src_addr β€” device physical address of VRAM (source of migrate). This is where the copy is coming from.
  • dst_addr β€” array of DMA information (destination of migrate). This is where it’s going.
  • deps β€” struct dma_fence representing the dependencies that need to be signaled before migration. Gotta wait for the vibes to line up first.

πŸ¦‹ DESCRIPTION πŸ¦‹

Copy from a VRAM device physical address to an array of DMA addresses. That’s the whole glow-up: source is VRAM physical address, destination is that array of DMA info. ✨

πŸ’« RETURN πŸ’«

Returns a DMA fence for the migrate to signal completion on success, and ERR_PTR on failure. So if it works, you get the fence; if not, ERR_PTR is the plot twist. 😭

🌈 SEE ALSO 🌈

Kernel file ./drivers/gpu/drm/xe/xe_migrate.c, plus all these besties:


xoxo, your xe_migrate_from_vram(9) bestie β€” source/version: ./drivers/gpu/drm/xe, date: October 2026 πŸ’–

πŸ“¦ where this page comes from