From: Boris Brezillon <boris.brezillon@collabora.com>
To: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Cc: igt-dev@lists.freedesktop.org,
Daniel Almeida <daniel.almeida@collabora.com>
Subject: Re: [PATCH i-g-t v2] panthor: Enable compilation on big-endian arch
Date: Thu, 19 Feb 2026 16:23:13 +0100 [thread overview]
Message-ID: <20260219162313.1b10a51e@fedora> (raw)
In-Reply-To: <20260219150524.92665-1-kamil.konieczny@linux.intel.com>
On Thu, 19 Feb 2026 16:05:24 +0100
Kamil Konieczny <kamil.konieczny@linux.intel.com> wrote:
> Compilation of Panthor was broken on big-endian due to a guard in
> pathor lib against such arch. Fix this and create and use
> function for skipping all panthor tests on such machines.
>
> Also while at it, init fd so it could be safely used at last
> fixture.
>
> v2: simplify test for big-endian, fix typo (Boris)
>
> Cc: Daniel Almeida <daniel.almeida@collabora.com>
> Cc: Boris Brezillon <boris.brezillon@collabora.com>
> Closes: https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/issues/200
> Signed-off-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Thanks!
Boris
> ---
> lib/igt_panthor.c | 11 +++++++++++
> lib/igt_panthor.h | 6 ++----
> tests/panthor/panthor_gem.c | 3 ++-
> tests/panthor/panthor_group.c | 3 ++-
> tests/panthor/panthor_query.c | 3 ++-
> tests/panthor/panthor_vm.c | 3 ++-
> 6 files changed, 21 insertions(+), 8 deletions(-)
>
> diff --git a/lib/igt_panthor.c b/lib/igt_panthor.c
> index 49b427d4f..7ffb61eb3 100644
> --- a/lib/igt_panthor.c
> +++ b/lib/igt_panthor.c
> @@ -6,6 +6,17 @@
> #include "ioctl_wrappers.h"
> #include "panthor_drm.h"
>
> +/**
> + * igt_panthor_skip_on_big_endian:
> + *
> + * Skip Panthor test on big-endian machines.
> + */
> +void igt_panthor_skip_on_big_endian(void)
> +{
> + igt_skip_on_f(__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__,
> + "Panthor is unsupported on big-endian arch\n");
> +}
> +
> /**
> * igt_panthor_group_create:
> * @fd: device file descriptor
> diff --git a/lib/igt_panthor.h b/lib/igt_panthor.h
> index 97a2b7497..be8490840 100644
> --- a/lib/igt_panthor.h
> +++ b/lib/igt_panthor.h
> @@ -61,11 +61,9 @@ enum cs_flush_mode {
> };
>
> /* There's no plan to support big endian in the UMD, so keep
> - * things simple and don't bother supporting it here either.
> + * things simple and don't bother supporting it.
> */
> -#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
> -#error "big endian not supported"
> -#endif
> +void igt_panthor_skip_on_big_endian(void);
>
> struct cs_instr {
> union {
> diff --git a/tests/panthor/panthor_gem.c b/tests/panthor/panthor_gem.c
> index 57ba4bc82..6388addb0 100644
> --- a/tests/panthor/panthor_gem.c
> +++ b/tests/panthor/panthor_gem.c
> @@ -8,9 +8,10 @@
> #include "igt_panthor.h"
>
> int igt_main() {
> - int fd;
> + int fd = -1;
>
> igt_fixture() {
> + igt_panthor_skip_on_big_endian();
> fd = drm_open_driver(DRIVER_PANTHOR);
> }
>
> diff --git a/tests/panthor/panthor_group.c b/tests/panthor/panthor_group.c
> index 13636e60c..c79f8d629 100644
> --- a/tests/panthor/panthor_group.c
> +++ b/tests/panthor/panthor_group.c
> @@ -41,9 +41,10 @@ issue_store_multiple(uint8_t *cs, uint64_t kernel_va, uint32_t constant)
> }
>
> int igt_main() {
> - int fd;
> + int fd = -1;
>
> igt_fixture() {
> + igt_panthor_skip_on_big_endian();
> fd = drm_open_driver(DRIVER_PANTHOR);
> }
>
> diff --git a/tests/panthor/panthor_query.c b/tests/panthor/panthor_query.c
> index fa4f8ef26..afd58a5bd 100644
> --- a/tests/panthor/panthor_query.c
> +++ b/tests/panthor/panthor_query.c
> @@ -8,9 +8,10 @@
> #include <stdint.h>
>
> int igt_main() {
> - int fd;
> + int fd = -1;
>
> igt_fixture() {
> + igt_panthor_skip_on_big_endian();
> fd = drm_open_driver(DRIVER_PANTHOR);
> }
>
> diff --git a/tests/panthor/panthor_vm.c b/tests/panthor/panthor_vm.c
> index 76a669843..92b105b9e 100644
> --- a/tests/panthor/panthor_vm.c
> +++ b/tests/panthor/panthor_vm.c
> @@ -7,9 +7,10 @@
> #include "panthor_drm.h"
>
> int igt_main() {
> - int fd;
> + int fd = -1;
>
> igt_fixture() {
> + igt_panthor_skip_on_big_endian();
> fd = drm_open_driver(DRIVER_PANTHOR);
> }
>
next prev parent reply other threads:[~2026-02-19 15:23 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-19 15:05 [PATCH i-g-t v2] panthor: Enable compilation on big-endian arch Kamil Konieczny
2026-02-19 15:23 ` Boris Brezillon [this message]
2026-02-19 17:00 ` Daniel Almeida
2026-02-19 17:35 ` ✗ Fi.CI.BAT: failure for panthor: Enable compilation on big-endian arch (rev2) Patchwork
2026-02-23 10:49 ` [PATCH i-g-t v2] panthor: Enable compilation on big-endian arch Jani Nikula
2026-03-02 10:45 ` Boris Brezillon
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=20260219162313.1b10a51e@fedora \
--to=boris.brezillon@collabora.com \
--cc=daniel.almeida@collabora.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=kamil.konieczny@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