From: Daniel Vetter <daniel@ffwll.ch>
To: "Guo, Yejun" <yejun.guo@intel.com>, Dave Airlie <airlied@gmail.com>
Cc: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH] drm/i915: Export the eLLC size from KMD via IOCTL
Date: Thu, 10 Oct 2013 09:08:00 +0200 [thread overview]
Message-ID: <20131010070800.GU8303@phenom.ffwll.local> (raw)
In-Reply-To: <854E8DBA9F41904AB047E03BB6963AE501973A60@SHSMSX101.ccr.corp.intel.com>
On Thu, Oct 10, 2013 at 03:11:40AM +0000, Guo, Yejun wrote:
> Hi Daniel,
>
> For example, the close source UMD driver also requires this information.
For upstream a userspace blob as consumer isn't good enough, Dave Airlie
has clearly established this precendence in a bunch of loud emails.
So I need something which is open-source as a consumer of this.
-Daniel
>
> Thanks for the reminder, please see the new patch below generated with git format-patch.
>
> From 6033637a040eeb8ae0f31bdbca8d9c988582f99d Mon Sep 17 00:00:00 2001
> From: GuoYejun <yejun.guo@intel.com>
> Date: Fri, 27 Sep 2013 16:26:18 +0800
> Subject: [PATCH] drm/i915: Export the eLLC size from KMD via IOCTL
>
> The usermode driver needs the eLLC information in order to
> make decisions which can result in significant performance improvements.
> Since all userspace drivers require this same information,
> it makes sense to store it in one globally accessible place, the kernel.
> ---
> drivers/gpu/drm/i915/i915_dma.c | 3 +++
> include/uapi/drm/i915_drm.h | 1 +
> 2 files changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
> index dd76d93..4ce36f4 100644
> --- a/drivers/gpu/drm/i915/i915_dma.c
> +++ b/drivers/gpu/drm/i915/i915_dma.c
> @@ -1003,6 +1003,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
> case I915_PARAM_HAS_EXEC_HANDLE_LUT:
> value = 1;
> break;
> + case I915_PARAM_ELLC_SIZE:
> + value = dev_priv->ellc_size;
> + break;
> default:
> DRM_DEBUG("Unknown parameter %d\n", param->param);
> return -EINVAL;
> diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
> index 3a4e97b..a0d4e00 100644
> --- a/include/uapi/drm/i915_drm.h
> +++ b/include/uapi/drm/i915_drm.h
> @@ -335,6 +335,7 @@ typedef struct drm_i915_irq_wait {
> #define I915_PARAM_HAS_EXEC_NO_RELOC 25
> #define I915_PARAM_HAS_EXEC_HANDLE_LUT 26
> #define I915_PARAM_HAS_WT 27
> +#define I915_PARAM_ELLC_SIZE 28
>
> typedef struct drm_i915_getparam {
> int param;
> --
> 1.7.9.5
>
>
> Thanks
> Yejun
>
> -----Original Message-----
> From: Daniel Vetter [mailto:daniel.vetter@ffwll.ch] On Behalf Of Daniel Vetter
> Sent: Wednesday, October 09, 2013 15:22
> To: Guo, Yejun
> Cc: intel-gfx@lists.freedesktop.org
> Subject: Re: [Intel-gfx] [PATCH] drm/i915: Export the eLLC size from KMD via IOCTL
>
> On Wed, Oct 09, 2013 at 12:06:06AM +0000, Guo, Yejun wrote:
> > commit 6033637a040eeb8ae0f31bdbca8d9c988582f99d
> > Author: GuoYejun <yejun.guo@intel.com<mailto:yejun.guo@intel.com>>
> > Date: Fri Sep 27 16:26:18 2013 +0800
> >
> > drm/i915: Export the eLLC size from KMD via IOCTL
> >
> > The usermode driver needs the eLLC information in order to
> > make decisions which can result in significant performance improvements.
> > Since all userspace drivers require this same information,
> > it makes sense to store it in one globally accessible place, the kernel.
>
> Do we have some examples of such userspace lying around?
>
> Also, your patch is missing the sob line and doesn't look like it's formatted with git format-patch.
>
> Cheers, Daniel
> >
> > diff --git a/drivers/gpu/drm/i915/i915_dma.c
> > b/drivers/gpu/drm/i915/i915_dma.c index dd76d93..4ce36f4 100644
> > --- a/drivers/gpu/drm/i915/i915_dma.c
> > +++ b/drivers/gpu/drm/i915/i915_dma.c
> > @@ -1003,6 +1003,9 @@ static int i915_getparam(struct drm_device *dev, void *data,
> > case I915_PARAM_HAS_EXEC_HANDLE_LUT:
> > value = 1;
> > break;
> > + case I915_PARAM_ELLC_SIZE:
> > + value = dev_priv->ellc_size;
> > + break;
> > default:
> > DRM_DEBUG("Unknown parameter %d\n", param->param);
> > return -EINVAL; diff --git
> > a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h index
> > 3a4e97b..a0d4e00 100644
> > --- a/include/uapi/drm/i915_drm.h
> > +++ b/include/uapi/drm/i915_drm.h
> > @@ -335,6 +335,7 @@ typedef struct drm_i915_irq_wait {
> > #define I915_PARAM_HAS_EXEC_NO_RELOC 25
> > #define I915_PARAM_HAS_EXEC_HANDLE_LUT 26
> > #define I915_PARAM_HAS_WT 27
> > +#define I915_PARAM_ELLC_SIZE 28
> >
> > typedef struct drm_i915_getparam {
> > int param;
> >
> >
> > Yejun
> > graphics software engineer
> > Tel: (+86) 021-6116-6181
> >
>
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
>
> --
> Daniel Vetter
> Software Engineer, Intel Corporation
> +41 (0) 79 365 57 48 - http://blog.ffwll.ch
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
prev parent reply other threads:[~2013-10-10 7:07 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-09 0:06 [PATCH] drm/i915: Export the eLLC size from KMD via IOCTL Guo, Yejun
2013-10-09 7:21 ` Daniel Vetter
2013-10-10 3:11 ` Guo, Yejun
2013-10-10 7:08 ` Daniel Vetter [this message]
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=20131010070800.GU8303@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=airlied@gmail.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=yejun.guo@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox