From: Jesse Barnes <jbarnes@virtuousgeek.org>
To: John.C.Harrison@Intel.com, Intel-GFX@Lists.FreeDesktop.Org
Subject: Re: [PATCH 2/7] drm/i915: Removed now redudant parameter to i915_gem_request_completed()
Date: Mon, 11 Jan 2016 14:43:00 -0800 [thread overview]
Message-ID: <56942FF4.3040102@virtuousgeek.org> (raw)
In-Reply-To: <1452278848-33708-3-git-send-email-John.C.Harrison@Intel.com>
On 01/08/2016 10:47 AM, John.C.Harrison@Intel.com wrote:
> From: John Harrison <John.C.Harrison@Intel.com>
>
> The change to the implementation of i915_gem_request_completed() means
> that the lazy coherency flag is no longer used. This can now be
> removed to simplify the interface.
>
> For: VIZ-5190
> Signed-off-by: John Harrison <John.C.Harrison@Intel.com>
> ---
> drivers/gpu/drm/i915/i915_debugfs.c | 2 +-
> drivers/gpu/drm/i915/i915_drv.h | 3 +--
> drivers/gpu/drm/i915/i915_gem.c | 18 +++++++++---------
> drivers/gpu/drm/i915/intel_display.c | 2 +-
> drivers/gpu/drm/i915/intel_pm.c | 4 ++--
> 5 files changed, 14 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
> index af41e5c..b54d99e 100644
> --- a/drivers/gpu/drm/i915/i915_debugfs.c
> +++ b/drivers/gpu/drm/i915/i915_debugfs.c
> @@ -601,7 +601,7 @@ static int i915_gem_pageflip_info(struct seq_file *m, void *data)
> i915_gem_request_get_seqno(work->flip_queued_req),
> dev_priv->next_seqno,
> ring->get_seqno(ring, true),
> - i915_gem_request_completed(work->flip_queued_req, true));
> + i915_gem_request_completed(work->flip_queued_req));
> } else
> seq_printf(m, "Flip not associated with any ring\n");
> seq_printf(m, "Flip queued on frame %d, (was ready on frame %d), now %d\n",
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index aa5cba7..caf7897 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -2263,8 +2263,7 @@ int i915_gem_request_alloc(struct intel_engine_cs *ring,
> struct drm_i915_gem_request **req_out);
> void i915_gem_request_cancel(struct drm_i915_gem_request *req);
>
> -static inline bool i915_gem_request_completed(struct drm_i915_gem_request *req,
> - bool lazy_coherency)
> +static inline bool i915_gem_request_completed(struct drm_i915_gem_request *req)
> {
> return fence_is_signaled(&req->fence);
> }
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index 1138990..93d2f32 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -1165,7 +1165,7 @@ static int __i915_spin_request(struct drm_i915_gem_request *req)
>
> timeout = jiffies + 1;
> while (!need_resched()) {
> - if (i915_gem_request_completed(req, true))
> + if (i915_gem_request_completed(req))
> return 0;
>
> if (time_after_eq(jiffies, timeout))
> @@ -1173,7 +1173,7 @@ static int __i915_spin_request(struct drm_i915_gem_request *req)
>
> cpu_relax_lowlatency();
> }
> - if (i915_gem_request_completed(req, false))
> + if (i915_gem_request_completed(req))
> return 0;
>
> return -EAGAIN;
> @@ -1217,7 +1217,7 @@ int __i915_wait_request(struct drm_i915_gem_request *req,
> if (list_empty(&req->list))
> return 0;
>
> - if (i915_gem_request_completed(req, true))
> + if (i915_gem_request_completed(req))
> return 0;
>
> timeout_expire = timeout ?
> @@ -1257,7 +1257,7 @@ int __i915_wait_request(struct drm_i915_gem_request *req,
> break;
> }
>
> - if (i915_gem_request_completed(req, false)) {
> + if (i915_gem_request_completed(req)) {
> ret = 0;
> break;
> }
> @@ -2759,7 +2759,7 @@ i915_gem_find_active_request(struct intel_engine_cs *ring)
> struct drm_i915_gem_request *request;
>
> list_for_each_entry(request, &ring->request_list, list) {
> - if (i915_gem_request_completed(request, false))
> + if (i915_gem_request_completed(request))
> continue;
>
> return request;
> @@ -2900,7 +2900,7 @@ i915_gem_retire_requests_ring(struct intel_engine_cs *ring)
> struct drm_i915_gem_request,
> list);
>
> - if (!i915_gem_request_completed(request, true))
> + if (!i915_gem_request_completed(request))
> break;
>
> i915_gem_request_retire(request);
> @@ -2924,7 +2924,7 @@ i915_gem_retire_requests_ring(struct intel_engine_cs *ring)
> }
>
> if (unlikely(ring->trace_irq_req &&
> - i915_gem_request_completed(ring->trace_irq_req, true))) {
> + i915_gem_request_completed(ring->trace_irq_req))) {
> ring->irq_put(ring);
> i915_gem_request_assign(&ring->trace_irq_req, NULL);
> }
> @@ -3030,7 +3030,7 @@ i915_gem_object_flush_active(struct drm_i915_gem_object *obj)
> if (list_empty(&req->list))
> goto retire;
>
> - if (i915_gem_request_completed(req, true)) {
> + if (i915_gem_request_completed(req)) {
> __i915_gem_request_retire__upto(req);
> retire:
> i915_gem_object_retire__read(obj, i);
> @@ -3142,7 +3142,7 @@ __i915_gem_object_sync(struct drm_i915_gem_object *obj,
> if (to == from)
> return 0;
>
> - if (i915_gem_request_completed(from_req, true))
> + if (i915_gem_request_completed(from_req))
> return 0;
>
> if (!i915_semaphore_is_enabled(obj->base.dev)) {
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index a5dd528..510365e 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -11313,7 +11313,7 @@ static bool __intel_pageflip_stall_check(struct drm_device *dev,
>
> if (work->flip_ready_vblank == 0) {
> if (work->flip_queued_req &&
> - !i915_gem_request_completed(work->flip_queued_req, true))
> + !i915_gem_request_completed(work->flip_queued_req))
> return false;
>
> work->flip_ready_vblank = drm_crtc_vblank_count(crtc);
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index ebd6735..c207a3a 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -7170,7 +7170,7 @@ static void __intel_rps_boost_work(struct work_struct *work)
> struct request_boost *boost = container_of(work, struct request_boost, work);
> struct drm_i915_gem_request *req = boost->req;
>
> - if (!i915_gem_request_completed(req, true))
> + if (!i915_gem_request_completed(req))
> gen6_rps_boost(to_i915(req->ring->dev), NULL,
> req->emitted_jiffies);
>
> @@ -7186,7 +7186,7 @@ void intel_queue_rps_boost_for_request(struct drm_device *dev,
> if (req == NULL || INTEL_INFO(dev)->gen < 6)
> return;
>
> - if (i915_gem_request_completed(req, true))
> + if (i915_gem_request_completed(req))
> return;
>
> boost = kmalloc(sizeof(*boost), GFP_ATOMIC);
>
I'm sure we'll have optimizations on top once this whole thing lands, so this seems fine as an intermediate step (we'll want to do lots of benchmarking and analysis after the interrupt driven stuff lands anyway).
Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2016-01-11 22:44 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-11 13:11 [PATCH 00/13] Convert requests to use struct fence John.C.Harrison
2015-12-11 13:11 ` [PATCH 01/13] staging/android/sync: Support sync points created from dma-fences John.C.Harrison
2015-12-17 17:32 ` [Intel-gfx] " Jesse Barnes
2015-12-11 13:11 ` [PATCH 02/13] staging/android/sync: add sync_fence_create_dma John.C.Harrison
2015-12-17 17:29 ` Jesse Barnes
2015-12-11 13:11 ` [PATCH 03/13] staging/android/sync: Move sync framework out of staging John.C.Harrison
2015-12-17 17:35 ` Jesse Barnes
2015-12-21 10:03 ` Daniel Vetter
2015-12-21 14:20 ` John Harrison
2015-12-21 15:46 ` Daniel Vetter
2015-12-22 12:14 ` John Harrison
2015-12-11 13:11 ` [PATCH 04/13] android/sync: Improved debug dump to dmesg John.C.Harrison
2015-12-17 17:36 ` Jesse Barnes
2015-12-11 13:11 ` [PATCH 05/13] drm/i915: Convert requests to use struct fence John.C.Harrison
2015-12-17 17:43 ` Jesse Barnes
2016-01-04 17:20 ` Jesse Barnes
2016-01-04 20:57 ` Chris Wilson
2016-01-04 21:16 ` Jesse Barnes
2016-01-08 21:47 ` Chris Wilson
2016-01-08 21:55 ` Jesse Barnes
2015-12-11 13:11 ` [PATCH 06/13] drm/i915: Removed now redudant parameter to i915_gem_request_completed() John.C.Harrison
2015-12-11 13:11 ` [PATCH 07/13] drm/i915: Add per context timelines to fence object John.C.Harrison
2015-12-17 17:49 ` Jesse Barnes
2015-12-21 10:16 ` Chris Wilson
2015-12-11 13:11 ` [PATCH 08/13] drm/i915: Delay the freeing of requests until retire time John.C.Harrison
2015-12-11 13:11 ` [PATCH 09/13] drm/i915: Interrupt driven fences John.C.Harrison
2015-12-11 15:30 ` John Harrison
2015-12-11 16:07 ` Tvrtko Ursulin
2015-12-11 13:11 ` [PATCH 10/13] drm/i915: Updated request structure tracing John.C.Harrison
2015-12-11 13:11 ` [PATCH 11/13] android/sync: Fix reversed sense of signaled fence John.C.Harrison
2015-12-11 15:57 ` Tvrtko Ursulin
2015-12-14 11:22 ` John Harrison
2015-12-14 12:37 ` Tvrtko Ursulin
2015-12-11 13:12 ` [PATCH 12/13] drm/i915: Add sync framework support to execbuff IOCTL John.C.Harrison
2015-12-11 15:29 ` Tvrtko Ursulin
2015-12-14 11:46 ` John Harrison
2015-12-14 12:23 ` Chris Wilson
2015-12-11 13:12 ` [PATCH 13/13] drm/i915: Cache last IRQ seqno to reduce IRQ overhead John.C.Harrison
2015-12-11 14:28 ` Tvrtko Ursulin
2015-12-14 11:58 ` John Harrison
2015-12-14 12:52 ` Tvrtko Ursulin
2015-12-11 14:55 ` Chris Wilson
2015-12-11 15:35 ` John Harrison
2015-12-11 16:07 ` Chris Wilson
2016-01-08 18:47 ` [PATCH 0/7] Convert requests to use struct fence John.C.Harrison
2016-01-08 18:47 ` [PATCH 1/7] drm/i915: " John.C.Harrison
2016-01-08 21:59 ` Chris Wilson
2016-01-11 19:03 ` John Harrison
2016-01-11 22:41 ` Jesse Barnes
2016-01-08 18:47 ` [PATCH 2/7] drm/i915: Removed now redudant parameter to i915_gem_request_completed() John.C.Harrison
2016-01-11 22:43 ` Jesse Barnes [this message]
2016-01-08 18:47 ` [PATCH 3/7] drm/i915: Add per context timelines to fence object John.C.Harrison
2016-01-08 22:05 ` Chris Wilson
2016-01-11 19:03 ` John Harrison
2016-01-11 22:47 ` Jesse Barnes
2016-01-11 22:58 ` Chris Wilson
2016-01-12 11:03 ` John Harrison
2016-01-12 11:26 ` Chris Wilson
2016-01-08 18:47 ` [PATCH 4/7] drm/i915: Delay the freeing of requests until retire time John.C.Harrison
2016-01-08 22:08 ` Chris Wilson
2016-01-11 19:06 ` John Harrison
2016-01-25 11:52 ` Maarten Lankhorst
2016-01-25 12:11 ` Chris Wilson
2016-01-08 18:47 ` [PATCH 5/7] drm/i915: Interrupt driven fences John.C.Harrison
2016-01-08 22:14 ` Chris Wilson
2016-01-09 0:30 ` Chris Wilson
2016-01-08 22:46 ` Chris Wilson
2016-01-11 19:10 ` John Harrison
2016-01-11 23:01 ` Jesse Barnes
2016-01-08 18:47 ` [PATCH 6/7] drm/i915: Updated request structure tracing John.C.Harrison
2016-01-08 22:16 ` Chris Wilson
2016-01-08 18:47 ` [PATCH 7/7] drm/i915: Cache last IRQ seqno to reduce IRQ overhead John.C.Harrison
2016-01-08 22:47 ` [PATCH 0/7] Convert requests to use struct fence Chris Wilson
2016-01-11 19:15 ` John Harrison
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=56942FF4.3040102@virtuousgeek.org \
--to=jbarnes@virtuousgeek.org \
--cc=Intel-GFX@Lists.FreeDesktop.Org \
--cc=John.C.Harrison@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).