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ä <[email protected]> > 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 <[email protected]> > --- > 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 > [email protected] > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Ville Syrjälä Intel OTC _______________________________________________ Intel-gfx mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/intel-gfx
