intel-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: intel-gfx@lists.freedesktop.org,
	DRI Development <dri-devel@lists.freedesktop.org>,
	mahesh.meena@intel.com
Subject: Re: [Intel-gfx] [PATCH 1/1] Let userspace know if they can trust timeslicing by including it as part of the I915_PARAM_HAS_SCHEDULER::I915_SCHEDULER_CAP_TIMESLICING
Date: Wed, 26 May 2021 11:20:13 +0100	[thread overview]
Message-ID: <8cf2c5f4-87a3-ce6b-150c-65fa054586a4@linux.intel.com> (raw)
In-Reply-To: <YK0OHJcSwWY1mm7v@phenom.ffwll.local>


On 25/05/2021 15:47, Daniel Vetter wrote:
> On Tue, May 25, 2021 at 03:19:47PM +0100, Tvrtko Ursulin wrote:
>>
>> + dri-devel as per process
>>
>> On 25/05/2021 14:55, Tejas Upadhyay wrote:
>>> v2: Only declare timeslicing if we can safely preempt userspace.
>>
>> Commit message got butchered up somehow so you'll need to fix that at some
>> point.
>>
>> Regards,
>>
>> Tvrtko
>>
>>> Fixes: 8ee36e048c98 ("drm/i915/execlists: Minimalistic timeslicing")
>>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
>>> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
>>> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
>>> ---
>>>    drivers/gpu/drm/i915/gt/intel_engine_user.c | 1 +
>>>    include/uapi/drm/i915_drm.h                 | 1 +
>>>    2 files changed, 2 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_user.c b/drivers/gpu/drm/i915/gt/intel_engine_user.c
>>> index 3cca7ea2d6ea..12d165566ed2 100644
>>> --- a/drivers/gpu/drm/i915/gt/intel_engine_user.c
>>> +++ b/drivers/gpu/drm/i915/gt/intel_engine_user.c
>>> @@ -98,6 +98,7 @@ static void set_scheduler_caps(struct drm_i915_private *i915)
>>>    		MAP(HAS_PREEMPTION, PREEMPTION),
>>>    		MAP(HAS_SEMAPHORES, SEMAPHORES),
>>>    		MAP(SUPPORTS_STATS, ENGINE_BUSY_STATS),
>>> +		MAP(TIMESLICE_BIT, TIMESLICING),
>>>    #undef MAP
>>>    	};
>>>    	struct intel_engine_cs *engine;
>>> diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
>>> index c2c7759b7d2e..af2212d6113c 100644
>>> --- a/include/uapi/drm/i915_drm.h
>>> +++ b/include/uapi/drm/i915_drm.h
>>> @@ -572,6 +572,7 @@ typedef struct drm_i915_irq_wait {
>>>    #define   I915_SCHEDULER_CAP_PREEMPTION	(1ul << 2)
>>>    #define   I915_SCHEDULER_CAP_SEMAPHORES	(1ul << 3)
>>>    #define   I915_SCHEDULER_CAP_ENGINE_BUSY_STATS	(1ul << 4)
>>> +#define   I915_SCHEDULER_CAP_TIMESLICING	(1ul << 5)
> 
> Since this is uapi I think we should at least have some nice kerneldoc
> that explains what exactly this is, what for (link to userspace) and all
> that. Ideally also minimally filing in the gaps in our uapi docs for stuff
> this references.

IIUC there is no userspace apart from IGT needing it not to fail 
scheduling tests on ADL.

Current tests use "has preemption + has semaphores" as a proxy to answer 
the "does the kernel support timeslicing" question. This stops working 
with the Guc backend because GuC decided not to support semaphores (for 
reasons yet unknown, see other thread), so explicit "has timeslicing" 
flag is needed in order for tests to know that GuC is supposed to 
support timeslicing, even if it doesn't use semaphores for inter-ring 
synchronisation.

Regards,

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

  reply	other threads:[~2021-05-26 10:20 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-25 13:55 [Intel-gfx] [PATCH 0/1] drm/i915/gt: Introduce timeslicing for userspace Tejas Upadhyay
2021-05-25 13:55 ` [Intel-gfx] [PATCH 1/1] Let userspace know if they can trust timeslicing by including it as part of the I915_PARAM_HAS_SCHEDULER::I915_SCHEDULER_CAP_TIMESLICING Tejas Upadhyay
2021-05-25 14:19   ` Tvrtko Ursulin
2021-05-25 14:47     ` Daniel Vetter
2021-05-26 10:20       ` Tvrtko Ursulin [this message]
2021-05-27 10:13         ` Daniel Vetter
2021-05-27 10:22           ` Tvrtko Ursulin
2021-05-27 10:27             ` Daniel Vetter
2021-05-27 12:13               ` Tvrtko Ursulin
2021-06-01 10:09               ` Tvrtko Ursulin
2021-06-01 14:25                 ` Daniel Vetter
2021-06-04 12:53             ` Tvrtko Ursulin
2021-05-25 15:48 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/i915/gt: Introduce timeslicing for userspace 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=8cf2c5f4-87a3-ce6b-150c-65fa054586a4@linux.intel.com \
    --to=tvrtko.ursulin@linux.intel.com \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=mahesh.meena@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;
as well as URLs for NNTP newsgroup(s).