Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Andi Shyti <andi@etezian.org>
To: Chris Wilson <chris@chris-wilson.co.uk>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH i-g-t 17/19] i915: Add gem_ctx_engines
Date: Mon, 11 Mar 2019 12:00:16 +0200	[thread overview]
Message-ID: <20190311100016.GA1697@jack.zhora.eu> (raw)
In-Reply-To: <20190308181129.15562-17-chris@chris-wilson.co.uk>

Hi Chris,

On Fri, Mar 08, 2019 at 06:11:27PM +0000, Chris Wilson wrote:
> To exercise the new I915_CONTEXT_PARAM_ENGINES and interactions with
> gem_execbuf().
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
> Cc: Andi Shyti <andi@etezian.org>
> ---

I received three times this patch, could you please add a
versioning or at least a note, so that I understand the evolution
instead of checking version by version.

[...]

> +	engines->class_instance[0].engine_class = -1;
> +	igt_assert_eq(__gem_context_set_param(i915, &param), -ENOENT);
> +
> +	mprotect(engines, 4096, PROT_READ);

mprotect() can fail, do we want to check it?

[...]

> +	/* Unadulterated I915_EXEC_DEFAULT should work */
> +	execbuf.flags = 0;
> +	igt_assert_eq(__gem_execbuf(i915, &execbuf), 0);
> +	gem_sync(i915, obj.handle);
> +
> +	for_each_engine_class_instance(i915, e) {

mmhhh... we have it! I thought I was the first one :)

[...]

> +		for (int i = -1; i <= I915_EXEC_RING_MASK; i++) {
> +			igt_spin_t *spin;
> +
> +			memset(&engines, 0, sizeof(engines));
> +			engine_class(&engines, 0) = e->class;
> +			engine_instance(&engines, 0) = e->instance;

wouldn't it be easier to have an

   __u16 *class = &engines.class_instance[0].engine_class
   __u16 *instance = &e.class_instance[0].engine_instance
   
   *class = e->class;
   *instance = e->instance;

or something like

  engine_class_set(&engines, 0, e->class)
  engine_instance_set(&engines, 0, e->instance)

I find it more readable, because for me the '(' and ')' denote
functions.

[...]

> +				if (j == i) {
> +					igt_assert_f(err == 0,
> +						     "Failed to report the valid engine for slot %d\n",
> +						     i);
> +				} else {
> +					igt_assert_f(err == -EINVAL,
> +						     "Failed to report an invalid engine for slot %d (valid at %d)\n",
> +						     j, i);
> +				}

Standing to the kernel coding style, you should remove the braces
here.

From 'process/coding-style.rst'

    "Do not unnecessarily use braces where
     a single statement will do."

[...]

> +igt_main
> +{
> +	int i915 = -1;

fd? in a first glance it's not obvious that i915 is an fd.
Besides, it's in tests/i915/ I would expect it's a i915 file
descriptor.

Andi
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2019-03-11 10:37 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-08 18:11 [PATCH i-g-t 01/19] i915/gem_ppgtt: Estimate resource usage and bail if it means swapping! Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 02/19] lib/i915: Pretty print HW semaphores Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 03/19] lib: Add GPU power measurement Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 04/19] i915/gem_exec_schedule: Measure semaphore power consumption Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 05/19] i915/gem_exec_whisper: Measure total power consumed Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 06/19] i915/gem_exec_schedule: Verify that using HW semaphores doesn't block Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 07/19] i915/gem_exec_nop: poll-sequential requires ordering between rings Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 08/19] i915/gem_sync: Make switch-default asymmetric Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 09/19] i915/gem_ctx_param: Remove kneecapping Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 10/19] i915/gem_exec_big: Add a single shot test Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 11/19] kms_fence_pin_leak: Ask for the GPU before use Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 12/19] drm-uapi: Import i915_drm.h upto 364df3d04d51 Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 13/19] i915: Exercise creating context with shared GTT Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 14/19] igt/gem_ctx_switch: Exercise queues Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 15/19] igt/gem_exec_whisper: Fork all-engine tests one-per-engine Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 16/19] i915/gem_exec_whisper: debugfs/next_seqno is defunct Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 17/19] i915: Add gem_ctx_engines Chris Wilson
2019-03-11 10:00   ` Andi Shyti [this message]
2019-03-08 18:11 ` [PATCH i-g-t 18/19] i915: Add gem_exec_balancer Chris Wilson
2019-03-12 10:23   ` Tvrtko Ursulin
2019-03-12 10:27     ` Chris Wilson
2019-03-08 18:11 ` [PATCH i-g-t 19/19] i915/gem_exec_balancer: Exercise bonded pairs Chris Wilson
2019-03-11 10:18   ` Andi Shyti
2019-03-11 10:30   ` Andi Shyti
2019-03-11 10:39     ` Chris Wilson
2019-03-09  2:07 ` ✗ Fi.CI.BAT: failure for series starting with [01/19] i915/gem_ppgtt: Estimate resource usage and bail if it means swapping! Patchwork
2019-03-11 10:04 ` [PATCH i-g-t 01/19] " Mika Kuoppala
2019-03-11 10:09   ` Chris Wilson

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=20190311100016.GA1697@jack.zhora.eu \
    --to=andi@etezian.org \
    --cc=chris@chris-wilson.co.uk \
    --cc=intel-gfx@lists.freedesktop.org \
    /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