All of lore.kernel.org
 help / color / mirror / Atom feed
* [CI 1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm
@ 2019-10-10 19:48 Chris Wilson
  2019-10-10 19:48 ` [CI 2/9] drm/i915/perf: introduce a versioning of the i915-perf uapi Chris Wilson
                   ` (14 more replies)
  0 siblings, 15 replies; 21+ messages in thread
From: Chris Wilson @ 2019-10-10 19:48 UTC (permalink / raw)
  To: intel-gfx

As we now have a specific engine to use OA on, exchange the top-level
runtime-pm wakeref with the engine-pm. This still results in the same
top-level runtime-pm, but with more nuances to keep the engine and its
gt awake.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/i915_perf.c       | 8 ++++----
 drivers/gpu/drm/i915/i915_perf_types.h | 6 ------
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
index 77c3cef64548..c4a436dfb7db 100644
--- a/drivers/gpu/drm/i915/i915_perf.c
+++ b/drivers/gpu/drm/i915/i915_perf.c
@@ -196,7 +196,7 @@
 #include <linux/uuid.h>
 
 #include "gem/i915_gem_context.h"
-#include "gem/i915_gem_pm.h"
+#include "gt/intel_engine_pm.h"
 #include "gt/intel_engine_user.h"
 #include "gt/intel_lrc_reg.h"
 
@@ -1353,7 +1353,7 @@ static void i915_oa_stream_destroy(struct i915_perf_stream *stream)
 	free_oa_buffer(stream);
 
 	intel_uncore_forcewake_put(stream->uncore, FORCEWAKE_ALL);
-	intel_runtime_pm_put(stream->uncore->rpm, stream->wakeref);
+	intel_engine_pm_put(stream->engine);
 
 	if (stream->ctx)
 		oa_put_render_ctx_id(stream);
@@ -2218,7 +2218,7 @@ static int i915_oa_stream_init(struct i915_perf_stream *stream,
 	 *   In our case we are expecting that taking pm + FORCEWAKE
 	 *   references will effectively disable RC6.
 	 */
-	stream->wakeref = intel_runtime_pm_get(stream->uncore->rpm);
+	intel_engine_pm_get(stream->engine);
 	intel_uncore_forcewake_get(stream->uncore, FORCEWAKE_ALL);
 
 	ret = alloc_oa_buffer(stream);
@@ -2252,7 +2252,7 @@ static int i915_oa_stream_init(struct i915_perf_stream *stream,
 	put_oa_config(stream->oa_config);
 
 	intel_uncore_forcewake_put(stream->uncore, FORCEWAKE_ALL);
-	intel_runtime_pm_put(stream->uncore->rpm, stream->wakeref);
+	intel_engine_pm_put(stream->engine);
 
 err_config:
 	if (stream->ctx)
diff --git a/drivers/gpu/drm/i915/i915_perf_types.h b/drivers/gpu/drm/i915/i915_perf_types.h
index a91ae2d1a543..eb8d1ebd5095 100644
--- a/drivers/gpu/drm/i915/i915_perf_types.h
+++ b/drivers/gpu/drm/i915/i915_perf_types.h
@@ -134,12 +134,6 @@ struct i915_perf_stream {
 	 */
 	struct intel_uncore *uncore;
 
-	/**
-	 * @wakeref: As we keep the device awake while the perf stream is
-	 * active, we track our runtime pm reference for later release.
-	 */
-	intel_wakeref_t wakeref;
-
 	/**
 	 * @engine: Engine associated with this performance stream.
 	 */
-- 
2.23.0

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

^ permalink raw reply related	[flat|nested] 21+ messages in thread
* [CI 1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm
@ 2019-10-11 19:03 Chris Wilson
  2019-10-11 19:03 ` [CI 2/9] drm/i915/perf: introduce a versioning of the i915-perf uapi Chris Wilson
  0 siblings, 1 reply; 21+ messages in thread
From: Chris Wilson @ 2019-10-11 19:03 UTC (permalink / raw)
  To: intel-gfx

As we now have a specific engine to use OA on, exchange the top-level
runtime-pm wakeref with the engine-pm. This still results in the same
top-level runtime-pm, but with more nuances to keep the engine and its
gt awake.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
---
 drivers/gpu/drm/i915/i915_perf.c       | 8 ++++----
 drivers/gpu/drm/i915/i915_perf_types.h | 6 ------
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
index 77c3cef64548..c4a436dfb7db 100644
--- a/drivers/gpu/drm/i915/i915_perf.c
+++ b/drivers/gpu/drm/i915/i915_perf.c
@@ -196,7 +196,7 @@
 #include <linux/uuid.h>
 
 #include "gem/i915_gem_context.h"
-#include "gem/i915_gem_pm.h"
+#include "gt/intel_engine_pm.h"
 #include "gt/intel_engine_user.h"
 #include "gt/intel_lrc_reg.h"
 
@@ -1353,7 +1353,7 @@ static void i915_oa_stream_destroy(struct i915_perf_stream *stream)
 	free_oa_buffer(stream);
 
 	intel_uncore_forcewake_put(stream->uncore, FORCEWAKE_ALL);
-	intel_runtime_pm_put(stream->uncore->rpm, stream->wakeref);
+	intel_engine_pm_put(stream->engine);
 
 	if (stream->ctx)
 		oa_put_render_ctx_id(stream);
@@ -2218,7 +2218,7 @@ static int i915_oa_stream_init(struct i915_perf_stream *stream,
 	 *   In our case we are expecting that taking pm + FORCEWAKE
 	 *   references will effectively disable RC6.
 	 */
-	stream->wakeref = intel_runtime_pm_get(stream->uncore->rpm);
+	intel_engine_pm_get(stream->engine);
 	intel_uncore_forcewake_get(stream->uncore, FORCEWAKE_ALL);
 
 	ret = alloc_oa_buffer(stream);
@@ -2252,7 +2252,7 @@ static int i915_oa_stream_init(struct i915_perf_stream *stream,
 	put_oa_config(stream->oa_config);
 
 	intel_uncore_forcewake_put(stream->uncore, FORCEWAKE_ALL);
-	intel_runtime_pm_put(stream->uncore->rpm, stream->wakeref);
+	intel_engine_pm_put(stream->engine);
 
 err_config:
 	if (stream->ctx)
diff --git a/drivers/gpu/drm/i915/i915_perf_types.h b/drivers/gpu/drm/i915/i915_perf_types.h
index a91ae2d1a543..eb8d1ebd5095 100644
--- a/drivers/gpu/drm/i915/i915_perf_types.h
+++ b/drivers/gpu/drm/i915/i915_perf_types.h
@@ -134,12 +134,6 @@ struct i915_perf_stream {
 	 */
 	struct intel_uncore *uncore;
 
-	/**
-	 * @wakeref: As we keep the device awake while the perf stream is
-	 * active, we track our runtime pm reference for later release.
-	 */
-	intel_wakeref_t wakeref;
-
 	/**
 	 * @engine: Engine associated with this performance stream.
 	 */
-- 
2.23.0

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

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

end of thread, other threads:[~2019-10-11 19:03 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-10 19:48 [CI 1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm Chris Wilson
2019-10-10 19:48 ` [CI 2/9] drm/i915/perf: introduce a versioning of the i915-perf uapi Chris Wilson
2019-10-10 19:48 ` [CI 3/9] drm/i915/perf: allow for CS OA configs to be created lazily Chris Wilson
2019-10-10 19:48 ` [CI 4/9] drm/i915: add support for perf configuration queries Chris Wilson
2019-10-10 19:48 ` [CI 5/9] drm/i915/perf: implement active wait for noa configurations Chris Wilson
2019-10-10 20:24   ` [PATCH] " Chris Wilson
2019-10-10 19:48 ` [CI 6/9] drm/i915/perf: execute OA configuration from command stream Chris Wilson
2019-10-10 19:48 ` [CI 7/9] drm/i915/perf: Allow dynamic reconfiguration of the OA stream Chris Wilson
2019-10-10 20:22   ` [PATCH] " Chris Wilson
2019-10-10 21:23   ` Chris Wilson
2019-10-11 13:25     ` Lionel Landwerlin
2019-10-10 19:48 ` [CI 8/9] drm/i915/perf: allow holding preemption on filtered ctx Chris Wilson
2019-10-10 19:48 ` [CI 9/9] drm/i915/execlists: Prevent merging requests with conflicting flags Chris Wilson
2019-10-10 20:22 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [CI,1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm Patchwork
2019-10-10 20:53 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [CI,1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm (rev3) Patchwork
2019-10-10 21:03 ` ✓ Fi.CI.BAT: success for series starting with [CI,1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm Patchwork
2019-10-10 21:14 ` ✓ Fi.CI.BAT: success for series starting with [CI,1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm (rev3) Patchwork
2019-10-10 22:14 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [CI,1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm (rev4) Patchwork
2019-10-10 22:47 ` ✓ Fi.CI.BAT: success " Patchwork
2019-10-11 10:54 ` ✗ Fi.CI.IGT: failure " Patchwork
2019-10-11 19:03 [CI 1/9] drm/i915/perf: Replace global wakeref tracking with engine-pm Chris Wilson
2019-10-11 19:03 ` [CI 2/9] drm/i915/perf: introduce a versioning of the i915-perf uapi Chris Wilson

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.