public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
To: igt-dev@lists.freedesktop.org
Cc: Petri Latvala <petri.latvala@intel.com>,
	Eben Upton <eben@raspberrypi.org>
Subject: [igt-dev] [PATCH i-g-t 6/6] lib/igt_fb: Add a check on stride alignment for pixman conversion
Date: Thu, 27 Dec 2018 15:57:41 +0100	[thread overview]
Message-ID: <20181227145741.28096-7-paul.kocialkowski@bootlin.com> (raw)
In-Reply-To: <20181227145741.28096-1-paul.kocialkowski@bootlin.com>

Pixman requires buffer strides the be aligned to 32-bit words in order
to create internal representations of buffers. If this condition is not
met, it will fail and IGT will not be able to report the error cause,
making it hard to debug the issue.

Add an explicit check in our code prior to calling pixman when
converting buffer so that the error can be understood if it occurs.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Reviewed-by: Maxime Ripard <maxime.ripard@bootlin.com>
---
 lib/igt_fb.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/lib/igt_fb.c b/lib/igt_fb.c
index 2f555c955acf..8244e5176a6f 100644
--- a/lib/igt_fb.c
+++ b/lib/igt_fb.c
@@ -1981,6 +1981,10 @@ static void convert_pixman(struct fb_convert *cvt)
 	igt_assert((src_pixman != PIXMAN_invalid) &&
 		   (dst_pixman != PIXMAN_invalid));
 
+	/* Pixman requires the stride to be aligned to 32 bits. */
+	igt_assert((cvt->src.fb->strides[0] % sizeof(uint32_t)) == 0);
+	igt_assert((cvt->dst.fb->strides[0] % sizeof(uint32_t)) == 0);
+
 	src_ptr = convert_src_get(cvt);
 
 	src_image = pixman_image_create_bits(src_pixman,
-- 
2.20.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

  parent reply	other threads:[~2018-12-27 14:58 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-27 14:57 [igt-dev] [PATCH i-g-t 0/6] Preliminary patches for chamelium improvements Paul Kocialkowski
2018-12-27 14:57 ` [igt-dev] [PATCH i-g-t 1/6] chamelium: Fix inverted xr24 pattern paint dimensions Paul Kocialkowski
2018-12-27 14:57 ` [igt-dev] [PATCH i-g-t 2/6] chamelium: Pass and use stride for xr24 pattern paint Paul Kocialkowski
2018-12-27 14:57 ` [igt-dev] [PATCH i-g-t 3/6] chamelium: Pass dimensions instead of mode to pattern generation helper Paul Kocialkowski
2018-12-27 14:57 ` [igt-dev] [PATCH i-g-t 4/6] chamelium: Pass the pattern block size as argument to helpers Paul Kocialkowski
2018-12-27 14:57 ` [igt-dev] [PATCH i-g-t 5/6] chamelium: Debug-print CRCs when comparing them and dumping frames Paul Kocialkowski
2018-12-27 14:57 ` Paul Kocialkowski [this message]
2018-12-27 16:01 ` [igt-dev] ✓ Fi.CI.BAT: success for Preliminary patches for chamelium improvements Patchwork
2018-12-27 17:31 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2018-12-31  8:35 ` [igt-dev] [PATCH i-g-t 0/6] " Arkadiusz Hiler
2019-01-02  8:37   ` Paul Kocialkowski

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=20181227145741.28096-7-paul.kocialkowski@bootlin.com \
    --to=paul.kocialkowski@bootlin.com \
    --cc=eben@raspberrypi.org \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=petri.latvala@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