All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andi Shyti <andi.shyti@intel.com>
To: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Cc: IGT dev <igt-dev@lists.freedesktop.org>, Andi Shyti <andi@etezian.org>
Subject: Re: [igt-dev] [PATCH v16 8/8] test: perf_pmu: use the gem_engine_topology library
Date: Fri, 29 Mar 2019 14:47:26 +0200	[thread overview]
Message-ID: <20190329124726.GE1167@intel.intel> (raw)
In-Reply-To: <c8f81939-7a2d-833f-f637-4aa37ae7e5d9@linux.intel.com>

> > -static igt_spin_t * __spin_poll(int fd, uint32_t ctx, unsigned long flags)
> > +static igt_spin_t * __spin_poll(int fd, uint32_t ctx, const struct intel_execution_engine2 *e)
> >   {
> >   	struct igt_spin_factory opts = {
> >   		.ctx = ctx,
> > -		.engine = flags,
> > +		.engine = e->flags,
> >   	};
> > -	if (gem_can_store_dword(fd, flags))
> > +	if (gem_engine_can_store_dword(fd, e))
> >   		opts.flags |= IGT_SPIN_POLL_RUN;
> >   	return __igt_spin_batch_factory(fd, &opts);
> > @@ -211,7 +211,16 @@ static unsigned long __spin_wait(int fd, igt_spin_t *spin)
> >   static igt_spin_t * __spin_sync(int fd, uint32_t ctx, unsigned long flags)
> 
> __spin_sync should also take engine instead of flags, like __spin_poll.

But if __spin_sync is called inside __for_each_physical_engine
(which in this code never happens), engine doesn't have any flags
set. right?

> >   {
> > -	igt_spin_t *spin = __spin_poll(fd, ctx, flags);
> > +	struct igt_spin_factory opts = {
> > +		.ctx = ctx,
> > +		.engine = flags,
> > +	};
> > +	igt_spin_t *spin;
> > +
> > +	if (gem_can_store_dword(fd, flags))
> > +		opts.flags |= IGT_SPIN_POLL_RUN;
> > +
> > +	spin = __igt_spin_batch_factory(fd, &opts);
> 
> And then you don't need this hunk at all, making the whole thing completely
> ready for more engines.
> 
> And e2ring will end up with no callers so can be removed.

Same reason as above, which is this one:

> > -		__for_each_engine_class_instance(e) {
> > +		__for_each_static_engine(e) {
> >   			igt_subtest_group {
> >   				igt_fixture {
> >   					gem_require_engine(render_fd,
> > 
> 
> Yep, modulo __spin_sync change, this is what I had in mind.

at this point I don't have any flag set, any check whether the
engine really exists, no context mapping (still flags) :/

Am I missing it?

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

  reply	other threads:[~2019-03-29 12:47 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-28 19:21 [igt-dev] [RFC v16 0/8] new engine discovery interface Andi Shyti
2019-03-28 19:21 ` [igt-dev] [PATCH v16 1/8] lib/igt_gt: remove unnecessary argument Andi Shyti
2019-03-29 11:34   ` Tvrtko Ursulin
2019-03-28 19:22 ` [igt-dev] [PATCH v16 2/8] lib: ioctl_wrappers: reach engines by index as well Andi Shyti
2019-03-29 11:36   ` Tvrtko Ursulin
2019-03-29 11:59     ` Andi Shyti
2019-03-28 19:22 ` [igt-dev] [PATCH v16 3/8] include/drm-uapi: import i915_drm.h header file Andi Shyti
2019-03-28 19:22 ` [igt-dev] [PATCH v16 4/8] lib/i915: add gem_engine_topology library and for_each loop definition Andi Shyti
2019-03-29 11:34   ` Tvrtko Ursulin
2019-03-29 12:05     ` Andi Shyti
2019-03-28 19:22 ` [igt-dev] [PATCH v16 5/8] tests: gem_exec_basic: add engine discovery test Andi Shyti
2019-03-29 11:39   ` Tvrtko Ursulin
2019-03-29 12:06     ` Andi Shyti
2019-03-29 12:41       ` Tvrtko Ursulin
2019-03-29 23:36   ` Chris Wilson
2019-03-31 17:36     ` Andi Shyti
2019-03-31 17:42       ` Chris Wilson
2019-03-31 20:19         ` Andi Shyti
2019-03-28 19:22 ` [igt-dev] [PATCH v16 6/8] lib: igt_gt: make gem_engine_can_store_dword() check engine class Andi Shyti
2019-03-29 12:22   ` Tvrtko Ursulin
2019-03-29 12:43     ` Andi Shyti
2019-03-28 19:22 ` [igt-dev] [PATCH v16 7/8] lib: igt_dummyload: use for_each_context_engine() Andi Shyti
2019-03-29 12:33   ` Tvrtko Ursulin
2019-03-28 19:22 ` [igt-dev] [PATCH v16 8/8] test: perf_pmu: use the gem_engine_topology library Andi Shyti
2019-03-29 12:40   ` Tvrtko Ursulin
2019-03-29 12:47     ` Andi Shyti [this message]
2019-03-29 12:56       ` Tvrtko Ursulin
2019-03-28 20:15 ` [igt-dev] ✓ Fi.CI.BAT: success for new engine discovery interface Patchwork
2019-03-29  7:40 ` [igt-dev] ✗ Fi.CI.IGT: 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=20190329124726.GE1167@intel.intel \
    --to=andi.shyti@intel.com \
    --cc=andi@etezian.org \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=tvrtko.ursulin@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.