[Intel-gfx] [PATCH 2/2] drm/i915: Disable snooping (userptr, set-cache-level) on gen4

Ville Syrjälä ville.syrjala at linux.intel.com
Tue Sep 5 19:01:03 UTC 2017


On Tue, Sep 05, 2017 at 02:47:35PM +0100, Chris Wilson wrote:
> The original gen4 has an issue where writes (both render and blt) into
> snoopable pages are lost.

BTW is this documented somewhere, or just folk lore? I only found bspec
notes that snooped->snooped and tiled+snooped isn't allowed. But I
guess this is something more generic?

It does appear to match notes in ddx/igt so
Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>

> We've previously worked around this in
> userspace (ddx, igt) by simply not requesting snoopable buffers, but upon
> rediscovering this problem for a third time, make the kernel reject such
> requests with -ENODEV.
> 
> This disables snooping on userspace buffers for i965 and i965gm (original
> gen4) machines.
> 
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
>  drivers/gpu/drm/i915/i915_pci.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c
> index e6e75a9d140e..f060536cc405 100644
> --- a/drivers/gpu/drm/i915/i915_pci.c
> +++ b/drivers/gpu/drm/i915/i915_pci.c
> @@ -168,6 +168,7 @@ static const struct intel_device_info intel_i965g_info __initconst = {
>  	.platform = INTEL_I965G,
>  	.has_overlay = 1,
>  	.hws_needs_physical = 1,
> +	.has_snoop = false,
>  };
>  
>  static const struct intel_device_info intel_i965gm_info __initconst = {
> @@ -177,6 +178,7 @@ static const struct intel_device_info intel_i965gm_info __initconst = {
>  	.has_overlay = 1,
>  	.supports_tv = 1,
>  	.hws_needs_physical = 1,
> +	.has_snoop = false,
>  };
>  
>  static const struct intel_device_info intel_g45_info __initconst = {
> -- 
> 2.14.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC


More information about the Intel-gfx mailing list