From patchwork Tue Jul 21 14:03:12 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 6836501 Return-Path: X-Original-To: patchwork-intel-gfx@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 35D6BC05AC for ; Tue, 21 Jul 2015 14:00:39 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 456B4206A4 for ; Tue, 21 Jul 2015 14:00:38 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 38F9220648 for ; Tue, 21 Jul 2015 14:00:37 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A18F96E938; Tue, 21 Jul 2015 07:00:36 -0700 (PDT) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mail-wg0-f51.google.com (mail-wg0-f51.google.com [74.125.82.51]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1AE936E938 for ; Tue, 21 Jul 2015 07:00:35 -0700 (PDT) Received: by wgav7 with SMTP id v7so91899428wga.2 for ; Tue, 21 Jul 2015 07:00:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=2z9y3EDhQxwcfDn9VTqTmdJYteXfQrNfHIEoD4eH914=; b=NzudgWVJTLP9r6+iOvfzm5sBibg+DvUW2lWgzDS+d7wLHRVvyORAaToiGM9EiwzV34 +6VIDMIE5k5lvy2YdL0rtkZBSM4c2C7TJf1ESKpxO95jp8ChNCKxi4i1SwHsOxGd/ZhA q1O2hDjfQ2piOUCsymYj5YohrPWFM+rnH+M2g= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-type:content-disposition :in-reply-to:user-agent; bh=2z9y3EDhQxwcfDn9VTqTmdJYteXfQrNfHIEoD4eH914=; b=fwvdkeI5IFL7acxZINIGJp7UigBALUgsG9+sTHyq51RHCO8WM8pbcGAlhytcd5ADbt h0njN1FoKFFpgcSLbT5O4P+wff9DhRD2P9YLKCZrxUm0Kl5AteVPhn2DiuAK2YJZgLhb eNIgnP7vAJ19/Z++s4Rdkd0PXtr48Ldw9BSq85wVj5FA9Sc71wdbTAR2RAparr/85r+P VBOPOpqel4VxiSlWPtR/DmmIEOIz2X5z0d86VxO17jVqKAZgn85PWIgXwyepUjEj9M18 a/I10SUItVTtXXnp1v+UdVBD1Fc5KnZT4pcp76/RneNjv7O+gZJNNTrHabvp/ruT+bJj s3hQ== X-Gm-Message-State: ALoCoQkGC88Ma9VSVV1wi8OUkevl/mwwogMW21dg9mrk/yJRccSmzJG6EmbV13atWi1xzYvG7J9o X-Received: by 10.194.58.130 with SMTP id r2mr68242280wjq.72.1437487232243; Tue, 21 Jul 2015 07:00:32 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:56b5:0:22cf:30ff:fe4c:37d6]) by smtp.gmail.com with ESMTPSA id ck18sm37190360wjb.47.2015.07.21.07.00.30 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 21 Jul 2015 07:00:31 -0700 (PDT) Date: Tue, 21 Jul 2015 16:03:12 +0200 From: Daniel Vetter To: Krzysztof Kolasa Message-ID: <20150721140312.GN16722@phenom.ffwll.local> References: <55ABE757.2080005@winsoft.pl> <20150721073043.GT16722@phenom.ffwll.local> <55ADFDF0.4060407@winsoft.pl> <20150721084153.GZ16722@phenom.ffwll.local> <55AE09CA.7060206@winsoft.pl> <20150721090720.GC16722@phenom.ffwll.local> <20150721094321.GC6166@nuc-i3427.alporthouse.com> <55AE3F95.4060305@winsoft.pl> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <55AE3F95.4060305@winsoft.pl> X-Operating-System: Linux phenom 4.2.0-rc1+ User-Agent: Mutt/1.5.23 (2014-03-12) Cc: daniel.vetter@intel.com, intel-gfx@lists.freedesktop.org, mika.kuoppala@intel.com Subject: Re: [Intel-gfx] interference on display, Intel 945GM, 32bit system, kernel next X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Spam-Status: No, score=-5.3 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,RP_MATCHES_RCVD,T_DKIM_INVALID,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On Tue, Jul 21, 2015 at 02:48:21PM +0200, Krzysztof Kolasa wrote: > On 21.07.2015 11:43, Chris Wilson wrote: > > On Tue, Jul 21, 2015 at 11:07:20AM +0200, Daniel Vetter wrote: > >> On Tue, Jul 21, 2015 at 10:58:50AM +0200, Krzysztof Kolasa wrote: > >>> On 21.07.2015 10:41, Daniel Vetter wrote: > >>>> I meant whether you can reset the bad commit and it's immediate parent > >>>> extensively to make sure the bisect is really correct. gpu's occasionally > >>>> take a while to hang themselves, so could be that the bisect was > >>>> mislead somewhere. > >>> > >>> Again I will bisect, more testing good sections. > >>> > >>> At the moment on my old laptop, the latest official, properly working kernel is 4.1.2 > >> You don't need to redo the full bisect, only retest the bad and the parent > >> of the bad extensively. That's enough to confirm the bisect result for > >> sure. > > The bisection is misleading. It's a missing write-barrier. > > -Chris > > > tested again: > > # good: [cd102a687beed1042824d5fa81c6ba8bfe78e6a4] drm/i915: Remove misleading comment around bind_to_vm > git bisect good cd102a687beed1042824d5fa81c6ba8bfe78e6a4 > # bad: [0875546c5318c85c13d07014af5350e9000bc9e9] drm/i915: Fix up the vma aliasing ppgtt binding > git bisect bad 0875546c5318c85c13d07014af5350e9000bc9e9 > # first bad commit: [0875546c5318c85c13d07014af5350e9000bc9e9] drm/i915: Fix up the vma aliasing ppgtt binding > > > Screen does not lie :) first bad is BAD, good is GOOD > > on commit cd102a687beed10, computer worked steadily (with a large number of windows, applications) about an hour and stopped the tests, everything was OK > > on commit 0875546c5318c85, after about one minute, the screen gone mad Suprising. Can you try out the below patch, it should disable the active ingredient of the offending. On older kernels just remove the if (bind_flags) before the call to ->bind_vma - the point is to call ->bind_vma unconditionally. -Daniel diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c index cc133c700686..1227cd69c624 100644 --- a/drivers/gpu/drm/i915/i915_gem_gtt.c +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c @@ -2908,9 +2908,6 @@ int i915_vma_bind(struct i915_vma *vma, enum i915_cache_level cache_level, else bind_flags &= ~vma->bound; - if (bind_flags == 0) - return 0; - if (vma->bound == 0 && vma->vm->allocate_va_range) { trace_i915_va_alloc(vma->vm, vma->node.start,