[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