From: "Dixit, Ashutosh" <ashutosh.dixit@intel.com>
To: John Harrison <john.c.harrison@intel.com>
Cc: igt-dev@lists.freedesktop.org,
Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Subject: Re: [igt-dev] [PATCH i-g-t 1/3] lib/i915: Return actual submission method from gem_submission_method
Date: Thu, 28 Oct 2021 17:31:37 -0700 [thread overview]
Message-ID: <87pmrosmc6.wl-ashutosh.dixit@intel.com> (raw)
In-Reply-To: <ef87d355-d5da-7c80-5c84-2c521d0d3f19@intel.com>
On Thu, 28 Oct 2021 16:55:32 -0700, John Harrison wrote:
>
> On 10/27/2021 21:40, Ashutosh Dixit wrote:
> > gem_submission_method() purports to return the currently used submission
> > method by the kernel, as evidenced by its callers. Therefore remove the
> > GEM_SUBMISSION_EXECLISTS flag when GuC submission is detected.
> >
> > This also fixes gem_has_execlists() to match its description, previously
> > gem_has_execlists() would return true even if GuC submission was actually
> > being used in the driver.
> >
> > v2: Or gem_has_execlists call-sites with gem_has_guc_submission to make the
> > new code equivalent to the previous code.
> > v3: Clarify that submission method is either guc (0x4), execlists (0x2) or
> > legacy without semaphores (0x0) or legacy with semaphores (0x1)
>
> What about GuC with semaphores vs GuC without semaphores? Likewise execlist.
>
> Semaphores is not a submission method. They are a submission feature whose
> support or lack there of is independent of the submission method.
Sorry I didn't know that. But if you see gem_submission_method() in current
upstream IGT (pasted below) it doesn't return "GuC with semaphores' or
"execlist with semaphores" either. Anyway, let me do this in the next
rev. Thanks.
unsigned gem_submission_method(int fd)
{
const int gen = intel_gen(intel_get_drm_devid(fd));
unsigned flags = 0;
int dir;
dir = igt_params_open(fd);
if (dir < 0)
return 0;
if (igt_sysfs_get_u32(dir, "enable_guc") & 1) {
flags |= GEM_SUBMISSION_GUC | GEM_SUBMISSION_EXECLISTS;
goto out;
}
if (gen >= 8) {
flags |= GEM_SUBMISSION_EXECLISTS;
goto out;
}
if (has_semaphores(fd, dir))
flags |= GEM_SUBMISSION_SEMAPHORES;
out:
close(dir);
return flags;
}
next prev parent reply other threads:[~2021-10-29 0:31 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-28 4:40 [igt-dev] [PATCH i-g-t 0/3] Return actual submission methods from submission method functions Ashutosh Dixit
2021-10-28 4:40 ` [igt-dev] [PATCH i-g-t 1/3] lib/i915: Return actual submission method from gem_submission_method Ashutosh Dixit
2021-10-28 23:55 ` John Harrison
2021-10-29 0:31 ` Dixit, Ashutosh [this message]
2021-10-30 0:42 ` John Harrison
2021-11-02 19:18 ` Dixit, Ashutosh
2021-11-02 22:48 ` Dixit, Ashutosh
2021-10-28 4:40 ` [igt-dev] [PATCH i-g-t 2/3] lib/i915: Clarify gem_submission function names Ashutosh Dixit
2021-10-28 4:40 ` [igt-dev] [PATCH i-g-t 3/3] tests/gem_ctx_shared: Fix disjoint_timelines test requirements Ashutosh Dixit
2021-10-28 5:15 ` [igt-dev] ✓ Fi.CI.BAT: success for Return actual submission methods from submission method functions Patchwork
2021-10-28 9:20 ` [igt-dev] ✓ Fi.CI.IGT: " 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=87pmrosmc6.wl-ashutosh.dixit@intel.com \
--to=ashutosh.dixit@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=john.c.harrison@intel.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox