diff mbox

drm/i915/perf: destroy stream on sample_flags mismatch

Message ID 20170327203459.18398-1-matthew.auld@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Matthew Auld March 27, 2017, 8:34 p.m. UTC
If we were to ever encounter a sample_flags mismatch we need to ensure
we destroy the stream when we bail.

Fixes: d79651522e89 ("drm/i915: Enable i915 perf stream for Haswell OA unit")
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Cc: Robert Bragg <robert@sixbynine.org>
---
 drivers/gpu/drm/i915/i915_perf.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Mika Kuoppala March 28, 2017, 6:22 a.m. UTC | #1
Matthew Auld <matthew.auld@intel.com> writes:

> If we were to ever encounter a sample_flags mismatch we need to ensure
> we destroy the stream when we bail.
>
> Fixes: d79651522e89 ("drm/i915: Enable i915 perf stream for Haswell OA unit")
> Signed-off-by: Matthew Auld <matthew.auld@intel.com>
> Cc: Robert Bragg <robert@sixbynine.org>

Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>

> ---
>  drivers/gpu/drm/i915/i915_perf.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
> index e52bc6a581e6..060b171480d5 100644
> --- a/drivers/gpu/drm/i915/i915_perf.c
> +++ b/drivers/gpu/drm/i915/i915_perf.c
> @@ -1705,7 +1705,7 @@ i915_perf_open_ioctl_locked(struct drm_i915_private *dev_priv,
>  	 */
>  	if (WARN_ON(stream->sample_flags != props->sample_flags)) {
>  		ret = -ENODEV;
> -		goto err_alloc;
> +		goto err_flags;
>  	}
>  
>  	list_add(&stream->link, &dev_priv->perf.streams);
> @@ -1728,6 +1728,7 @@ i915_perf_open_ioctl_locked(struct drm_i915_private *dev_priv,
>  
>  err_open:
>  	list_del(&stream->link);
> +err_flags:
>  	if (stream->ops->destroy)
>  		stream->ops->destroy(stream);
>  err_alloc:
> -- 
> 2.9.3
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Mika Kuoppala March 28, 2017, 7:35 a.m. UTC | #2
Matthew Auld <matthew.auld@intel.com> writes:

> If we were to ever encounter a sample_flags mismatch we need to ensure
> we destroy the stream when we bail.
>
> Fixes: d79651522e89 ("drm/i915: Enable i915 perf stream for Haswell OA unit")
> Signed-off-by: Matthew Auld <matthew.auld@intel.com>
> Cc: Robert Bragg <robert@sixbynine.org>

Pushed, thanks for patch.
-Mika
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
index e52bc6a581e6..060b171480d5 100644
--- a/drivers/gpu/drm/i915/i915_perf.c
+++ b/drivers/gpu/drm/i915/i915_perf.c
@@ -1705,7 +1705,7 @@  i915_perf_open_ioctl_locked(struct drm_i915_private *dev_priv,
 	 */
 	if (WARN_ON(stream->sample_flags != props->sample_flags)) {
 		ret = -ENODEV;
-		goto err_alloc;
+		goto err_flags;
 	}
 
 	list_add(&stream->link, &dev_priv->perf.streams);
@@ -1728,6 +1728,7 @@  i915_perf_open_ioctl_locked(struct drm_i915_private *dev_priv,
 
 err_open:
 	list_del(&stream->link);
+err_flags:
 	if (stream->ops->destroy)
 		stream->ops->destroy(stream);
 err_alloc: