All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Rob Clark <robdclark@gmail.com>
Cc: dri-devel@lists.freedesktop.org,
	iommu@lists.linux-foundation.org, linux-arm-msm@vger.kernel.org,
	Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>,
	Will Deacon <will@kernel.org>,
	freedreno@lists.freedesktop.org,
	Sibi Sankar <sibis@codeaurora.org>,
	Vivek Gautam <vivek.gautam@codeaurora.org>,
	Stephen Boyd <swboyd@chromium.org>,
	Robin Murphy <robin.murphy@arm.com>,
	Joerg Roedel <joro@8bytes.org>,
	linux-arm-kernel@lists.infradead.org,
	Jordan Crouse <jcrouse@codeaurora.org>,
	Rob Clark <robdclark@chromium.org>, Sean Paul <sean@poorly.run>,
	David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>,
	open list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 11/19] drm/msm: Add a context pointer to the submitqueue
Date: Tue, 1 Sep 2020 00:05:00 -0500	[thread overview]
Message-ID: <20200901050500.GS3715@yoga> (raw)
In-Reply-To: <20200814024114.1177553-12-robdclark@gmail.com>

On Thu 13 Aug 21:41 CDT 2020, Rob Clark wrote:

> From: Jordan Crouse <jcrouse@codeaurora.org>
> 
> Each submitqueue is attached to a context. Add a pointer to the
> context to the submitqueue at create time and refcount it so
> that it stays around through the life of the queue.
> 

Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>


> Co-developed-by: Rob Clark <robdclark@chromium.org>
> Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
> Signed-off-by: Rob Clark <robdclark@chromium.org>
> ---
>  drivers/gpu/drm/msm/msm_drv.c         |  3 ++-
>  drivers/gpu/drm/msm/msm_drv.h         | 20 ++++++++++++++++++++
>  drivers/gpu/drm/msm/msm_gem.h         |  1 +
>  drivers/gpu/drm/msm/msm_gem_submit.c  |  6 +++---
>  drivers/gpu/drm/msm/msm_gpu.h         |  1 +
>  drivers/gpu/drm/msm/msm_submitqueue.c |  3 +++
>  6 files changed, 30 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index 7d641c7e3514..01845a3b8d52 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -594,6 +594,7 @@ static int context_init(struct drm_device *dev, struct drm_file *file)
>  	if (!ctx)
>  		return -ENOMEM;
>  
> +	kref_init(&ctx->ref);
>  	msm_submitqueue_init(dev, ctx);
>  
>  	ctx->aspace = priv->gpu ? priv->gpu->aspace : NULL;
> @@ -615,7 +616,7 @@ static int msm_open(struct drm_device *dev, struct drm_file *file)
>  static void context_close(struct msm_file_private *ctx)
>  {
>  	msm_submitqueue_close(ctx);
> -	kfree(ctx);
> +	msm_file_private_put(ctx);
>  }
>  
>  static void msm_postclose(struct drm_device *dev, struct drm_file *file)
> diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h
> index af259b0573ea..4561bfb5e745 100644
> --- a/drivers/gpu/drm/msm/msm_drv.h
> +++ b/drivers/gpu/drm/msm/msm_drv.h
> @@ -57,6 +57,7 @@ struct msm_file_private {
>  	struct list_head submitqueues;
>  	int queueid;
>  	struct msm_gem_address_space *aspace;
> +	struct kref ref;
>  };
>  
>  enum msm_mdp_plane_property {
> @@ -428,6 +429,25 @@ void msm_submitqueue_close(struct msm_file_private *ctx);
>  
>  void msm_submitqueue_destroy(struct kref *kref);
>  
> +static inline void __msm_file_private_destroy(struct kref *kref)
> +{
> +	struct msm_file_private *ctx = container_of(kref,
> +		struct msm_file_private, ref);
> +
> +	kfree(ctx);
> +}
> +
> +static inline void msm_file_private_put(struct msm_file_private *ctx)
> +{
> +	kref_put(&ctx->ref, __msm_file_private_destroy);
> +}
> +
> +static inline struct msm_file_private *msm_file_private_get(
> +	struct msm_file_private *ctx)
> +{
> +	kref_get(&ctx->ref);
> +	return ctx;
> +}
>  
>  #define DBG(fmt, ...) DRM_DEBUG_DRIVER(fmt"\n", ##__VA_ARGS__)
>  #define VERB(fmt, ...) if (0) DRM_DEBUG_DRIVER(fmt"\n", ##__VA_ARGS__)
> diff --git a/drivers/gpu/drm/msm/msm_gem.h b/drivers/gpu/drm/msm/msm_gem.h
> index 972490b14ba5..9c573c4269cb 100644
> --- a/drivers/gpu/drm/msm/msm_gem.h
> +++ b/drivers/gpu/drm/msm/msm_gem.h
> @@ -142,6 +142,7 @@ struct msm_gem_submit {
>  	bool valid;         /* true if no cmdstream patching needed */
>  	bool in_rb;         /* "sudo" mode, copy cmds into RB */
>  	struct msm_ringbuffer *ring;
> +	struct msm_file_private *ctx;
>  	unsigned int nr_cmds;
>  	unsigned int nr_bos;
>  	u32 ident;	   /* A "identifier" for the submit for logging */
> diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c
> index 8cb9aa15ff90..1464b04d25d3 100644
> --- a/drivers/gpu/drm/msm/msm_gem_submit.c
> +++ b/drivers/gpu/drm/msm/msm_gem_submit.c
> @@ -27,7 +27,7 @@
>  #define BO_PINNED   0x2000
>  
>  static struct msm_gem_submit *submit_create(struct drm_device *dev,
> -		struct msm_gpu *gpu, struct msm_gem_address_space *aspace,
> +		struct msm_gpu *gpu,
>  		struct msm_gpu_submitqueue *queue, uint32_t nr_bos,
>  		uint32_t nr_cmds)
>  {
> @@ -43,7 +43,7 @@ static struct msm_gem_submit *submit_create(struct drm_device *dev,
>  		return NULL;
>  
>  	submit->dev = dev;
> -	submit->aspace = aspace;
> +	submit->aspace = queue->ctx->aspace;
>  	submit->gpu = gpu;
>  	submit->fence = NULL;
>  	submit->cmd = (void *)&submit->bos[nr_bos];
> @@ -677,7 +677,7 @@ int msm_ioctl_gem_submit(struct drm_device *dev, void *data,
>  		}
>  	}
>  
> -	submit = submit_create(dev, gpu, ctx->aspace, queue, args->nr_bos,
> +	submit = submit_create(dev, gpu, queue, args->nr_bos,
>  		args->nr_cmds);
>  	if (!submit) {
>  		ret = -ENOMEM;
> diff --git a/drivers/gpu/drm/msm/msm_gpu.h b/drivers/gpu/drm/msm/msm_gpu.h
> index f91b141add75..97c527e98391 100644
> --- a/drivers/gpu/drm/msm/msm_gpu.h
> +++ b/drivers/gpu/drm/msm/msm_gpu.h
> @@ -190,6 +190,7 @@ struct msm_gpu_submitqueue {
>  	u32 flags;
>  	u32 prio;
>  	int faults;
> +	struct msm_file_private *ctx;
>  	struct list_head node;
>  	struct kref ref;
>  };
> diff --git a/drivers/gpu/drm/msm/msm_submitqueue.c b/drivers/gpu/drm/msm/msm_submitqueue.c
> index 90c9d84e6155..c3d206105d28 100644
> --- a/drivers/gpu/drm/msm/msm_submitqueue.c
> +++ b/drivers/gpu/drm/msm/msm_submitqueue.c
> @@ -12,6 +12,8 @@ void msm_submitqueue_destroy(struct kref *kref)
>  	struct msm_gpu_submitqueue *queue = container_of(kref,
>  		struct msm_gpu_submitqueue, ref);
>  
> +	msm_file_private_put(queue->ctx);
> +
>  	kfree(queue);
>  }
>  
> @@ -83,6 +85,7 @@ int msm_submitqueue_create(struct drm_device *drm, struct msm_file_private *ctx,
>  
>  	write_lock(&ctx->queuelock);
>  
> +	queue->ctx = msm_file_private_get(ctx);
>  	queue->id = ctx->queueid++;
>  
>  	if (id)
> -- 
> 2.26.2
> 

WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Rob Clark <robdclark@gmail.com>
Cc: Rob Clark <robdclark@chromium.org>,
	open list <linux-kernel@vger.kernel.org>,
	Daniel Vetter <daniel@ffwll.ch>, Will Deacon <will@kernel.org>,
	David Airlie <airlied@linux.ie>,
	linux-arm-msm@vger.kernel.org,
	Robin Murphy <robin.murphy@arm.com>,
	dri-devel@lists.freedesktop.org,
	Stephen Boyd <swboyd@chromium.org>, Sean Paul <sean@poorly.run>,
	iommu@lists.linux-foundation.org,
	Sibi Sankar <sibis@codeaurora.org>,
	Vivek Gautam <vivek.gautam@codeaurora.org>,
	freedreno@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 11/19] drm/msm: Add a context pointer to the submitqueue
Date: Tue, 1 Sep 2020 00:05:00 -0500	[thread overview]
Message-ID: <20200901050500.GS3715@yoga> (raw)
In-Reply-To: <20200814024114.1177553-12-robdclark@gmail.com>

On Thu 13 Aug 21:41 CDT 2020, Rob Clark wrote:

> From: Jordan Crouse <jcrouse@codeaurora.org>
> 
> Each submitqueue is attached to a context. Add a pointer to the
> context to the submitqueue at create time and refcount it so
> that it stays around through the life of the queue.
> 

Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>


> Co-developed-by: Rob Clark <robdclark@chromium.org>
> Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
> Signed-off-by: Rob Clark <robdclark@chromium.org>
> ---
>  drivers/gpu/drm/msm/msm_drv.c         |  3 ++-
>  drivers/gpu/drm/msm/msm_drv.h         | 20 ++++++++++++++++++++
>  drivers/gpu/drm/msm/msm_gem.h         |  1 +
>  drivers/gpu/drm/msm/msm_gem_submit.c  |  6 +++---
>  drivers/gpu/drm/msm/msm_gpu.h         |  1 +
>  drivers/gpu/drm/msm/msm_submitqueue.c |  3 +++
>  6 files changed, 30 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index 7d641c7e3514..01845a3b8d52 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -594,6 +594,7 @@ static int context_init(struct drm_device *dev, struct drm_file *file)
>  	if (!ctx)
>  		return -ENOMEM;
>  
> +	kref_init(&ctx->ref);
>  	msm_submitqueue_init(dev, ctx);
>  
>  	ctx->aspace = priv->gpu ? priv->gpu->aspace : NULL;
> @@ -615,7 +616,7 @@ static int msm_open(struct drm_device *dev, struct drm_file *file)
>  static void context_close(struct msm_file_private *ctx)
>  {
>  	msm_submitqueue_close(ctx);
> -	kfree(ctx);
> +	msm_file_private_put(ctx);
>  }
>  
>  static void msm_postclose(struct drm_device *dev, struct drm_file *file)
> diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h
> index af259b0573ea..4561bfb5e745 100644
> --- a/drivers/gpu/drm/msm/msm_drv.h
> +++ b/drivers/gpu/drm/msm/msm_drv.h
> @@ -57,6 +57,7 @@ struct msm_file_private {
>  	struct list_head submitqueues;
>  	int queueid;
>  	struct msm_gem_address_space *aspace;
> +	struct kref ref;
>  };
>  
>  enum msm_mdp_plane_property {
> @@ -428,6 +429,25 @@ void msm_submitqueue_close(struct msm_file_private *ctx);
>  
>  void msm_submitqueue_destroy(struct kref *kref);
>  
> +static inline void __msm_file_private_destroy(struct kref *kref)
> +{
> +	struct msm_file_private *ctx = container_of(kref,
> +		struct msm_file_private, ref);
> +
> +	kfree(ctx);
> +}
> +
> +static inline void msm_file_private_put(struct msm_file_private *ctx)
> +{
> +	kref_put(&ctx->ref, __msm_file_private_destroy);
> +}
> +
> +static inline struct msm_file_private *msm_file_private_get(
> +	struct msm_file_private *ctx)
> +{
> +	kref_get(&ctx->ref);
> +	return ctx;
> +}
>  
>  #define DBG(fmt, ...) DRM_DEBUG_DRIVER(fmt"\n", ##__VA_ARGS__)
>  #define VERB(fmt, ...) if (0) DRM_DEBUG_DRIVER(fmt"\n", ##__VA_ARGS__)
> diff --git a/drivers/gpu/drm/msm/msm_gem.h b/drivers/gpu/drm/msm/msm_gem.h
> index 972490b14ba5..9c573c4269cb 100644
> --- a/drivers/gpu/drm/msm/msm_gem.h
> +++ b/drivers/gpu/drm/msm/msm_gem.h
> @@ -142,6 +142,7 @@ struct msm_gem_submit {
>  	bool valid;         /* true if no cmdstream patching needed */
>  	bool in_rb;         /* "sudo" mode, copy cmds into RB */
>  	struct msm_ringbuffer *ring;
> +	struct msm_file_private *ctx;
>  	unsigned int nr_cmds;
>  	unsigned int nr_bos;
>  	u32 ident;	   /* A "identifier" for the submit for logging */
> diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c
> index 8cb9aa15ff90..1464b04d25d3 100644
> --- a/drivers/gpu/drm/msm/msm_gem_submit.c
> +++ b/drivers/gpu/drm/msm/msm_gem_submit.c
> @@ -27,7 +27,7 @@
>  #define BO_PINNED   0x2000
>  
>  static struct msm_gem_submit *submit_create(struct drm_device *dev,
> -		struct msm_gpu *gpu, struct msm_gem_address_space *aspace,
> +		struct msm_gpu *gpu,
>  		struct msm_gpu_submitqueue *queue, uint32_t nr_bos,
>  		uint32_t nr_cmds)
>  {
> @@ -43,7 +43,7 @@ static struct msm_gem_submit *submit_create(struct drm_device *dev,
>  		return NULL;
>  
>  	submit->dev = dev;
> -	submit->aspace = aspace;
> +	submit->aspace = queue->ctx->aspace;
>  	submit->gpu = gpu;
>  	submit->fence = NULL;
>  	submit->cmd = (void *)&submit->bos[nr_bos];
> @@ -677,7 +677,7 @@ int msm_ioctl_gem_submit(struct drm_device *dev, void *data,
>  		}
>  	}
>  
> -	submit = submit_create(dev, gpu, ctx->aspace, queue, args->nr_bos,
> +	submit = submit_create(dev, gpu, queue, args->nr_bos,
>  		args->nr_cmds);
>  	if (!submit) {
>  		ret = -ENOMEM;
> diff --git a/drivers/gpu/drm/msm/msm_gpu.h b/drivers/gpu/drm/msm/msm_gpu.h
> index f91b141add75..97c527e98391 100644
> --- a/drivers/gpu/drm/msm/msm_gpu.h
> +++ b/drivers/gpu/drm/msm/msm_gpu.h
> @@ -190,6 +190,7 @@ struct msm_gpu_submitqueue {
>  	u32 flags;
>  	u32 prio;
>  	int faults;
> +	struct msm_file_private *ctx;
>  	struct list_head node;
>  	struct kref ref;
>  };
> diff --git a/drivers/gpu/drm/msm/msm_submitqueue.c b/drivers/gpu/drm/msm/msm_submitqueue.c
> index 90c9d84e6155..c3d206105d28 100644
> --- a/drivers/gpu/drm/msm/msm_submitqueue.c
> +++ b/drivers/gpu/drm/msm/msm_submitqueue.c
> @@ -12,6 +12,8 @@ void msm_submitqueue_destroy(struct kref *kref)
>  	struct msm_gpu_submitqueue *queue = container_of(kref,
>  		struct msm_gpu_submitqueue, ref);
>  
> +	msm_file_private_put(queue->ctx);
> +
>  	kfree(queue);
>  }
>  
> @@ -83,6 +85,7 @@ int msm_submitqueue_create(struct drm_device *drm, struct msm_file_private *ctx,
>  
>  	write_lock(&ctx->queuelock);
>  
> +	queue->ctx = msm_file_private_get(ctx);
>  	queue->id = ctx->queueid++;
>  
>  	if (id)
> -- 
> 2.26.2
> 
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Rob Clark <robdclark@gmail.com>
Cc: Rob Clark <robdclark@chromium.org>,
	Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>,
	Jordan Crouse <jcrouse@codeaurora.org>,
	open list <linux-kernel@vger.kernel.org>,
	Daniel Vetter <daniel@ffwll.ch>, Will Deacon <will@kernel.org>,
	David Airlie <airlied@linux.ie>,
	linux-arm-msm@vger.kernel.org, Joerg Roedel <joro@8bytes.org>,
	Robin Murphy <robin.murphy@arm.com>,
	dri-devel@lists.freedesktop.org,
	Stephen Boyd <swboyd@chromium.org>, Sean Paul <sean@poorly.run>,
	iommu@lists.linux-foundation.org,
	Sibi Sankar <sibis@codeaurora.org>,
	Vivek Gautam <vivek.gautam@codeaurora.org>,
	freedreno@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 11/19] drm/msm: Add a context pointer to the submitqueue
Date: Tue, 1 Sep 2020 00:05:00 -0500	[thread overview]
Message-ID: <20200901050500.GS3715@yoga> (raw)
In-Reply-To: <20200814024114.1177553-12-robdclark@gmail.com>

On Thu 13 Aug 21:41 CDT 2020, Rob Clark wrote:

> From: Jordan Crouse <jcrouse@codeaurora.org>
> 
> Each submitqueue is attached to a context. Add a pointer to the
> context to the submitqueue at create time and refcount it so
> that it stays around through the life of the queue.
> 

Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>


> Co-developed-by: Rob Clark <robdclark@chromium.org>
> Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
> Signed-off-by: Rob Clark <robdclark@chromium.org>
> ---
>  drivers/gpu/drm/msm/msm_drv.c         |  3 ++-
>  drivers/gpu/drm/msm/msm_drv.h         | 20 ++++++++++++++++++++
>  drivers/gpu/drm/msm/msm_gem.h         |  1 +
>  drivers/gpu/drm/msm/msm_gem_submit.c  |  6 +++---
>  drivers/gpu/drm/msm/msm_gpu.h         |  1 +
>  drivers/gpu/drm/msm/msm_submitqueue.c |  3 +++
>  6 files changed, 30 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index 7d641c7e3514..01845a3b8d52 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -594,6 +594,7 @@ static int context_init(struct drm_device *dev, struct drm_file *file)
>  	if (!ctx)
>  		return -ENOMEM;
>  
> +	kref_init(&ctx->ref);
>  	msm_submitqueue_init(dev, ctx);
>  
>  	ctx->aspace = priv->gpu ? priv->gpu->aspace : NULL;
> @@ -615,7 +616,7 @@ static int msm_open(struct drm_device *dev, struct drm_file *file)
>  static void context_close(struct msm_file_private *ctx)
>  {
>  	msm_submitqueue_close(ctx);
> -	kfree(ctx);
> +	msm_file_private_put(ctx);
>  }
>  
>  static void msm_postclose(struct drm_device *dev, struct drm_file *file)
> diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h
> index af259b0573ea..4561bfb5e745 100644
> --- a/drivers/gpu/drm/msm/msm_drv.h
> +++ b/drivers/gpu/drm/msm/msm_drv.h
> @@ -57,6 +57,7 @@ struct msm_file_private {
>  	struct list_head submitqueues;
>  	int queueid;
>  	struct msm_gem_address_space *aspace;
> +	struct kref ref;
>  };
>  
>  enum msm_mdp_plane_property {
> @@ -428,6 +429,25 @@ void msm_submitqueue_close(struct msm_file_private *ctx);
>  
>  void msm_submitqueue_destroy(struct kref *kref);
>  
> +static inline void __msm_file_private_destroy(struct kref *kref)
> +{
> +	struct msm_file_private *ctx = container_of(kref,
> +		struct msm_file_private, ref);
> +
> +	kfree(ctx);
> +}
> +
> +static inline void msm_file_private_put(struct msm_file_private *ctx)
> +{
> +	kref_put(&ctx->ref, __msm_file_private_destroy);
> +}
> +
> +static inline struct msm_file_private *msm_file_private_get(
> +	struct msm_file_private *ctx)
> +{
> +	kref_get(&ctx->ref);
> +	return ctx;
> +}
>  
>  #define DBG(fmt, ...) DRM_DEBUG_DRIVER(fmt"\n", ##__VA_ARGS__)
>  #define VERB(fmt, ...) if (0) DRM_DEBUG_DRIVER(fmt"\n", ##__VA_ARGS__)
> diff --git a/drivers/gpu/drm/msm/msm_gem.h b/drivers/gpu/drm/msm/msm_gem.h
> index 972490b14ba5..9c573c4269cb 100644
> --- a/drivers/gpu/drm/msm/msm_gem.h
> +++ b/drivers/gpu/drm/msm/msm_gem.h
> @@ -142,6 +142,7 @@ struct msm_gem_submit {
>  	bool valid;         /* true if no cmdstream patching needed */
>  	bool in_rb;         /* "sudo" mode, copy cmds into RB */
>  	struct msm_ringbuffer *ring;
> +	struct msm_file_private *ctx;
>  	unsigned int nr_cmds;
>  	unsigned int nr_bos;
>  	u32 ident;	   /* A "identifier" for the submit for logging */
> diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c
> index 8cb9aa15ff90..1464b04d25d3 100644
> --- a/drivers/gpu/drm/msm/msm_gem_submit.c
> +++ b/drivers/gpu/drm/msm/msm_gem_submit.c
> @@ -27,7 +27,7 @@
>  #define BO_PINNED   0x2000
>  
>  static struct msm_gem_submit *submit_create(struct drm_device *dev,
> -		struct msm_gpu *gpu, struct msm_gem_address_space *aspace,
> +		struct msm_gpu *gpu,
>  		struct msm_gpu_submitqueue *queue, uint32_t nr_bos,
>  		uint32_t nr_cmds)
>  {
> @@ -43,7 +43,7 @@ static struct msm_gem_submit *submit_create(struct drm_device *dev,
>  		return NULL;
>  
>  	submit->dev = dev;
> -	submit->aspace = aspace;
> +	submit->aspace = queue->ctx->aspace;
>  	submit->gpu = gpu;
>  	submit->fence = NULL;
>  	submit->cmd = (void *)&submit->bos[nr_bos];
> @@ -677,7 +677,7 @@ int msm_ioctl_gem_submit(struct drm_device *dev, void *data,
>  		}
>  	}
>  
> -	submit = submit_create(dev, gpu, ctx->aspace, queue, args->nr_bos,
> +	submit = submit_create(dev, gpu, queue, args->nr_bos,
>  		args->nr_cmds);
>  	if (!submit) {
>  		ret = -ENOMEM;
> diff --git a/drivers/gpu/drm/msm/msm_gpu.h b/drivers/gpu/drm/msm/msm_gpu.h
> index f91b141add75..97c527e98391 100644
> --- a/drivers/gpu/drm/msm/msm_gpu.h
> +++ b/drivers/gpu/drm/msm/msm_gpu.h
> @@ -190,6 +190,7 @@ struct msm_gpu_submitqueue {
>  	u32 flags;
>  	u32 prio;
>  	int faults;
> +	struct msm_file_private *ctx;
>  	struct list_head node;
>  	struct kref ref;
>  };
> diff --git a/drivers/gpu/drm/msm/msm_submitqueue.c b/drivers/gpu/drm/msm/msm_submitqueue.c
> index 90c9d84e6155..c3d206105d28 100644
> --- a/drivers/gpu/drm/msm/msm_submitqueue.c
> +++ b/drivers/gpu/drm/msm/msm_submitqueue.c
> @@ -12,6 +12,8 @@ void msm_submitqueue_destroy(struct kref *kref)
>  	struct msm_gpu_submitqueue *queue = container_of(kref,
>  		struct msm_gpu_submitqueue, ref);
>  
> +	msm_file_private_put(queue->ctx);
> +
>  	kfree(queue);
>  }
>  
> @@ -83,6 +85,7 @@ int msm_submitqueue_create(struct drm_device *drm, struct msm_file_private *ctx,
>  
>  	write_lock(&ctx->queuelock);
>  
> +	queue->ctx = msm_file_private_get(ctx);
>  	queue->id = ctx->queueid++;
>  
>  	if (id)
> -- 
> 2.26.2
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Rob Clark <robdclark@gmail.com>
Cc: Rob Clark <robdclark@chromium.org>,
	Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>,
	open list <linux-kernel@vger.kernel.org>,
	Will Deacon <will@kernel.org>, David Airlie <airlied@linux.ie>,
	linux-arm-msm@vger.kernel.org, Joerg Roedel <joro@8bytes.org>,
	Robin Murphy <robin.murphy@arm.com>,
	dri-devel@lists.freedesktop.org,
	Stephen Boyd <swboyd@chromium.org>, Sean Paul <sean@poorly.run>,
	iommu@lists.linux-foundation.org,
	Sibi Sankar <sibis@codeaurora.org>,
	Vivek Gautam <vivek.gautam@codeaurora.org>,
	freedreno@lists.freedesktop.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 11/19] drm/msm: Add a context pointer to the submitqueue
Date: Tue, 1 Sep 2020 00:05:00 -0500	[thread overview]
Message-ID: <20200901050500.GS3715@yoga> (raw)
In-Reply-To: <20200814024114.1177553-12-robdclark@gmail.com>

On Thu 13 Aug 21:41 CDT 2020, Rob Clark wrote:

> From: Jordan Crouse <jcrouse@codeaurora.org>
> 
> Each submitqueue is attached to a context. Add a pointer to the
> context to the submitqueue at create time and refcount it so
> that it stays around through the life of the queue.
> 

Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>


> Co-developed-by: Rob Clark <robdclark@chromium.org>
> Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
> Signed-off-by: Rob Clark <robdclark@chromium.org>
> ---
>  drivers/gpu/drm/msm/msm_drv.c         |  3 ++-
>  drivers/gpu/drm/msm/msm_drv.h         | 20 ++++++++++++++++++++
>  drivers/gpu/drm/msm/msm_gem.h         |  1 +
>  drivers/gpu/drm/msm/msm_gem_submit.c  |  6 +++---
>  drivers/gpu/drm/msm/msm_gpu.h         |  1 +
>  drivers/gpu/drm/msm/msm_submitqueue.c |  3 +++
>  6 files changed, 30 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index 7d641c7e3514..01845a3b8d52 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -594,6 +594,7 @@ static int context_init(struct drm_device *dev, struct drm_file *file)
>  	if (!ctx)
>  		return -ENOMEM;
>  
> +	kref_init(&ctx->ref);
>  	msm_submitqueue_init(dev, ctx);
>  
>  	ctx->aspace = priv->gpu ? priv->gpu->aspace : NULL;
> @@ -615,7 +616,7 @@ static int msm_open(struct drm_device *dev, struct drm_file *file)
>  static void context_close(struct msm_file_private *ctx)
>  {
>  	msm_submitqueue_close(ctx);
> -	kfree(ctx);
> +	msm_file_private_put(ctx);
>  }
>  
>  static void msm_postclose(struct drm_device *dev, struct drm_file *file)
> diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h
> index af259b0573ea..4561bfb5e745 100644
> --- a/drivers/gpu/drm/msm/msm_drv.h
> +++ b/drivers/gpu/drm/msm/msm_drv.h
> @@ -57,6 +57,7 @@ struct msm_file_private {
>  	struct list_head submitqueues;
>  	int queueid;
>  	struct msm_gem_address_space *aspace;
> +	struct kref ref;
>  };
>  
>  enum msm_mdp_plane_property {
> @@ -428,6 +429,25 @@ void msm_submitqueue_close(struct msm_file_private *ctx);
>  
>  void msm_submitqueue_destroy(struct kref *kref);
>  
> +static inline void __msm_file_private_destroy(struct kref *kref)
> +{
> +	struct msm_file_private *ctx = container_of(kref,
> +		struct msm_file_private, ref);
> +
> +	kfree(ctx);
> +}
> +
> +static inline void msm_file_private_put(struct msm_file_private *ctx)
> +{
> +	kref_put(&ctx->ref, __msm_file_private_destroy);
> +}
> +
> +static inline struct msm_file_private *msm_file_private_get(
> +	struct msm_file_private *ctx)
> +{
> +	kref_get(&ctx->ref);
> +	return ctx;
> +}
>  
>  #define DBG(fmt, ...) DRM_DEBUG_DRIVER(fmt"\n", ##__VA_ARGS__)
>  #define VERB(fmt, ...) if (0) DRM_DEBUG_DRIVER(fmt"\n", ##__VA_ARGS__)
> diff --git a/drivers/gpu/drm/msm/msm_gem.h b/drivers/gpu/drm/msm/msm_gem.h
> index 972490b14ba5..9c573c4269cb 100644
> --- a/drivers/gpu/drm/msm/msm_gem.h
> +++ b/drivers/gpu/drm/msm/msm_gem.h
> @@ -142,6 +142,7 @@ struct msm_gem_submit {
>  	bool valid;         /* true if no cmdstream patching needed */
>  	bool in_rb;         /* "sudo" mode, copy cmds into RB */
>  	struct msm_ringbuffer *ring;
> +	struct msm_file_private *ctx;
>  	unsigned int nr_cmds;
>  	unsigned int nr_bos;
>  	u32 ident;	   /* A "identifier" for the submit for logging */
> diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c
> index 8cb9aa15ff90..1464b04d25d3 100644
> --- a/drivers/gpu/drm/msm/msm_gem_submit.c
> +++ b/drivers/gpu/drm/msm/msm_gem_submit.c
> @@ -27,7 +27,7 @@
>  #define BO_PINNED   0x2000
>  
>  static struct msm_gem_submit *submit_create(struct drm_device *dev,
> -		struct msm_gpu *gpu, struct msm_gem_address_space *aspace,
> +		struct msm_gpu *gpu,
>  		struct msm_gpu_submitqueue *queue, uint32_t nr_bos,
>  		uint32_t nr_cmds)
>  {
> @@ -43,7 +43,7 @@ static struct msm_gem_submit *submit_create(struct drm_device *dev,
>  		return NULL;
>  
>  	submit->dev = dev;
> -	submit->aspace = aspace;
> +	submit->aspace = queue->ctx->aspace;
>  	submit->gpu = gpu;
>  	submit->fence = NULL;
>  	submit->cmd = (void *)&submit->bos[nr_bos];
> @@ -677,7 +677,7 @@ int msm_ioctl_gem_submit(struct drm_device *dev, void *data,
>  		}
>  	}
>  
> -	submit = submit_create(dev, gpu, ctx->aspace, queue, args->nr_bos,
> +	submit = submit_create(dev, gpu, queue, args->nr_bos,
>  		args->nr_cmds);
>  	if (!submit) {
>  		ret = -ENOMEM;
> diff --git a/drivers/gpu/drm/msm/msm_gpu.h b/drivers/gpu/drm/msm/msm_gpu.h
> index f91b141add75..97c527e98391 100644
> --- a/drivers/gpu/drm/msm/msm_gpu.h
> +++ b/drivers/gpu/drm/msm/msm_gpu.h
> @@ -190,6 +190,7 @@ struct msm_gpu_submitqueue {
>  	u32 flags;
>  	u32 prio;
>  	int faults;
> +	struct msm_file_private *ctx;
>  	struct list_head node;
>  	struct kref ref;
>  };
> diff --git a/drivers/gpu/drm/msm/msm_submitqueue.c b/drivers/gpu/drm/msm/msm_submitqueue.c
> index 90c9d84e6155..c3d206105d28 100644
> --- a/drivers/gpu/drm/msm/msm_submitqueue.c
> +++ b/drivers/gpu/drm/msm/msm_submitqueue.c
> @@ -12,6 +12,8 @@ void msm_submitqueue_destroy(struct kref *kref)
>  	struct msm_gpu_submitqueue *queue = container_of(kref,
>  		struct msm_gpu_submitqueue, ref);
>  
> +	msm_file_private_put(queue->ctx);
> +
>  	kfree(queue);
>  }
>  
> @@ -83,6 +85,7 @@ int msm_submitqueue_create(struct drm_device *drm, struct msm_file_private *ctx,
>  
>  	write_lock(&ctx->queuelock);
>  
> +	queue->ctx = msm_file_private_get(ctx);
>  	queue->id = ctx->queueid++;
>  
>  	if (id)
> -- 
> 2.26.2
> 
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2020-09-01  5:05 UTC|newest]

Thread overview: 264+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-10 22:26 [PATCH v12 00/13] iommu/arm-smmu: Add Adreno SMMU specific implementation Jordan Crouse
2020-08-10 22:26 ` Jordan Crouse
2020-08-10 22:26 ` Jordan Crouse
2020-08-10 22:26 ` Jordan Crouse
2020-08-10 22:26 ` [PATCH v12 01/13] iommu/arm-smmu: Pass io-pgtable config to implementation specific function Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26 ` [PATCH v12 02/13] iommu/arm-smmu: Add support for split pagetables Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26 ` [PATCH v12 03/13] iommu/arm-smmu: Prepare for the adreno-smmu implementation Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26 ` [PATCH v12 04/13] iommu: Add a domain attribute to get/set a pagetable configuration Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-13 13:14   ` Will Deacon
2020-08-13 13:14     ` Will Deacon
2020-08-13 15:11     ` [Freedreno] " Rob Clark
2020-08-13 15:11       ` Rob Clark
2020-08-13 15:19       ` Will Deacon
2020-08-13 15:19         ` Will Deacon
2020-08-13 16:28         ` Rob Clark
2020-08-13 16:28           ` Rob Clark
2020-08-10 22:26 ` [PATCH v12 05/13] iommu/arm-smmu-qcom: Add implementation for the adreno GPU SMMU Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-13 13:23   ` Will Deacon
2020-08-13 13:23     ` Will Deacon
2020-08-13 13:23     ` Will Deacon
2020-08-10 22:26 ` [PATCH v12 06/13] dt-bindings: arm-smmu: Add compatible string for Adreno " Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26 ` [PATCH v12 07/13] drm/msm: Add a context pointer to the submitqueue Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-13 16:17   ` [Freedreno] " Rob Clark
2020-08-13 16:17     ` Rob Clark
2020-08-13 16:17     ` Rob Clark
2020-08-13 17:04   ` Rob Clark
2020-08-13 17:04     ` Rob Clark
2020-08-13 17:04     ` Rob Clark
2020-08-10 22:26 ` [PATCH v12 08/13] drm/msm: Set the global virtual address range from the IOMMU domain Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26 ` [PATCH v12 09/13] drm/msm: Add support to create a local pagetable Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-23 23:05   ` Guenter Roeck
2020-08-23 23:05     ` Guenter Roeck
2020-08-23 23:05     ` Guenter Roeck
2020-08-10 22:26 ` [PATCH v12 10/13] drm/msm: Add support for private address space instances Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26 ` [PATCH v12 11/13] drm/msm/a6xx: Add support for per-instance pagetables Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26 ` [PATCH v12 12/13] arm: dts: qcom: sm845: Set the compatible string for the GPU SMMU Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26 ` [RFC v12 13/13] iommu/arm-smmu: Add a init_context_bank implementation hook Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-10 22:26   ` Jordan Crouse
2020-08-13 13:03   ` Will Deacon
2020-08-13 13:03     ` Will Deacon
2020-08-13 13:03     ` Will Deacon
2020-08-13 13:19 ` [PATCH v12 00/13] iommu/arm-smmu: Add Adreno SMMU specific implementation Will Deacon
2020-08-13 13:19   ` Will Deacon
2020-08-13 13:19   ` Will Deacon
2020-08-13 13:19   ` Will Deacon
2020-08-14  2:40 ` [PATCH 00/19] iommu/arm-smmu + drm/msm: per-process GPU pgtables Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-17 16:51   ` Jordan Crouse
2020-08-17 16:51     ` Jordan Crouse
2020-08-17 16:51     ` Jordan Crouse
2020-08-17 16:51     ` Jordan Crouse
2020-08-14  2:40 ` [PATCH 01/19] drm/msm: remove dangling submitqueue references Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-17 16:51   ` Jordan Crouse
2020-08-17 16:51     ` Jordan Crouse
2020-08-17 16:51     ` Jordan Crouse
2020-08-17 16:51     ` Jordan Crouse
2020-09-01  2:35   ` Bjorn Andersson
2020-09-01  2:35     ` Bjorn Andersson
2020-09-01  2:35     ` Bjorn Andersson
2020-09-01  2:35     ` Bjorn Andersson
2020-09-01  3:42     ` Rob Clark
2020-09-01  3:42       ` Rob Clark
2020-09-01  3:42       ` Rob Clark
2020-09-01  3:42       ` Rob Clark
2020-09-01  5:42       ` Bjorn Andersson
2020-09-01  5:42         ` Bjorn Andersson
2020-09-01  5:42         ` Bjorn Andersson
2020-09-01  5:42         ` Bjorn Andersson
2020-09-01  5:42   ` Bjorn Andersson
2020-09-01  5:42     ` Bjorn Andersson
2020-09-01  5:42     ` Bjorn Andersson
2020-09-01  5:42     ` Bjorn Andersson
2020-08-14  2:40 ` [PATCH 02/19] iommu/arm-smmu: Pass io-pgtable config to implementation specific function Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-09-01  3:36   ` Bjorn Andersson
2020-09-01  3:36     ` Bjorn Andersson
2020-09-01  3:36     ` Bjorn Andersson
2020-09-01  3:36     ` Bjorn Andersson
2020-08-14  2:40 ` [PATCH 03/19] iommu/arm-smmu: Add support for split pagetables Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-09-01  3:41   ` Bjorn Andersson
2020-09-01  3:41     ` Bjorn Andersson
2020-09-01  3:41     ` Bjorn Andersson
2020-09-01  3:41     ` Bjorn Andersson
2020-08-14  2:40 ` [PATCH 04/19] iommu/arm-smmu: Prepare for the adreno-smmu implementation Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:40   ` Rob Clark
2020-08-14  2:41 ` [PATCH 05/19] iommu: add private interface for adreno-smmu Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-17 16:52   ` [Freedreno] " Jordan Crouse
2020-08-17 16:52     ` Jordan Crouse
2020-08-17 16:52     ` Jordan Crouse
2020-08-17 16:52     ` Jordan Crouse
2020-09-01  3:52   ` Bjorn Andersson
2020-09-01  3:52     ` Bjorn Andersson
2020-09-01  3:52     ` Bjorn Andersson
2020-09-01  3:52     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 06/19] drm/msm/gpu: add dev_to_gpu() helper Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-17 16:53   ` [Freedreno] " Jordan Crouse
2020-08-17 16:53     ` Jordan Crouse
2020-08-17 16:53     ` Jordan Crouse
2020-08-17 16:53     ` Jordan Crouse
2020-09-01  4:32   ` Bjorn Andersson
2020-09-01  4:32     ` Bjorn Andersson
2020-09-01  4:32     ` Bjorn Andersson
2020-09-01  4:32     ` Bjorn Andersson
2020-09-01 15:53     ` Rob Clark
2020-09-01 15:53       ` Rob Clark
2020-09-01 15:53       ` Rob Clark
2020-09-01 15:53       ` Rob Clark
2020-08-14  2:41 ` [PATCH 07/19] drm/msm: set adreno_smmu as gpu's drvdata Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-17 16:55   ` Jordan Crouse
2020-08-17 16:55     ` Jordan Crouse
2020-08-17 16:55     ` Jordan Crouse
2020-08-17 16:55     ` Jordan Crouse
2020-09-01  4:58   ` Bjorn Andersson
2020-09-01  4:58     ` Bjorn Andersson
2020-09-01  4:58     ` Bjorn Andersson
2020-09-01  4:58     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 08/19] iommu/arm-smmu: constify some helpers Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  4:56   ` Bjorn Andersson
2020-09-01  4:56     ` Bjorn Andersson
2020-09-01  4:56     ` Bjorn Andersson
2020-09-01  4:56     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 09/19] iommu/arm-smmu-qcom: Add implementation for the adreno GPU SMMU Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  5:00   ` Bjorn Andersson
2020-09-01  5:00     ` Bjorn Andersson
2020-09-01  5:00     ` Bjorn Andersson
2020-09-01  5:00     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 10/19] dt-bindings: arm-smmu: Add compatible string for Adreno " Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  5:00   ` Bjorn Andersson
2020-09-01  5:00     ` Bjorn Andersson
2020-09-01  5:00     ` Bjorn Andersson
2020-09-01  5:00     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 11/19] drm/msm: Add a context pointer to the submitqueue Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  5:05   ` Bjorn Andersson [this message]
2020-09-01  5:05     ` Bjorn Andersson
2020-09-01  5:05     ` Bjorn Andersson
2020-09-01  5:05     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 12/19] drm/msm: Drop context arg to gpu->submit() Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  5:06   ` Bjorn Andersson
2020-09-01  5:06     ` Bjorn Andersson
2020-09-01  5:06     ` Bjorn Andersson
2020-09-01  5:06     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 13/19] drm/msm: Set the global virtual address range from the IOMMU domain Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  5:23   ` Bjorn Andersson
2020-09-01  5:23     ` Bjorn Andersson
2020-09-01  5:23     ` Bjorn Andersson
2020-09-01  5:23     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 14/19] drm/msm: Add support to create a local pagetable Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  5:28   ` Bjorn Andersson
2020-09-01  5:28     ` Bjorn Andersson
2020-09-01  5:28     ` Bjorn Andersson
2020-09-01  5:28     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 15/19] drm/msm: Add support for private address space instances Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  5:30   ` Bjorn Andersson
2020-09-01  5:30     ` Bjorn Andersson
2020-09-01  5:30     ` Bjorn Andersson
2020-09-01  5:30     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 16/19] drm/msm/a6xx: Add support for per-instance pagetables Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-17 15:40   ` Akhil P Oommen
2020-08-17 15:40     ` Akhil P Oommen
2020-08-17 15:40     ` Akhil P Oommen
2020-08-17 15:40     ` Akhil P Oommen
2020-08-17 15:51     ` Rob Clark
2020-08-17 15:51       ` Rob Clark
2020-08-17 15:51       ` Rob Clark
2020-08-17 15:51       ` Rob Clark
2020-08-17 16:47     ` Jordan Crouse
2020-08-17 16:47       ` Jordan Crouse
2020-08-17 16:47       ` Jordan Crouse
2020-08-17 16:47       ` Jordan Crouse
2020-08-14  2:41 ` [PATCH 17/19] arm: dts: qcom: sm845: Set the compatible string for the GPU SMMU Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41 ` [PATCH 18/19] iommu/arm-smmu: add a way for implementations to influence SCTLR Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-09-01  5:31   ` Bjorn Andersson
2020-09-01  5:31     ` Bjorn Andersson
2020-09-01  5:31     ` Bjorn Andersson
2020-09-01  5:31     ` Bjorn Andersson
2020-08-14  2:41 ` [PATCH 19/19] drm/msm: show process names in gem_describe Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-14  2:41   ` Rob Clark
2020-08-17 17:14   ` [Freedreno] " Jordan Crouse
2020-08-17 17:14     ` Jordan Crouse
2020-08-17 17:14     ` Jordan Crouse
2020-08-17 17:14     ` Jordan Crouse
2020-09-01  5:35   ` Bjorn Andersson
2020-09-01  5:35     ` Bjorn Andersson
2020-09-01  5:35     ` Bjorn Andersson
2020-09-01  5:35     ` Bjorn Andersson

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=20200901050500.GS3715@yoga \
    --to=bjorn.andersson@linaro.org \
    --cc=airlied@linux.ie \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=jcrouse@codeaurora.org \
    --cc=joro@8bytes.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robdclark@chromium.org \
    --cc=robdclark@gmail.com \
    --cc=robin.murphy@arm.com \
    --cc=saiprakash.ranjan@codeaurora.org \
    --cc=sean@poorly.run \
    --cc=sibis@codeaurora.org \
    --cc=swboyd@chromium.org \
    --cc=vivek.gautam@codeaurora.org \
    --cc=will@kernel.org \
    /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 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.