public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH 00/13] drm-intel-collector - review request
@ 2013-09-23 20:33 Rodrigo Vivi
  2013-09-23 20:33 ` [PATCH 01/13] drm/i915: check that the i965g/gm 4G limit is really obeyed Rodrigo Vivi
                   ` (13 more replies)
  0 siblings, 14 replies; 32+ messages in thread
From: Rodrigo Vivi @ 2013-09-23 20:33 UTC (permalink / raw)
  To: intel-gfx

This is another drm-intel-collector push for review:
http://cgit.freedesktop.org/~vivijim/drm-intel/log/?h=drm-intel-collector

Here goes the list in order for better reviewers assignment:

Patch 01/13 - 816e102 drm/i915: check that the i965g/gm 4G limit is really obeyed - Reviewer: Damien
Patch 02/13 - 036f5da drm/i915: Move the conditional seqno query into the tracepoint - Reviewer: Ville
Patch 03/13 - f381b05 drm/i915: Add some missing steps to i915_driver_load error path - Reviewer: Ben
Patch 04/13 - f648dba drm/i915: Asynchronously perform the set-base for a simple modeset - Reviewer: 
Patch 05/13 - ec31a06 drm/i915: Align tiled scanouts from stolen memory to 256k in the GTT - Reviewer: 
Patch 06/13 - 3b2a43a drm/i915: Pair seqno completion tracepoint with its dispatch - Reviewer: 
Patch 07/13 - 4d98ddd drm/i915: Initialise min/max frequencies before updating RPS registers - Reviewer: 
Patch 08/13 - 35983bd drm/i915: Delay the relase of the forcewake by a jiffie - Reviewer: 
Patch 09/13 - 14141ee drm/i915: Add a tracepoint for using a semaphore - Reviewer: 
Patch 10/13 - 06d2851 drm/i915: Boost RPS frequency for CPU stalls - Reviewer: 
Patch 11/13 - e64dce9 drm/i915: Tweak RPS thresholds to more aggressively downclock - Reviewer: 
Patch 12/13 - 7b6c68c drm/i915: Allow GT3 Slice Shutdown on Boot. - Reviewer: 
Patch 13/13 - 2f3c359 drm/i915: Allow Dynamically GT3 Slice Shutdown. - Reviewer: 

Overall Process has changed a bit in order to avoid discussion split/duplications and for poking reviewers:

1. Daniel pushs drm-intel-testing (every 2 weeks)
2. I rebase drm-intel-collector onto drm-intel-testing
3. Add Reviewer: tag with voluntered reviewers. If you don't believe you should be assigned on a particular patch please don't get mad just tell you wont review or volunteer someone else.
4. I resubmit remaining patches for review without picking any new (drm-intel-collector - review request)
5. One week later I collect all simple (1-2) patches that wasn't yet reviewed and not queued by Daniel from one testing update until another.
6. Request automated QA's PRTS automated i-g-t tests comparing drm-intel-testing x drm-intel-collector
7. If tests are ok I send the update notification or the patches as a series to intel-gfx mailing list for better tracking and to be reviewed. (drm-intel-collector - updated)
8. Let me know volunteers for review new patches and also let me know if I've picked any patch that I shouldn't.

There are some reasons that some patches can be left behind:
1. It was send so long time ago. I started with patches from Jul 26th.
2. Your patch didn't applied cleanly and I couldn't easily solve the conflicts.
3. Kernel didn't compiled with your patch.
4. I simply missed it. If you believe this is the case please warn me.

Please help me to get these patches reviewed and queued by Daniel.

Also, please let me know if you have further ideas how to improve this process.

Thanks in advance,
Rodrigo.

Chris Wilson (10):
  drm/i915: Move the conditional seqno query into the tracepoint
  drm/i915: Add some missing steps to i915_driver_load error path
  drm/i915: Asynchronously perform the set-base for a simple modeset
  drm/i915: Align tiled scanouts from stolen memory to 256k in the GTT
  drm/i915: Pair seqno completion tracepoint with its dispatch
  drm/i915: Initialise min/max frequencies before updating RPS registers
  drm/i915: Delay the relase of the forcewake by a jiffie
  drm/i915: Add a tracepoint for using a semaphore
  drm/i915: Boost RPS frequency for CPU stalls
  drm/i915: Tweak RPS thresholds to more aggressively downclock

Daniel Vetter (1):
  drm/i915: check that the i965g/gm 4G limit is really obeyed

Rodrigo Vivi (2):
  drm/i915: Allow GT3 Slice Shutdown on Boot.
  drm/i915: Allow Dynamically GT3 Slice Shutdown.

 drivers/gpu/drm/i915/i915_debugfs.c        |   2 +-
 drivers/gpu/drm/i915/i915_dma.c            |  41 ++---
 drivers/gpu/drm/i915/i915_drv.c            |   5 +
 drivers/gpu/drm/i915/i915_drv.h            |  28 +++-
 drivers/gpu/drm/i915/i915_gem.c            | 146 +++++++++++------
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |   2 +-
 drivers/gpu/drm/i915/i915_irq.c            |  59 ++++---
 drivers/gpu/drm/i915/i915_reg.h            |  13 +-
 drivers/gpu/drm/i915/i915_sysfs.c          |  64 +++++++-
 drivers/gpu/drm/i915/i915_trace.h          |  52 ++++--
 drivers/gpu/drm/i915/intel_display.c       |  16 +-
 drivers/gpu/drm/i915/intel_drv.h           |   7 +-
 drivers/gpu/drm/i915/intel_pm.c            | 250 +++++++++++++++++++++--------
 drivers/gpu/drm/i915/intel_uncore.c        |  30 +++-
 14 files changed, 525 insertions(+), 190 deletions(-)

--
1.8.1.4

^ permalink raw reply	[flat|nested] 32+ messages in thread
* [PATCH] drm/i915: Add a tracepoint for using a semaphore
@ 2013-08-26 13:34 Chris Wilson
  0 siblings, 0 replies; 32+ messages in thread
From: Chris Wilson @ 2013-08-26 13:34 UTC (permalink / raw)
  To: intel-gfx

So that we can find the callers who introduce a ring stall. A single
ring stall is not too unwelcome, the right issue becomes when they start
to interlock and prevent any concurrent work. That, however, is a little
tricker to detect with a mere tracepoint!

v2: Rebrand it as a ring event, rather than an object event.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/i915_gem.c   |  2 ++
 drivers/gpu/drm/i915/i915_trace.h | 19 +++++++++++++++++++
 2 files changed, 21 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 85537d1..a9a6baa 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2698,6 +2698,8 @@ i915_gem_object_sync(struct drm_i915_gem_object *obj,
 	if (ret)
 		return ret;
 
+	trace_i915_gem_ring_sync_to(from, to);
+
 	ret = to->sync_to(to, from, seqno);
 	if (!ret)
 		/* We use last_read_seqno because sync_to()
diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h
index feaacbb..163774a 100644
--- a/drivers/gpu/drm/i915/i915_trace.h
+++ b/drivers/gpu/drm/i915/i915_trace.h
@@ -235,6 +235,25 @@ TRACE_EVENT(i915_gem_evict_everything,
 	    TP_printk("dev=%d", __entry->dev)
 );
 
+TRACE_EVENT(i915_gem_ring_sync_to,
+	    TP_PROTO(struct intel_ring_buffer *from, struct intel_ring_buffer *to),
+	    TP_ARGS(from, to),
+
+	    TP_STRUCT__entry(
+			     __field(u32, dev)
+			     __field(u32, sync_from)
+			     __field(u32, sync_to)
+			     ),
+
+	    TP_fast_assign(
+			   __entry->dev = from->dev->primary->index;
+			   __entry->sync_from = from->id;
+			   __entry->sync_to = to->id;
+			   ),
+
+	    TP_printk("dev=%u, sync-from=%u, sync-to=%u", __entry->dev, __entry->sync_from, __entry->sync_to)
+);
+
 TRACE_EVENT(i915_gem_ring_dispatch,
 	    TP_PROTO(struct intel_ring_buffer *ring, u32 flags),
 	    TP_ARGS(ring, flags),
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] 32+ messages in thread
* [PATCH] drm/i915: Add a tracepoint for using a semaphore
@ 2013-08-26 12:46 Chris Wilson
  2013-08-26 13:20 ` Ville Syrjälä
  0 siblings, 1 reply; 32+ messages in thread
From: Chris Wilson @ 2013-08-26 12:46 UTC (permalink / raw)
  To: intel-gfx

So that we can find the callers who introduce a ring stall. A single
ring stall is not too unwelcome, the right issue becomes when they start
to interlock and prevent any concurrent work. That, however, is a little
tricker to detect with a mere tracepoint!

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/i915_gem.c   |  2 ++
 drivers/gpu/drm/i915/i915_trace.h | 19 +++++++++++++++++++
 2 files changed, 21 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 85537d1..0122278 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2698,6 +2698,8 @@ i915_gem_object_sync(struct drm_i915_gem_object *obj,
 	if (ret)
 		return ret;
 
+	trace_i915_gem_object_sync(obj, to);
+
 	ret = to->sync_to(to, from, seqno);
 	if (!ret)
 		/* We use last_read_seqno because sync_to()
diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h
index feaacbb..728c43b 100644
--- a/drivers/gpu/drm/i915/i915_trace.h
+++ b/drivers/gpu/drm/i915/i915_trace.h
@@ -33,6 +33,25 @@ TRACE_EVENT(i915_gem_object_create,
 	    TP_printk("obj=%p, size=%u", __entry->obj, __entry->size)
 );
 
+TRACE_EVENT(i915_gem_object_sync,
+	    TP_PROTO(struct drm_i915_gem_object *obj, struct intel_ring_buffer *to),
+	    TP_ARGS(obj, to),
+
+	    TP_STRUCT__entry(
+			     __field(struct drm_i915_gem_object *, obj)
+			     __field(u32, sync_from)
+			     __field(u32, sync_to)
+			     ),
+
+	    TP_fast_assign(
+			   __entry->obj = obj;
+			   __entry->sync_from = obj->ring->id;
+			   __entry->sync_to = to->id;
+			   ),
+
+	    TP_printk("obj=%p, sync-from=%u, sync-to=%u", __entry->obj, __entry->sync_from, __entry->sync_to)
+);
+
 TRACE_EVENT(i915_vma_bind,
 	    TP_PROTO(struct i915_vma *vma, bool mappable),
 	    TP_ARGS(vma, mappable),
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2013-10-02 17:00 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-09-23 20:33 [PATCH 00/13] drm-intel-collector - review request Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 01/13] drm/i915: check that the i965g/gm 4G limit is really obeyed Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 02/13] drm/i915: Move the conditional seqno query into the tracepoint Rodrigo Vivi
2013-09-24 18:50   ` Ville Syrjälä
2013-09-24 19:20     ` Daniel Vetter
2013-09-23 20:33 ` [PATCH 03/13] drm/i915: Add some missing steps to i915_driver_load error path Rodrigo Vivi
2013-10-02 17:00   ` Daniel Vetter
2013-09-23 20:33 ` [PATCH 04/13] drm/i915: Asynchronously perform the set-base for a simple modeset Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 05/13] drm/i915: Align tiled scanouts from stolen memory to 256k in the GTT Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 06/13] drm/i915: Pair seqno completion tracepoint with its dispatch Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 07/13] drm/i915: Initialise min/max frequencies before updating RPS registers Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 08/13] drm/i915: Delay the relase of the forcewake by a jiffie Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 09/13] drm/i915: Add a tracepoint for using a semaphore Rodrigo Vivi
2013-09-25  9:34   ` Ville Syrjälä
2013-09-25 10:11     ` Daniel Vetter
2013-09-25 10:43       ` [PATCH] " Chris Wilson
2013-09-25 11:29         ` Ville Syrjälä
2013-09-25 11:31           ` Daniel Vetter
2013-09-23 20:33 ` [PATCH 10/13] drm/i915: Boost RPS frequency for CPU stalls Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 11/13] drm/i915: Tweak RPS thresholds to more aggressively downclock Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 12/13] drm/i915: Allow GT3 Slice Shutdown on Boot Rodrigo Vivi
2013-09-23 20:33 ` [PATCH 13/13] drm/i915: Allow Dynamically GT3 Slice Shutdown Rodrigo Vivi
2013-09-23 21:13   ` Chris Wilson
2013-09-24 10:15 ` [PATCH 00/13] drm-intel-collector - review request Daniel Vetter
2013-09-24 10:32   ` Chris Wilson
2013-09-24 10:47     ` Daniel Vetter
2013-09-24 11:11       ` Chris Wilson
2013-09-24 11:22         ` Daniel Vetter
  -- strict thread matches above, loose matches on Subject: below --
2013-08-26 13:34 [PATCH] drm/i915: Add a tracepoint for using a semaphore Chris Wilson
2013-08-26 12:46 Chris Wilson
2013-08-26 13:20 ` Ville Syrjälä
2013-08-26 13:30   ` Chris Wilson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox