From: Daniel Vetter <daniel@ffwll.ch>
To: Indan Zupancic <indan@nul.nu>
Cc: Chris Wilson <chris@chris-wilson.co.uk>,
Daniel Vetter <daniel.vetter@ffwll.ch>,
LKML <linux-kernel@vger.kernel.org>,
dri-devel@lists.freedesktop.org
Subject: Re: [BUG] drm/i915 Screen corruption introduced by a00b10c360b35d6431a94cb
Date: Sat, 19 Feb 2011 19:25:11 +0100 [thread overview]
Message-ID: <20110219182511.GA3977@viiv.ffwll.ch> (raw)
In-Reply-To: <3f9bbd0924f54f6241cc16293fbcbbb4.squirrel@webmail.greenhost.nl>
[-- Attachment #1: Type: text/plain, Size: 2230 bytes --]
Hi Indan,
Please provide the usual details about your system (especially what gpu
this is on). Also, screenshots of what typical corruptions look like can
help a lot in tracking down such things.
I've created two quick patches to check a few theories, please test them
(both patches independently and both together). Patches attached.
Yours, Daniel
On Sat, Feb 19, 2011 at 06:58:06AM +0100, Indan Zupancic wrote:
> Hello,
>
> Since 2.6.38-rc I get screen corruption (mostly horizontal grabage stripes on
> the right side of the screen). After a long time bisecting the offending commit
> ends up being:
>
> commit a00b10c360b35d6431a94cbf130a4e162870d661
> Author: Chris Wilson <chris@chris-wilson.co.uk>
> Date: Fri Sep 24 21:15:47 2010 +0100
>
> drm/i915: Only enforce fence limits inside the GTT.
>
> So long as we adhere to the fence registers rules for alignment and no
> overlaps (including with unfenced accesses to linear memory) and account
> for the tiled access in our size allocation, we do not have to allocate
> the full fenced region for the object. This allows us to fight the bloat
> tiling imposed on pre-i965 chipsets and frees up RAM for real use. [Inside
> the GTT we still suffer the additional alignment constraints, so it doesn't
> magic allow us to render larger scenes without stalls -- we need the
> expanded GTT and fence pipelining to overcome those...]
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
>
> This commit caused other problems too, which Daniel tried to fix with commits:
>
> 5e78330126e23e00950 drm/i915: fix relaxed tiling for gen <= 3 && !g33
> 75e9e9158f38e5cb21e drm/i915: kill mappable/fenceable disdinction
> 818f2a3cc34b0673dcc drm/i915: revert pageflip/mappable related abi breakage
>
> But those don't fix my screen corruption.
>
> Unfortunately, it's a big commit and it doesn't revert cleanly, and its size
> makes it unclear what the source of the problem is. Daniel's commits don't
> revert cleanly either, so reverting all of them didn't work.
>
> I'll start poking at it and see if I can find anything.
>
> Greetings,
>
> Indan
>
>
--
Daniel Vetter
Mail: daniel@ffwll.ch
Mobile: +41 (0)79 365 57 48
[-- Attachment #2: for-indan-1.patch --]
[-- Type: text/x-diff, Size: 452 bytes --]
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index cf4f74c..2e6b532 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1404,6 +1404,8 @@ i915_gem_get_unfenced_gtt_alignment(struct drm_i915_gem_object *obj)
struct drm_device *dev = obj->base.dev;
int tile_height;
+ return i915_gem_get_gtt_alignment(obj);
+
/*
* Minimum alignment is 4k (GTT page size) for sane hw.
*/
[-- Attachment #3: for-indan-2.patch --]
[-- Type: text/x-diff, Size: 430 bytes --]
diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
index 17bd766..fbc21e3 100644
--- a/drivers/gpu/drm/i915/i915_dma.c
+++ b/drivers/gpu/drm/i915/i915_dma.c
@@ -763,7 +763,7 @@ static int i915_getparam(struct drm_device *dev, void *data,
value = HAS_BLT(dev);
break;
case I915_PARAM_HAS_RELAXED_FENCING:
- value = 1;
+ value = 0;
break;
case I915_PARAM_HAS_COHERENT_RINGS:
value = 1;
next prev parent reply other threads:[~2011-02-19 18:34 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-19 5:58 Indan Zupancic
2011-02-19 18:25 ` Daniel Vetter [this message]
2011-02-20 2:20 ` Indan Zupancic
2011-02-20 2:26 ` Indan Zupancic
2011-02-20 9:20 ` Daniel Vetter
2011-02-20 11:02 ` Indan Zupancic
2011-02-20 10:55 ` Daniel Vetter
2011-02-20 11:19 ` Indan Zupancic
2011-02-20 13:21 ` Daniel Vetter
2011-02-21 1:11 ` Indan Zupancic
[not found] ` <1298395549-4064-1-git-send-email-daniel.vetter@ffwll.ch>
[not found] ` <ed85db84d2d5ea460898d78e1179c6ca.squirrel@webmail.greenhost.nl>
2011-02-23 7:10 ` [PATCH] drm/i915: fix corruptions on i8xx due to relaxed fencing Daniel Vetter
2011-03-10 5:06 ` Indan Zupancic
2011-03-10 7:52 ` Daniel Vetter
2011-03-10 10:36 ` Indan Zupancic
2011-03-10 13:31 ` Daniel Vetter
2011-03-11 1:08 ` Indan Zupancic
2011-03-11 9:23 ` Daniel Vetter
2011-02-21 2:51 ` [BUG] drm/i915 Screen corruption introduced by a00b10c360b35d6431a94cb Indan Zupancic
2011-02-20 3:51 ` Peter Stuge
2011-02-20 6:13 ` Indan Zupancic
2011-02-21 4:10 ` Peter Stuge
2011-02-21 5:26 ` Indan Zupancic
2011-02-22 3:25 Indan Zupancic
2011-02-22 3:39 ` Indan Zupancic
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110219182511.GA3977@viiv.ffwll.ch \
--to=daniel@ffwll.ch \
--cc=chris@chris-wilson.co.uk \
--cc=daniel.vetter@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=indan@nul.nu \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®