From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Jani Nikula <jani.nikula@intel.com>
Cc: intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org,
maarten.lankhorst@linux.intel.com
Subject: Re: [PATCH v2] drm/i915/selftests: use intel_gtt_view_is_*() helpers more
Date: Wed, 30 Sep 2026 16:29:16 +0300 [thread overview]
Message-ID: <ar0OrBrFi-7dpcIR@intel.com> (raw)
In-Reply-To: <20260930103427.883703-1-jani.nikula@intel.com>
On Wed, Sep 30, 2026 at 01:34:27PM +0300, Jani Nikula wrote:
> Prefer using the intel_gtt_view_is_*() helpers instead of comparing the
> view type directly.
>
> v2: Use view, not vma->gtt_view at the end (Sashiko)
>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/selftests/i915_vma.c | 34 +++++++++++------------
> 1 file changed, 17 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/selftests/i915_vma.c b/drivers/gpu/drm/i915/selftests/i915_vma.c
> index b16297a6a4e8..f918ae18c4e1 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_vma.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_vma.c
> @@ -51,7 +51,7 @@ static bool assert_vma(struct i915_vma *vma,
> ok = false;
> }
>
> - if (vma->gtt_view.type != I915_GTT_VIEW_NORMAL) {
> + if (!intel_gtt_view_is_normal(&vma->gtt_view)) {
> pr_err("VMA created with wrong type [%d]\n",
> vma->gtt_view.type);
> ok = false;
> @@ -533,12 +533,12 @@ assert_remapped(struct drm_i915_gem_object *obj,
> return sg;
> }
>
> -static unsigned int remapped_size(enum intel_gtt_view_type view_type,
> +static unsigned int remapped_size(const struct intel_gtt_view *view,
> const struct intel_remapped_plane_info *a,
> const struct intel_remapped_plane_info *b)
> {
>
> - if (view_type == I915_GTT_VIEW_ROTATED)
> + if (intel_gtt_view_is_rotated(view))
> return a->dst_stride * a->width + b->dst_stride * b->width;
> else
> return a->dst_stride * a->height + b->dst_stride * b->height;
> @@ -606,11 +606,11 @@ static int igt_vma_rotate_remap(void *arg)
> max_offset = max_pages - max_offset;
>
> if (!plane_info[0].dst_stride)
> - plane_info[0].dst_stride = view.type == I915_GTT_VIEW_ROTATED ?
> + plane_info[0].dst_stride = intel_gtt_view_is_rotated(&view) ?
> plane_info[0].height :
> plane_info[0].width;
> if (!plane_info[1].dst_stride)
> - plane_info[1].dst_stride = view.type == I915_GTT_VIEW_ROTATED ?
> + plane_info[1].dst_stride = intel_gtt_view_is_rotated(&view) ?
> plane_info[1].height :
> plane_info[1].width;
>
> @@ -632,9 +632,9 @@ static int igt_vma_rotate_remap(void *arg)
> goto out_object;
> }
>
> - expected_pages = remapped_size(view.type, &plane_info[0], &plane_info[1]);
> + expected_pages = remapped_size(&view, &plane_info[0], &plane_info[1]);
>
> - if (view.type == I915_GTT_VIEW_ROTATED &&
> + if (intel_gtt_view_is_rotated(&view) &&
> vma->size != expected_pages * PAGE_SIZE) {
> pr_err("VMA is wrong size, expected %lu, found %llu\n",
> PAGE_SIZE * expected_pages, vma->size);
> @@ -642,7 +642,7 @@ static int igt_vma_rotate_remap(void *arg)
> goto out_object;
> }
>
> - if (view.type == I915_GTT_VIEW_REMAPPED &&
> + if (intel_gtt_view_is_remapped(&view) &&
> vma->size > expected_pages * PAGE_SIZE) {
> pr_err("VMA is wrong size, expected %lu, found %llu\n",
> PAGE_SIZE * expected_pages, vma->size);
> @@ -672,13 +672,13 @@ static int igt_vma_rotate_remap(void *arg)
>
> sg = vma->pages->sgl;
> for (n = 0; n < ARRAY_SIZE(view.rotated.plane); n++) {
> - if (view.type == I915_GTT_VIEW_ROTATED)
> + if (intel_gtt_view_is_rotated(&view))
> sg = assert_rotated(obj, &view.rotated, n, sg);
> else
> sg = assert_remapped(obj, &view.remapped, n, sg);
> if (IS_ERR(sg)) {
> pr_err("Inconsistent %s VMA pages for plane %d: [(%d, %d, %d, %d, %d), (%d, %d, %d, %d, %d)]\n",
> - view.type == I915_GTT_VIEW_ROTATED ?
> + intel_gtt_view_is_rotated(&view) ?
> "rotated" : "remapped", n,
> plane_info[0].width,
> plane_info[0].height,
> @@ -763,7 +763,7 @@ static bool assert_pin(struct i915_vma *vma,
> ok = false;
> }
>
> - if (view && view->type != I915_GTT_VIEW_NORMAL) {
> + if (view && !intel_gtt_view_is_normal(view)) {
> if (memcmp(&vma->gtt_view, view, sizeof(*view))) {
> pr_err("(%s) VMA mismatch upon creation!\n",
> name);
> @@ -776,7 +776,7 @@ static bool assert_pin(struct i915_vma *vma,
> ok = false;
> }
> } else {
> - if (vma->gtt_view.type != I915_GTT_VIEW_NORMAL) {
> + if (!intel_gtt_view_is_normal(&vma->gtt_view)) {
> pr_err("Not the normal ggtt view! Found %d\n",
> vma->gtt_view.type);
> ok = false;
> @@ -1017,7 +1017,7 @@ static int igt_vma_remapped_gtt(void *arg)
> goto out;
>
> if (!plane_info[0].dst_stride)
> - plane_info[0].dst_stride = *t == I915_GTT_VIEW_ROTATED ?
> + plane_info[0].dst_stride = intel_gtt_view_is_rotated(&view) ?
> p->height : p->width;
>
> vma = i915_gem_object_ggtt_pin(obj, &view, 0, 0, PIN_MAPPABLE);
> @@ -1040,7 +1040,7 @@ static int igt_vma_remapped_gtt(void *arg)
> unsigned int offset;
> u32 val = y << 16 | x;
>
> - if (*t == I915_GTT_VIEW_ROTATED)
> + if (intel_gtt_view_is_rotated(&vma->gtt_view))
Better use 'view' here too instead of 'vma->gtt_view'. Yes, the two
should be identical here, but I think it's clearer if the test logic
always uses the local data instead of digging into the vma internals.
> offset = (x * plane_info[0].dst_stride + y) * PAGE_SIZE;
> else
> offset = (y * plane_info[0].dst_stride + x) * PAGE_SIZE;
> @@ -1057,7 +1057,7 @@ static int igt_vma_remapped_gtt(void *arg)
> goto out;
> }
>
> - GEM_BUG_ON(vma->gtt_view.type != I915_GTT_VIEW_NORMAL);
> + GEM_BUG_ON(!intel_gtt_view_is_normal(&vma->gtt_view));
>
> map = i915_vma_pin_iomap(vma);
> i915_vma_unpin(vma);
> @@ -1072,7 +1072,7 @@ static int igt_vma_remapped_gtt(void *arg)
> u32 exp = y << 16 | x;
> u32 val;
>
> - if (*t == I915_GTT_VIEW_ROTATED)
> + if (intel_gtt_view_is_rotated(&view))
> src_idx = rotated_index(&view.rotated, 0, x, y);
> else
> src_idx = remapped_index(&view.remapped, 0, x, y);
> @@ -1081,7 +1081,7 @@ static int igt_vma_remapped_gtt(void *arg)
> val = ioread32(&map[offset / sizeof(*map)]);
> if (val != exp) {
> pr_err("%s VMA write test failed, expected 0x%x, found 0x%x\n",
> - *t == I915_GTT_VIEW_ROTATED ? "Rotated" : "Remapped",
> + intel_gtt_view_is_rotated(&view) ? "Rotated" : "Remapped",
> exp, val);
> i915_vma_unpin_iomap(vma);
> err = -EINVAL;
> --
> 2.47.3
--
Ville Syrjälä
Intel
next prev parent reply other threads:[~2026-09-30 13:29 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-15 20:09 [PATCH 00/10] drm/{i915,xe}: use a shared gtt_view_types.h header Jani Nikula
2026-09-15 20:09 ` [PATCH 01/10] drm/intel: move i915_gtt_view_types.h to include/drm/intel Jani Nikula
2026-09-30 13:34 ` Ville Syrjälä
2026-09-15 20:09 ` [PATCH 02/10] drm/intel: rename i915_gtt_view_is_*() helpers to intel_gtt_view_is_*() Jani Nikula
2026-09-15 20:09 ` [PATCH 03/10] drm/intel: rename i915_gtt_view* struct/enum to intel_gtt_view* Jani Nikula
2026-09-15 20:09 ` [PATCH 04/10] drm/intel: add intel_gtt_view_is_partial() for completeness Jani Nikula
2026-09-15 20:09 ` [PATCH 05/10] drm/xe/display: use intel_gtt_view_is_*() helpers more Jani Nikula
2026-09-15 20:09 ` [PATCH 06/10] drm/i915/gem: " Jani Nikula
2026-09-15 20:09 ` [PATCH 07/10] drm/i915/vma: " Jani Nikula
2026-09-15 20:09 ` [PATCH 08/10] drm/i915/selftests: " Jani Nikula
2026-09-15 20:14 ` sashiko-bot
2026-09-30 10:34 ` [PATCH v2] " Jani Nikula
2026-09-30 13:29 ` Ville Syrjälä [this message]
2026-09-15 20:09 ` [PATCH 09/10] drm/i915/debugfs: use the " Jani Nikula
2026-09-15 20:09 ` [PATCH 10/10] drm/intel: rename I915_GTT_VIEW_* enumerations to INTEL_GTT_VIEW_* Jani Nikula
2026-09-29 14:00 ` Maarten Lankhorst
2026-09-15 20:16 ` ✗ CI.checkpatch: warning for drm/{i915,xe}: use a shared gtt_view_types.h header Patchwork
2026-09-15 20:19 ` ✓ CI.KUnit: success " Patchwork
2026-09-15 21:03 ` ✓ Xe.CI.BAT: " Patchwork
2026-09-15 21:48 ` ✗ i915.CI.BAT: failure " Patchwork
2026-09-16 3:25 ` ✗ Xe.CI.FULL: " Patchwork
2026-09-28 12:40 ` [PATCH 00/10] drm/{i915, xe}: " Jani Nikula
2026-09-30 10:40 ` ✗ CI.checkpatch: warning for drm/{i915,xe}: use a shared gtt_view_types.h header (rev2) Patchwork
2026-09-30 10:42 ` ✓ CI.KUnit: success " Patchwork
2026-09-30 11:59 ` ✓ Xe.CI.BAT: " Patchwork
2026-09-30 12:51 ` ✓ i915.CI.BAT: " Patchwork
2026-09-30 13:38 ` [PATCH 00/10] drm/{i915, xe}: use a shared gtt_view_types.h header Ville Syrjälä
2026-09-30 15:33 ` ✗ Xe.CI.FULL: failure for drm/{i915,xe}: use a shared gtt_view_types.h header (rev2) 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=ar0OrBrFi-7dpcIR@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=jani.nikula@intel.com \
--cc=maarten.lankhorst@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.