Re: [PATCH 1/6] drm/i915: Extend i915 perf framework for collecting timestamps on all gpu engines

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 16, 2017 at 11:50:06AM +0530, sourab.gupta@xxxxxxxxx wrote:
> From: Sourab Gupta <sourab.gupta@xxxxxxxxx>
> 
> This patch extends the i915  perf framework to handle the perf sample
> collection for any given gpu engine. Particularly, the support
> for collecting timestamp sample type is added, which can be requested for
> any engine.
> With this, for RCS, timestamps and OA reports can be collected together,
> and provided to userspace in separate sample fields. For other engines,
> the capabilility to collect timestamps is added.
> 
> The thing to note is that, still only a single stream instance can be
> opened at any particular time. Though that stream may now be opened for any
> gpu engine, for collection of timestamp samples.
> 
> So, this patch doesn't add the support to open multiple concurrent streams,
> as yet. Though it lays the groundwork for this support to be added
> susequently. Part of this groundwork involves having separate command
> stream buffers, per engine, for holding the samples generated.
> Likewise for a few other data structures maintaining per-engine state.
> 
> Signed-off-by: Sourab Gupta <sourab.gupta@xxxxxxxxx>
> ---
> @@ -2519,15 +2546,14 @@ struct drm_i915_private {
>  
>  		spinlock_t hook_lock;
>  
> -		struct {
> -			struct i915_perf_stream *exclusive_stream;
> +		struct hrtimer poll_check_timer;
> +		struct i915_perf_stream *exclusive_stream;
> +		wait_queue_head_t poll_wq[I915_NUM_ENGINES];
> +		bool pollin[I915_NUM_ENGINES];

So what's the rationale for not storing these [NUM_ENGINES] on the
engines?
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux