Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Tejas Upadhyay <tejas.upadhyay@intel.com>
To: intel-xe@lists.freedesktop.org
Cc: himal.prasad.ghimiray@intel.com,
	Tejas Upadhyay <tejas.upadhyay@intel.com>,
	Matthew Brost <matthew.brost@intel.com>
Subject: [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy
Date: Thu, 30 Jul 2026 15:41:23 +0530	[thread overview]
Message-ID: <20260730101132.2770752-12-tejas.upadhyay@intel.com> (raw)
In-Reply-To: <20260730101132.2770752-11-tejas.upadhyay@intel.com>

Setup to link TTM buffer object inside gpu buddy. This functionality
is critical for supporting the memory page offline feature on CRI,
where identified faulty pages must be traced back to their
originating buffer for safe removal.

V2(MattB): Clear block->private in xe_ttm_vram_mgr_del as well

Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
---
 drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
index b518f7dec680..5ab5dfdb183c 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
@@ -54,6 +54,7 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
 	struct xe_ttm_vram_mgr *mgr = to_xe_ttm_vram_mgr(man);
 	struct xe_ttm_vram_mgr_resource *vres;
 	struct gpu_buddy *mm = &mgr->mm;
+	struct gpu_buddy_block *block;
 	u64 size, min_page_size;
 	unsigned long lpfn;
 	int err;
@@ -138,6 +139,8 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
 	}
 
 	mgr->visible_avail -= vres->used_visible_size;
+	list_for_each_entry(block, &vres->blocks, link)
+		block->private = tbo;
 	mutex_unlock(&mgr->lock);
 
 	if (!(vres->base.placement & TTM_PL_FLAG_CONTIGUOUS) &&
@@ -176,8 +179,11 @@ static void xe_ttm_vram_mgr_del(struct ttm_resource_manager *man,
 		to_xe_ttm_vram_mgr_resource(res);
 	struct xe_ttm_vram_mgr *mgr = to_xe_ttm_vram_mgr(man);
 	struct gpu_buddy *mm = &mgr->mm;
+	struct gpu_buddy_block *block;
 
 	mutex_lock(&mgr->lock);
+	list_for_each_entry(block, &vres->blocks, link)
+		block->private = NULL;
 	gpu_buddy_free_list(mm, &vres->blocks, 0);
 	mgr->visible_avail += vres->used_visible_size;
 	mutex_unlock(&mgr->lock);
-- 
2.52.0


  reply	other threads:[~2026-07-30 10:11 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
2026-07-30 10:11 ` Tejas Upadhyay [this message]
2026-08-11 11:04   ` [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 2/9] [DO NOT MERGE]drm/gpu: Add gpu_buddy_allocated_addr_to_block helper Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 3/9] drm/xe: Link LRC BO and its execution Queue Tejas Upadhyay
2026-08-11 11:05   ` Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 4/9] drm/xe: Extend BO purge to handle vram pages as well Tejas Upadhyay
2026-08-11 11:06   ` Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 5/9] drm/xe: Handle physical memory address error Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 6/9] drm/xe/configfs: Add vram bad page reservation policy Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 7/9] drm/xe/cri: Add sysfs interface for bad gpu vram pages Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 8/9] drm/xe/uapi: Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 9/9] drm/xe: Add fault-inject based VRAM page offline injection Tejas Upadhyay
2026-07-30 10:18 ` ✗ CI.checkpatch: warning for Add memory page offlining support (rev16) Patchwork
2026-07-30 10:19 ` ✓ CI.KUnit: success " Patchwork
2026-07-30 11:04 ` ✓ Xe.CI.BAT: " Patchwork
2026-07-30 12:10 ` ✓ Xe.CI.FULL: " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260730101132.2770752-12-tejas.upadhyay@intel.com \
    --to=tejas.upadhyay@intel.com \
    --cc=himal.prasad.ghimiray@intel.com \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=matthew.brost@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox