From: "Piórkowski, Piotr" <piotr.piorkowski@intel.com>
To: <intel-xe@lists.freedesktop.org>
Cc: "Piotr Piórkowski" <piotr.piorkowski@intel.com>,
"Michal Wajdeczko" <michal.wajdeczko@intel.com>,
"Ville Syrjälä" <ville.syrjala@linux.intel.com>,
"Maarten Lankhorst" <dev@lankhorst.se>
Subject: [PATCH v5 1/4] drm/xe/ggtt: Introduce full GGTT range size
Date: Tue, 8 Sep 2026 12:05:59 +0200 [thread overview]
Message-ID: <20260908100602.1626556-2-piotr.piorkowski@intel.com> (raw)
In-Reply-To: <20260908100602.1626556-1-piotr.piorkowski@intel.com>
From: Piotr Piórkowski <piotr.piorkowski@intel.com>
Separate the full assigned GGTT range size from the size available for
regular allocations.
For now both sizes are identical. A subsequent change will reserve part of
the full range for VF provisioning.
Assisted-by: Claude:claude-5-sonnet
Signed-off-by: Piotr Piórkowski <piotr.piorkowski@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <dev@lankhorst.se>
---
drivers/gpu/drm/xe/xe_ggtt.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_ggtt.c b/drivers/gpu/drm/xe/xe_ggtt.c
index 63e8bf1936058..c54a4cf967df9 100644
--- a/drivers/gpu/drm/xe/xe_ggtt.c
+++ b/drivers/gpu/drm/xe/xe_ggtt.c
@@ -112,9 +112,11 @@ struct xe_ggtt_pt_ops {
struct xe_ggtt {
/** @tile: Back pointer to tile where this GGTT belongs */
struct xe_tile *tile;
- /** @start: Start offset of GGTT */
+ /** @start: Start offset of the assigned GGTT range */
u64 start;
- /** @size: Total usable size of this GGTT */
+ /** @full_size: Full size of the assigned GGTT range */
+ u64 full_size;
+ /** @size: Size of the GGTT range for regular use */
u64 size;
/**
* @flags: Flags for this GGTT.
@@ -239,7 +241,7 @@ u64 xe_ggtt_size(struct xe_ggtt *ggtt)
static void xe_ggtt_set_pte(struct xe_ggtt *ggtt, u64 addr, u64 pte)
{
xe_tile_assert(ggtt->tile, !(addr & XE_PTE_MASK));
- xe_tile_assert(ggtt->tile, addr < ggtt->start + ggtt->size);
+ xe_tile_assert(ggtt->tile, addr < ggtt->start + ggtt->full_size);
writeq(pte, &ggtt->gsm[addr >> XE_PTE_SHIFT]);
}
@@ -253,7 +255,7 @@ static void xe_ggtt_set_pte_and_flush(struct xe_ggtt *ggtt, u64 addr, u64 pte)
static u64 xe_ggtt_get_pte(struct xe_ggtt *ggtt, u64 addr)
{
xe_tile_assert(ggtt->tile, !(addr & XE_PTE_MASK));
- xe_tile_assert(ggtt->tile, addr < ggtt->start + ggtt->size);
+ xe_tile_assert(ggtt->tile, addr < ggtt->start + ggtt->full_size);
return readq(&ggtt->gsm[addr >> XE_PTE_SHIFT]);
}
@@ -358,6 +360,7 @@ static const struct xe_ggtt_pt_ops xelpg_pt_wa_ops = {
static void __xe_ggtt_init_early(struct xe_ggtt *ggtt, u64 start, u64 size)
{
ggtt->start = start;
+ ggtt->full_size = size;
ggtt->size = size;
drm_mm_init(&ggtt->mm, 0, size);
}
--
2.34.1
next prev parent reply other threads:[~2026-09-08 10:06 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-08 10:05 [PATCH v5 0/4] Separate GGTT pools for submissions and VFs provisioning Piórkowski, Piotr
2026-09-08 10:05 ` Piórkowski, Piotr [this message]
2026-09-08 10:06 ` [PATCH v5 2/4] drm/xe/ggtt: Split GGTT into usable and shareable pools Piórkowski, Piotr
2026-09-08 10:06 ` [PATCH v5 3/4] drm/xe/ggtt: Initialize GGTT pools by SR-IOV mode Piórkowski, Piotr
2026-09-08 10:06 ` [PATCH v5 4/4] drm/xe/ggtt: Add KUnit tests for usable and shareable pools Piórkowski, Piotr
2026-09-08 10:27 ` sashiko-bot
2026-09-08 11:46 ` ✗ CI.checkpatch: warning for Separate GGTT pools for submissions and VFs provisioning (rev5) Patchwork
2026-09-08 11:48 ` ✓ CI.KUnit: success " Patchwork
2026-09-08 12:53 ` ✓ Xe.CI.BAT: " Patchwork
2026-09-08 15:44 ` ✗ Xe.CI.FULL: failure " 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=20260908100602.1626556-2-piotr.piorkowski@intel.com \
--to=piotr.piorkowski@intel.com \
--cc=dev@lankhorst.se \
--cc=intel-xe@lists.freedesktop.org \
--cc=michal.wajdeczko@intel.com \
--cc=ville.syrjala@linux.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