Re: [Intel-gfx] [PATCH 09/15] drm/i915/guc: Move check for fast memcpy_wc to relay creation
Quoting Michał Winiarski (2018-02-27 15:37:04) > On Tue, Feb 27, 2018 at 03:37:25PM +0100, Michal Wajdeczko wrote: > > On Tue, 27 Feb 2018 13:52:24 +0100, Michał Winiarski > >wrote: > > > > > We only need those fast memcpy_wc when we're using relay to read > > > continuous GuC log. Let's prevent the user from creating a relay if we > > > know we won't be able to keep up with GuC. > > > > > > Signed-off-by: Michał Winiarski > > > Cc: Chris Wilson > > > Cc: Daniele Ceraolo Spurio > > > Cc: Sagar Arun Kamble > > > Cc: Michal Wajdeczko > > > --- > > > drivers/gpu/drm/i915/intel_guc_log.c | 20 ++-- > > > 1 file changed, 10 insertions(+), 10 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/i915/intel_guc_log.c > > > b/drivers/gpu/drm/i915/intel_guc_log.c > > > index 4dee65692f5f..d2aca10ab986 100644 > > > --- a/drivers/gpu/drm/i915/intel_guc_log.c > > > +++ b/drivers/gpu/drm/i915/intel_guc_log.c > > > @@ -452,16 +452,6 @@ int intel_guc_log_create(struct intel_guc *guc) > > > GEM_BUG_ON(guc->log.vma); > > > - /* > > > -* We require SSE 4.1 for fast reads from the GuC log buffer and > > > -* it should be present on the chipsets supporting GuC based > > > -* submisssions. > > > -*/ > > > - if (WARN_ON(!i915_has_memcpy_from_wc())) { > > > - ret = -EINVAL; > > > - goto err; > > > - } > > > - > > > vma = intel_guc_allocate_vma(guc, GUC_LOG_SIZE); > > > if (IS_ERR(vma)) { > > > ret = PTR_ERR(vma); > > > @@ -568,6 +558,16 @@ int intel_guc_log_relay_open(struct intel_guc *guc) > > > goto out_unlock; > > > } > > > + /* > > > +* We require SSE 4.1 for fast reads from the GuC log buffer and > > > +* it should be present on the chipsets supporting GuC based > > > +* submisssions. > > > +*/ > > > + if (!i915_has_memcpy_from_wc()) { > > > + ret = -EINVAL; > > > > hmm, maybe -ENODEV as this is not user fault > > ENODEV means that we're not using GuC. > -ENXIO? Do we respond to the error at all? It should just result in the relay not being available, right? (i.e. are we just discussing the color of the bikeshed :) -Chris ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH 09/15] drm/i915/guc: Move check for fast memcpy_wc to relay creation
On 2/27/2018 6:22 PM, Michał Winiarski wrote: We only need those fast memcpy_wc when we're using relay to read continuous GuC log. Let's prevent the user from creating a relay if we know we won't be able to keep up with GuC. Signed-off-by: Michał WiniarskiCc: Chris Wilson Cc: Daniele Ceraolo Spurio Cc: Sagar Arun Kamble Cc: Michal Wajdeczko Reviewed-by: Sagar Arun Kamble --- drivers/gpu/drm/i915/intel_guc_log.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_guc_log.c b/drivers/gpu/drm/i915/intel_guc_log.c index 4dee65692f5f..d2aca10ab986 100644 --- a/drivers/gpu/drm/i915/intel_guc_log.c +++ b/drivers/gpu/drm/i915/intel_guc_log.c @@ -452,16 +452,6 @@ int intel_guc_log_create(struct intel_guc *guc) GEM_BUG_ON(guc->log.vma); - /* -* We require SSE 4.1 for fast reads from the GuC log buffer and -* it should be present on the chipsets supporting GuC based -* submisssions. -*/ - if (WARN_ON(!i915_has_memcpy_from_wc())) { - ret = -EINVAL; - goto err; - } - vma = intel_guc_allocate_vma(guc, GUC_LOG_SIZE); if (IS_ERR(vma)) { ret = PTR_ERR(vma); @@ -568,6 +558,16 @@ int intel_guc_log_relay_open(struct intel_guc *guc) goto out_unlock; } + /* +* We require SSE 4.1 for fast reads from the GuC log buffer and +* it should be present on the chipsets supporting GuC based +* submisssions. +*/ + if (!i915_has_memcpy_from_wc()) { + ret = -EINVAL; + goto out_unlock; + } + ret = guc_log_relay_create(guc); if (ret) goto out_unlock; -- Thanks, Sagar ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH 09/15] drm/i915/guc: Move check for fast memcpy_wc to relay creation
On Tue, Feb 27, 2018 at 03:37:25PM +0100, Michal Wajdeczko wrote: > On Tue, 27 Feb 2018 13:52:24 +0100, Michał Winiarski >wrote: > > > We only need those fast memcpy_wc when we're using relay to read > > continuous GuC log. Let's prevent the user from creating a relay if we > > know we won't be able to keep up with GuC. > > > > Signed-off-by: Michał Winiarski > > Cc: Chris Wilson > > Cc: Daniele Ceraolo Spurio > > Cc: Sagar Arun Kamble > > Cc: Michal Wajdeczko > > --- > > drivers/gpu/drm/i915/intel_guc_log.c | 20 ++-- > > 1 file changed, 10 insertions(+), 10 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/intel_guc_log.c > > b/drivers/gpu/drm/i915/intel_guc_log.c > > index 4dee65692f5f..d2aca10ab986 100644 > > --- a/drivers/gpu/drm/i915/intel_guc_log.c > > +++ b/drivers/gpu/drm/i915/intel_guc_log.c > > @@ -452,16 +452,6 @@ int intel_guc_log_create(struct intel_guc *guc) > > GEM_BUG_ON(guc->log.vma); > > - /* > > -* We require SSE 4.1 for fast reads from the GuC log buffer and > > -* it should be present on the chipsets supporting GuC based > > -* submisssions. > > -*/ > > - if (WARN_ON(!i915_has_memcpy_from_wc())) { > > - ret = -EINVAL; > > - goto err; > > - } > > - > > vma = intel_guc_allocate_vma(guc, GUC_LOG_SIZE); > > if (IS_ERR(vma)) { > > ret = PTR_ERR(vma); > > @@ -568,6 +558,16 @@ int intel_guc_log_relay_open(struct intel_guc *guc) > > goto out_unlock; > > } > > + /* > > +* We require SSE 4.1 for fast reads from the GuC log buffer and > > +* it should be present on the chipsets supporting GuC based > > +* submisssions. > > +*/ > > + if (!i915_has_memcpy_from_wc()) { > > + ret = -EINVAL; > > hmm, maybe -ENODEV as this is not user fault ENODEV means that we're not using GuC. -ENXIO? -Michał > > > + goto out_unlock; > > + } > > + > > ret = guc_log_relay_create(guc); > > if (ret) > > goto out_unlock; ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Re: [Intel-gfx] [PATCH 09/15] drm/i915/guc: Move check for fast memcpy_wc to relay creation
On Tue, 27 Feb 2018 13:52:24 +0100, Michał Winiarskiwrote: We only need those fast memcpy_wc when we're using relay to read continuous GuC log. Let's prevent the user from creating a relay if we know we won't be able to keep up with GuC. Signed-off-by: Michał Winiarski Cc: Chris Wilson Cc: Daniele Ceraolo Spurio Cc: Sagar Arun Kamble Cc: Michal Wajdeczko --- drivers/gpu/drm/i915/intel_guc_log.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_guc_log.c b/drivers/gpu/drm/i915/intel_guc_log.c index 4dee65692f5f..d2aca10ab986 100644 --- a/drivers/gpu/drm/i915/intel_guc_log.c +++ b/drivers/gpu/drm/i915/intel_guc_log.c @@ -452,16 +452,6 @@ int intel_guc_log_create(struct intel_guc *guc) GEM_BUG_ON(guc->log.vma); - /* -* We require SSE 4.1 for fast reads from the GuC log buffer and -* it should be present on the chipsets supporting GuC based -* submisssions. -*/ - if (WARN_ON(!i915_has_memcpy_from_wc())) { - ret = -EINVAL; - goto err; - } - vma = intel_guc_allocate_vma(guc, GUC_LOG_SIZE); if (IS_ERR(vma)) { ret = PTR_ERR(vma); @@ -568,6 +558,16 @@ int intel_guc_log_relay_open(struct intel_guc *guc) goto out_unlock; } + /* +* We require SSE 4.1 for fast reads from the GuC log buffer and +* it should be present on the chipsets supporting GuC based +* submisssions. +*/ + if (!i915_has_memcpy_from_wc()) { + ret = -EINVAL; hmm, maybe -ENODEV as this is not user fault + goto out_unlock; + } + ret = guc_log_relay_create(guc); if (ret) goto out_unlock; ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH 09/15] drm/i915/guc: Move check for fast memcpy_wc to relay creation
We only need those fast memcpy_wc when we're using relay to read continuous GuC log. Let's prevent the user from creating a relay if we know we won't be able to keep up with GuC. Signed-off-by: Michał WiniarskiCc: Chris Wilson Cc: Daniele Ceraolo Spurio Cc: Sagar Arun Kamble Cc: Michal Wajdeczko --- drivers/gpu/drm/i915/intel_guc_log.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_guc_log.c b/drivers/gpu/drm/i915/intel_guc_log.c index 4dee65692f5f..d2aca10ab986 100644 --- a/drivers/gpu/drm/i915/intel_guc_log.c +++ b/drivers/gpu/drm/i915/intel_guc_log.c @@ -452,16 +452,6 @@ int intel_guc_log_create(struct intel_guc *guc) GEM_BUG_ON(guc->log.vma); - /* -* We require SSE 4.1 for fast reads from the GuC log buffer and -* it should be present on the chipsets supporting GuC based -* submisssions. -*/ - if (WARN_ON(!i915_has_memcpy_from_wc())) { - ret = -EINVAL; - goto err; - } - vma = intel_guc_allocate_vma(guc, GUC_LOG_SIZE); if (IS_ERR(vma)) { ret = PTR_ERR(vma); @@ -568,6 +558,16 @@ int intel_guc_log_relay_open(struct intel_guc *guc) goto out_unlock; } + /* +* We require SSE 4.1 for fast reads from the GuC log buffer and +* it should be present on the chipsets supporting GuC based +* submisssions. +*/ + if (!i915_has_memcpy_from_wc()) { + ret = -EINVAL; + goto out_unlock; + } + ret = guc_log_relay_create(guc); if (ret) goto out_unlock; -- 2.14.3 ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx