intel_gt_mcr_lock(9)
π intel_gt_mcr_lock(9) π
okay so welcome to the Kernel API Manual, bestie β section 9, and todayβs main character is intel_gt_mcr_lock. sheβs here to acquire the MCR steering lock, and honestly? iconic behavior. β¨
πΈ NAME πΈ
intel_gt_mcr_lock β Acquire MCR steering lock π
β¨ SYNOPSIS β¨
void intel_gt_mcr_lock (struct intel_gt *gt , unsigned long *flags );
π«Ά ARGUMENTS π«Ά
gtβ GT structureflagsβ storage to save IRQ flags to
π DESCRIPTION π
Performs locking to protect the steering for the duration of an MCR operation. no cap, thatβs the whole vibe: lock it down so the steering stays protected while the MCR operation does its thing. π
On MTL and beyond, a hardware lock will also be taken to serialize access not only for the driver, but also for external hardware and firmware agents. so yeah, itβs not just a driver-only situation β external hardware and firmware agents are in the group chat too. π₯
π¦ CONTEXT π¦
Takes gt->mcr_lock.
uncore->lock should not be held when this function is called β like, seriously, do not hold it β although it may be acquired after this function call. π
π SEE ALSO π
go read these next, bestie, theyβre all part of the same lore:
- Kernel file
./drivers/gpu/drm/i915/gt/intel_gt_mcr.c GT Multicast/Replicated (MCR) Register Support(9)intel_gt_mcr_unlock(9)intel_gt_mcr_lock_sanitize(9)intel_gt_mcr_read(9)intel_gt_mcr_unicast_write(9)intel_gt_mcr_multicast_write(9)intel_gt_mcr_multicast_write_fw(9)intel_gt_mcr_multicast_rmw(9)intel_gt_mcr_get_nonterminated_steering(9)intel_gt_mcr_read_any_fw(9)intel_gt_mcr_read_any(9)intel_gt_mcr_get_ss_steering(9)intel_gt_mcr_wait_for_reg(9)
this lil page lives under ./drivers/gpu/drm/i915/gt and is dated October 2026. mwah, love that for us. ππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms