Ben Hutchings wrote:
> On Tue, 2012-10-16 at 18:30 +0100, Luís Picciochi Oliveira wrote:

>> Good news!
>>
>> I'm running upstream 3.2.32-rc1 + c07496fa61f4c5cb2addd1c57f6b.
> [...]
>
> But the upstream change doesn't apply cleanly to 3.2.y, not even close.
> Please don't just say that you cherry-picked some upstream commit, when
> in fact some substantial backporting is needed.  I (and Daniel) can't
> know what you've actually tested.

Perhaps Luís meant the following.  (Though this is just a guess; Luís
would have to specify.)

-- >8 --
From: Daniel Vetter <[email protected]>
Date: Fri, 13 Apr 2012 15:51:51 +0200
Subject: drm/i915: don't pwrite tiled objects through the gtt

commit c07496fa61f4c5cb2addd1c57f6b22fcaeea2eeb upstream.

... we will botch up the bit17 swizzling. Furthermore tiled pwrite is
a (now) unused slowpath, so no one really cares.

This fixes the last swizzling issues I have with i-g-t on my bit17
swizzling i915G. No regression, it's been broken since the dawn of
gem, but it's nice for regression tracking when really _all_ i-g-t
tests work.

Actually this is not true, Chris Wilson noticed while reviewing this
patch that the commit

commit d9e86c0ee60f323e890484628f351bf50fa9a15d
Author: Chris Wilson <[email protected]>
Date:   Wed Nov 10 16:40:20 2010 +0000

    drm/i915: Pipelined fencing [infrastructure]

contained a functional change that broke things.

Reviewed-by: Chris Wilson <[email protected]>
Signed-Off-by: Daniel Vetter <[email protected]>
Signed-off-by: Jonathan Nieder <[email protected]>
---
 drivers/gpu/drm/i915/i915_gem.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 33e155590a50..dbe4dbe46475 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -999,6 +999,7 @@ i915_gem_pwrite_ioctl(struct drm_device *dev, void *data,
        if (obj->phys_obj)
                ret = i915_gem_phys_pwrite(dev, obj, args, file);
        else if (obj->gtt_space &&
+                obj->tiling_mode == I915_TILING_NONE &&
                 obj->base.write_domain != I915_GEM_DOMAIN_CPU) {
                ret = i915_gem_object_pin(obj, 0, true);
                if (ret)
-- 
1.8.0

--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to