xe_migrate_job_lock(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… xe_migrate_job_lock β€” NAME

okay bestie, welcome to the Kernel API Manual ✨ and today's main character is xe_migrate_job_lock β€” literally "Lock migrate job lock" πŸŽ€ like yes that's the whole name and she's serving exactly what she says on the tin 🫢


🌸 SYNOPSIS

void xe_migrate_job_lock (struct xe_migrate *m , struct xe_exec_queue *q
);
ngl the synopsis is short and iconic, just how we like it πŸ’– note the space before those commas, that's canon, we don't touch it πŸ™ˆ

✨ ARGUMENTS

  • m β€” the migration context 🧚 that's your whole migration situation right there.
  • q β€” the queue that's tied to whatever operation needs this lock πŸ”₯ queue associated with the operation which requires a lock, periodt.

πŸ”₯ DESCRIPTION

okay so here's the vibe check πŸ’… it locks the migrate job lock if the queue is a migration queue πŸŽ€

but if it is not a migration queue? then it asserts that the VM's dma-resv is held 😭 because user queues have their own locking, iykyk. no cap, that's the whole behaviour β€” lock in one case, assert in the other πŸ¦‹

lowkey important: this is an assertion, not a "please hold this for me" β€” the dma-resv has to already be held for the user-queue path πŸ’€

🌈 SEE ALSO


and that's the post πŸ’Œ this little masterpiece lives in ./drivers/gpu/drm/xe, dated October 2026 πŸ‘‘ go read the whole migrate family, they ate fr fr πŸ“βœ¨

πŸ“¦ where this page comes from