From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: linux-4.4 bisected: kwin5 stuck on kde5 loading screen with radeon Date: Mon, 25 Jan 2016 19:51:30 +0100 Message-ID: <20160125185122.GV11240@phenom.ffwll.local> References: <56A0989E.30006@daenzer.net> <20160121100905.GL19130@phenom.ffwll.local> <56A19C98.8020208@daenzer.net> <20160122151835.GM23290@intel.com> <56A5A171.7000205@daenzer.net> <56A6203D.3030803@gmail.com> <20160125132310.GS23290@intel.com> <56A626D5.2040808@gmail.com> <20160125145309.GT23290@intel.com> <56A64F86.9080605@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f44.google.com (mail-wm0-f44.google.com [74.125.82.44]) by gabe.freedesktop.org (Postfix) with ESMTPS id 054BF6E528 for ; Mon, 25 Jan 2016 10:51:27 -0800 (PST) Received: by mail-wm0-f44.google.com with SMTP id r129so76378847wmr.0 for ; Mon, 25 Jan 2016 10:51:26 -0800 (PST) Content-Disposition: inline In-Reply-To: <56A64F86.9080605@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Mario Kleiner Cc: Daniel Vetter , Michel =?iso-8859-1?Q?D=E4nzer?= , LKML , dri-devel@lists.freedesktop.org, Alex Deucher , Christian =?iso-8859-1?Q?K=F6nig?= , Vlastimil Babka List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBKYW4gMjUsIDIwMTYgYXQgMDU6Mzg6MzBQTSArMDEwMCwgTWFyaW8gS2xlaW5lciB3 cm90ZToKPiBSZWFkZGluZyBEYW5pZWwsIHdoaWNoIHNvbWVob3cgZ290IGRyb3BwZWQgZnJvbSB0 aGUgY2MuCj4gCj4gT24gMDEvMjUvMjAxNiAwMzo1MyBQTSwgVmlsbGUgU3lyasOkbMOkIHdyb3Rl Ogo+ID5PbiBNb24sIEphbiAyNSwgMjAxNiBhdCAwMjo0NDo1M1BNICswMTAwLCBNYXJpbyBLbGVp bmVyIHdyb3RlOgo+ID4+Cj4gPj4KPiA+Pk9uIDAxLzI1LzIwMTYgMDI6MjMgUE0sIFZpbGxlIFN5 cmrDpGzDpCB3cm90ZToKPiA+Pj5PbiBNb24sIEphbiAyNSwgMjAxNiBhdCAwMjoxNjo0NVBNICsw MTAwLCBNYXJpbyBLbGVpbmVyIHdyb3RlOgo+ID4+Pj4KPiA+Pj4+Cj4gPj4+Pk9uIDAxLzI1LzIw MTYgMDU6MTUgQU0sIE1pY2hlbCBEw6RuemVyIHdyb3RlOgo+ID4+Pj4+T24gMjMuMDEuMjAxNiAw MDoxOCwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+ID4+Pj4+Pk9uIEZyaSwgSmFuIDIyLCAyMDE2 IGF0IDEyOjA2OjAwUE0gKzA5MDAsIE1pY2hlbCBEw6RuemVyIHdyb3RlOgo+ID4+Pj4+Pj4KPiA+ Pj4+Pj4+WyBUcmltbWluZyBLREUgZm9sa3MgZnJvbSBDYyBdCj4gPj4+Pj4+Pgo+ID4+Pj4+Pj5P biAyMS4wMS4yMDE2IDE5OjA5LCBEYW5pZWwgVmV0dGVyIHdyb3RlOgo+ID4+Pj4+Pj4+T24gVGh1 LCBKYW4gMjEsIDIwMTYgYXQgMDU6MzY6NDZQTSArMDkwMCwgTWljaGVsIETDpG56ZXIgd3JvdGU6 Cj4gPj4+Pj4+Pj4+T24gMjEuMDEuMjAxNiAxNjo1OCwgRGFuaWVsIFZldHRlciB3cm90ZToKPiA+ Pj4+Pj4+Pj4+Cj4gPj4+Pj4+Pj4+PkNhbiB5b3UgcGxlYXNlIHBvaW50IG1lIGF0IHRoZSB2Ymxh bmsgb24vb2ZmIGp1bXAgYnVnIHBsZWFzZT8KPiA+Pj4+Pj4+Pj4KPiA+Pj4+Pj4+Pj5BRkFJUiBJ IG9yaWdpbmFsbHkgcmVwb3J0ZWQgaXQgaW4gcmVzcG9uc2UgdG8KPiA+Pj4+Pj4+Pj5odHRwOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hpdmVzL2RyaS1kZXZlbC8yMDE1LUF1Z3VzdC8wODc4 NDEuaHRtbAo+ID4+Pj4+Pj4+PiwgYnV0IEkgY2FuJ3QgZmluZCB0aGF0IGluIHRoZSBhcmNoaXZl cywgc28gbWF5YmUgdGhhdCB3YXMganVzdCBvbiBJUkMuCj4gPj4+Pj4+Pj4+U2VlCj4gPj4+Pj4+ Pj4+aHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9hcmNoaXZlcy9kcmktZGV2ZWwvMjAxNi1K YW51YXJ5LzA5OTEyMi5odG1sCj4gPj4+Pj4+Pj4+LiBCYXNpY2FsbHksIEkgcmFuIGludG8gdGhl IGJ1ZyBmaXhlZCBieSB5b3VyIHBhdGNoIGJlY2F1c2UgdGhlIGNvdW50ZXIKPiA+Pj4+Pj4+Pj5q dW1wZWQgZm9yd2FyZCBvbiBldmVyeSBEUE1TIG9mZiwgc28gaXQgaGl0IHRoZSAzMi1iaXQgYm91 bmRhcnkgYWZ0ZXIKPiA+Pj4+Pj4+Pj5qdXN0IGEgZmV3IGRheXMuCj4gPj4+Pj4+Pj4KPiA+Pj4+ Pj4+Pk9rLCBzbyBqdXN0IHVuY292ZXJlZCB0aGUgb3ZlcmZsb3cgYnVnLgo+ID4+Pj4+Pj4KPiA+ Pj4+Pj4+Tm90IHN1cmUgd2hhdCB5b3UgbWVhbiBieSAianVzdCIsIGJ1dCB0byBiZSBjbGVhcjog VGhlIGRybV92Ymxhbmtfb24vb2ZmCj4gPj4+Pj4+PmNvdW50ZXIganVtcGluZyBidWcgKHNpbWls YXIgdG8gdGhlIGJ1ZyB0aGlzIHRocmVhZCBpcyBhYm91dCksIHdoaWNoCj4gPj4+Pj4+PmV4cG9z ZWQgdGhlIG92ZXJmbG93IGJ1ZywgaXMgc3RpbGwgYWxpdmUgYW5kIGtpY2tpbmcgaW4gNC41LiBJ dCBzZWVtcwo+ID4+Pj4+Pj50byBoYXBwZW4gd2hlbiB0dXJuaW5nIG9mZiB0aGUgQ1JUQzoKPiA+ Pj4+Pj4+Cj4gPj4+Pj4+Pltkcm06ZHJtX3VwZGF0ZV92YmxhbmtfY291bnRdIHVwZGF0aW5nIHZi bGFuayBjb3VudCBvbiBjcnRjIDA6IGN1cnJlbnQ9MjE4MTA0Njk0LCBkaWZmPTAsIGh3PTkxNiBo d19sYXN0PTkxNgo+ID4+Pj4+Pj5bZHJtOnJhZGVvbl9nZXRfdmJsYW5rX2NvdW50ZXJfa21zXSBj cnRjIDA6IGRpc3QgZnJvbSB2Ymxhbmsgc3RhcnQgMwo+ID4+Pj4+Pj5bZHJtOmRybV9jYWxjX3Zi bHRpbWVzdGFtcF9mcm9tX3NjYW5vdXRwb3NdIGNydGMgMCA6IHYgMHg3IHAoMjE5OSwtNDUpQCA3 MzA0LjMwNzM1NCAtPiA3MzA0LjMwODAwNiBbZSAwIHVzLCAwIHJlcF0KPiA+Pj4+Pj4+W2RybTpy YWRlb25fZ2V0X3ZibGFua19jb3VudGVyX2ttc10gY3J0YyAwOiBkaXN0IGZyb20gdmJsYW5rIHN0 YXJ0IDMKPiA+Pj4+Pj4+W2RybTpkcm1fdXBkYXRlX3ZibGFua19jb3VudF0gdXBkYXRpbmcgdmJs YW5rIGNvdW50IG9uIGNydGMgMDogY3VycmVudD0yMTgxMDQ2OTQsIGRpZmY9MTY3NzYzMDEsIGh3 PTEgaHdfbGFzdD05MTYKPiA+Pj4+Pj4KPiA+Pj4+Pj5Ob3Qgc3VyZSB3aGF0IGJ1ZyB3ZSdyZSB0 YWxraW5nIGFib3V0IGhlcmUsIGJ1dCBoZXJlIHRoZSBodyBjb3VudGVyCj4gPj4+Pj4+Y2xlYXJs eSBqdW1wcyBiYWNrd2FyZHMuCj4gPj4+Pj4+Cj4gPj4+Pj4+Pltkcm06cmFkZW9uX2dldF92Ymxh bmtfY291bnRlcl9rbXNdIFF1ZXJ5IGZhaWxlZCEgc3RhdCAzCj4gPj4+Pj4+Pltkcm06cmFkZW9u X2dldF92YmxhbmtfY291bnRlcl9rbXNdIFF1ZXJ5IGZhaWxlZCEgc3RhdCAzCj4gPj4+Pj4+Pltk cm06ZHJtX3VwZGF0ZV92YmxhbmtfY291bnRdIHVwZGF0aW5nIHZibGFuayBjb3VudCBvbiBjcnRj IDE6IGN1cnJlbnQ9MCwgZGlmZj0wLCBodz0wIGh3X2xhc3Q9MAo+ID4+Pj4+Pj5bZHJtOnJhZGVv bl9nZXRfdmJsYW5rX2NvdW50ZXJfa21zXSBRdWVyeSBmYWlsZWQhIHN0YXQgMwo+ID4+Pj4+Pj5b ZHJtOnJhZGVvbl9nZXRfdmJsYW5rX2NvdW50ZXJfa21zXSBRdWVyeSBmYWlsZWQhIHN0YXQgMwo+ ID4+Pj4+Pj5bZHJtOmRybV91cGRhdGVfdmJsYW5rX2NvdW50XSB1cGRhdGluZyB2YmxhbmsgY291 bnQgb24gY3J0YyAyOiBjdXJyZW50PTAsIGRpZmY9MCwgaHc9MCBod19sYXN0PTAKPiA+Pj4+Pj4+ W2RybTpyYWRlb25fZ2V0X3ZibGFua19jb3VudGVyX2ttc10gUXVlcnkgZmFpbGVkISBzdGF0IDMK PiA+Pj4+Pj4+W2RybTpyYWRlb25fZ2V0X3ZibGFua19jb3VudGVyX2ttc10gUXVlcnkgZmFpbGVk ISBzdGF0IDMKPiA+Pj4+Pj4+W2RybTpkcm1fdXBkYXRlX3ZibGFua19jb3VudF0gdXBkYXRpbmcg dmJsYW5rIGNvdW50IG9uIGNydGMgMzogY3VycmVudD0wLCBkaWZmPTAsIGh3PTAgaHdfbGFzdD0w Cj4gPj4+Pj4+Pltkcm06cmFkZW9uX2dldF92YmxhbmtfY291bnRlcl9rbXNdIFF1ZXJ5IGZhaWxl ZCEgc3RhdCAxCj4gPj4+Pj4+Pltkcm06ZHJtX2NhbGNfdmJsdGltZXN0YW1wX2Zyb21fc2Nhbm91 dHBvc10gY3J0YyAwIDogdiAweDEgcCgwLDApQCA3MzA0LjMxNzE0MCAtPiA3MzA0LjMxNzE0MCBb ZSAwIHVzLCAwIHJlcF0KPiA+Pj4+Pj4+W2RybTpyYWRlb25fZ2V0X3ZibGFua19jb3VudGVyX2tt c10gUXVlcnkgZmFpbGVkISBzdGF0IDEKPiA+Pj4+Pj4+W2RybTpkcm1fdXBkYXRlX3ZibGFua19j b3VudF0gdXBkYXRpbmcgdmJsYW5rIGNvdW50IG9uIGNydGMgMDogY3VycmVudD0yMzQ4ODA5OTUs IGRpZmY9MTY3NzcyMTUsIGh3PTAgaHdfbGFzdD0xCj4gPj4+Pj4+Cj4gPj4+Pj4+U2FtZSBoZXJl Lgo+ID4+Pj4+Cj4gPj4+Pj5BdCBsZWFzdCBvbmUgb2YgdGhlIGp1bXBzIGlzIGV4cGVjdGVkLCBi ZWNhdXNlIHRoaXMgaXMgYXJvdW5kIHR1cm5pbmcKPiA+Pj4+Pm9mZiB0aGUgQ1JUQyBmb3IgRFBN UyBvZmYuIERvbid0IGtub3cgeWV0IHdoeSB0aGVyZSBhcmUgdHdvIGp1bXBzIGJhY2sKPiA+Pj4+ PnRob3VnaC4KPiA+Pj4+Pgo+ID4+Pj4+Cj4gPj4+Pj4+VGhlc2UgdGhpbmdzIGp1c3QgZG9uJ3Qg aGFwcGVuIG9uIGk5MTUgYmVjYXVzZSBkcm1fdmJsYW5rX29mZigpIGFuZAo+ID4+Pj4+PmRybV92 Ymxhbmtfb24oKSBhcmUgYWx3YXlzIGNhbGxlZCBhcm91bmQgdGhlIHRpbWVzIHdoZW4gdGhlIGh3 IGNvdW50ZXIKPiA+Pj4+Pj5taWdodCBnZXQgcmVzZXQuIE9yIGF0IGxlYXN0IHRoYXQncyBob3cg aXQgc2hvdWxkIGJlLgo+ID4+Pj4+Cj4gPj4+Pj5XaGljaCBpcyBvZiBjb3Vyc2UgdGhlIGlkZWEg b2YgRGFuaWVsJ3MgcGF0Y2ggKHdoaWNoIGlzIHdoYXQgSSdtIGdldHRpbmcKPiA+Pj4+PnRoZSBh Ym92ZSB3aXRoKSBvciBNYXJpbydzIHBhdGNoIGFzIHdlbGwsIGJ1dCBjbGVhcmx5IHNvbWV0aGlu ZydzIHN0aWxsCj4gPj4+Pj53cm9uZy4gSXQncyBjZXJ0YWlubHkgcG9zc2libGUgdGhhdCBpdCdz IHNvbWV0aGluZyBpbiB0aGUgZHJpdmVyLCBidXQKPiA+Pj4+PnNpbmNlIGNhbGxpbmcgZHJtX3Zi bGFua19wcmUvcG9zdF9tb2Rlc2V0IGZyb20gdGhlIHNhbWUgcGxhY2VzIHNlZW1zIHRvCj4gPj4+ Pj53b3JrIGZpbmUgKGlnbm9yaW5nIHRoZSByZWdyZXNzaW9uIGRpc2N1c3NlZCBpbiB0aGlzIHRo cmVhZCkuLi4gRG8KPiA+Pj4+PmRybV92Ymxhbmtfb24vb2ZmIHJlcXVpcmUgc29tZXRoaW5nIGVs c2UgdG8gaGFuZGxlIHRoaXMgY29ycmVjdGx5Pwo+ID4+Pj4+Cj4gPj4+Pj4KPiA+Pj4+Cj4gPj4+ Pkkgc3VzcGVjdCBpdCBpcyBiZWNhdXNlIHZibGFua19kaXNhYmxlX2FuZF9zYXZlIGNhbGxzCj4g Pj4+PmRybV91cGRhdGVfdmJsYW5rX2NvdW50KCkgdW5jb25kaXRpb25hbGx5LCBldmVuIGlmIHZi bGFuayBpcnFzIGFyZQo+ID4+Pj5hbHJlYWR5IG9mZi4KPiA+Pj4+Cj4gPj4+PlNvIG9uIGEgbWFu dWFsIGRpc3BsYXkgZGlzYWJsZSAtPiByZWVuYWJsZSB5b3UgZ2V0IHNvbWV0aGluZyBsaWtlCj4g Pj4+Pgo+ID4+Pj5BdCBkaXNhYmxlOgo+ID4+Pj4KPiA+Pj4+Q2FsbCB0byBkcG1zLW9mZiAtLT4g YXRvbWJpb3NfY3J0Y19kcG1zKERQTVNfT0ZGKSAtLT4gZHJtX3ZibGFua19vZmYgLT4KPiA+Pj4+ dmJsYW5rX2Rpc2FibGVfYW5kX3NhdmUgLT4gaXJxcyBvZmYsIGRybV91cGRhdGVfdmJsYW5rX2Nv dW50KCkgY29tcHV0ZXMKPiA+Pj4+ZmluYWwgY291bnQuCj4gPj4+Pgo+ID4+Pj5UaGVuIHRoZSBj cnRjIGlzIHNodXQgZG93biBhbmQgaXRzIGh3IGNvdW50ZXIgcmVzZXRzIHRvIHplcm8uCj4gPj4+ Pgo+ID4+Pj5BdCByZWVuYWJsZToKPiA+Pj4+Cj4gPj4+Pk1vZGVzZXR0aW5nIC0+IGRybV9jcnRj X2hlbHBlcl9zZXRfbW9kZSAtPiBjcnRjX2Z1bmNzLT5wcmVwYXJlKGNydGMpIC0+Cj4gPj4+PmF0 b21iaW9zX2NydGNfcHJlcGFyZSgpIC0+IGF0b21iaW9zX2NydGNfZHBtcyhEUE1TX09GRikgLT4K PiA+Pj4+ZHJtX3ZibGFua19vZmYgLT4gdmJsYW5rX2Rpc2FibGVfYW5kX3NhdmUgLT4gQSBwb2lu dGxlc3MKPiA+Pj4+ZHJtX3VwZGF0ZV92YmxhbmtfY291bnQoKSB3aGlsZSB0aGUgaHcgY291bnRl ciBpcyBhbHJlYWR5IHJlc2V0IHRvIHplcm8KPiA+Pj4+LS0+IFVud2FudGVkIGNvdW50ZXIganVt cC4KPiA+Pj4+Cj4gPj4+Pgo+ID4+Pj5UaGUgcHJvYmxlbSBkb2Vzbid0IGhhcHBlbiBvbiBhIHB1 cmUgbW9kZXNldCB0byBhIGRpZmZlcmVudCB2aWRlbwo+ID4+Pj5yZXNvbHV0aW9uL3JlZnJlc2gg cmF0ZSwgYXMgdGhlbiB3ZSBvbmx5IGhhdmUgb25lIGNhbGwgaW50bwo+ID4+Pj5hdG9tYmlvc19j cnRjX2RwbXMoRFBNU19PRkYpLgo+ID4+Pj4KPiA+Pj4+SSB0aGluayB0aGUgZml4IGlzIHRvIGZp eCB2YmxhbmtfZGlzYWJsZV9hbmRfc2F2ZSgpIHRvIG9ubHkgY2FsbAo+ID4+Pj5kcm1fdXBkYXRl X3ZibGFua19jb3VudCgpIGlmIHZibGFuayBpcnFzIGdldCBhY3R1YWxseSBkaXNhYmxlZCwgbm90 IG9uCj4gPj4+Pm5vLW9wIGNhbGxzLiBJIHdpbGwgdHJ5IHRoYXQgbm93Lgo+ID4+Pgo+ID4+Pkl0 IGRvZXMgdGhhdCBvbiBwdXJwb3NlLiBPdGhlcndpc2UgdGhlIHZibGFuayBjb3VudGVyIHdvdWxk IGFwcGVhciB0bwo+ID4+PmhhdmUgc3RhbGxlZCB3aGlsZSB0aGUgaW50ZXJydXB0IHdhcyBvZmYu Cj4gPj4+Cj4gPj4KPiA+Pk9rLCB0aGF0J3Mgd2hhdCB0aGUgY29tbWVudHMgdGhlcmUgc2F5LCBh bHRob3VnaCBpIGRvbid0IHNlZSBhdG0uIHdoeQo+ID4+dGhhdCBwZXJjZWl2ZWQgc3RhbGwgd291 bGQgYmUgYSBiaWcgcHJvYmxlbS4gSSBjaGVja2VkIGFsbCBjYWxsZXJzIG9mCj4gPj52Ymxhbmtf ZGlzYWJsZV9hbmRfc2F2ZSgpLiBUaGV5IGFyZSBhbGwgY2FyZWZ1bCB0byBub3QgY2FsbCB0aGF0 Cj4gPj5mdW5jdGlvbiBpZiB2YmxhbmtzIGFyZSBhbHJlYWR5IGRpc2FibGVkLiBUaGUgb25seSBl eGNlcHRpb24gaXMKPiA+PmRybV92Ymxhbmtfb2ZmKCkuIElmIGRybV92Ymxhbmtfb2ZmL29uIGlz IHN1cHBvc2VkIHRvIHByb3RlY3Qga21zCj4gPj5kcml2ZXJzIHdoaWNoIGhhdmUgcmVzZXR0aW5n IGh3IGNvdW50ZXJzIG9yIG90aGVyIHByb2JsZW1hdGljIGJlaGF2aW91cgo+ID4+ZHVyaW5nIG1v ZGVzZXRzIGV0Yy4gdGhlbiB0aGlzIHdpbGwgYnJlYWsuIEUuZy4sIGNhbGxpbmcgdGhlIHZibGFu awo+ID4+dGltZXN0YW1waW5nIHN0dWZmIGlzIGFsc28gbm90IHNhZmUvd2VsbC1kZWZpbmVkIGR1 cmluZyBtb2Rlc2V0cyB3aGVuCj4gPj50aGUgdGltZXN0YW1waW5nIGNvbnN0YW50cyBhcmUgbm90 ICh5ZXQpIHVwZGF0ZWQgdG8gcmVmbGVjdCB0aGUgbmV3IG1vZGUKPiA+PnRpbWluZyBvZiB0aGUg bW9kZXNldCBpbiBwcm9ncmVzcy4KPiA+Cj4gPlRoZSBpZGVhIGlzIHRvIG1haW50YWluIHRoZSBh cHBlYXJhbmNlIHRoYXQgdGhlIGNvdW50ZXIgdGlja3MgYWxsIHRoZQo+ID50aW1lIGFzIGxvbmcg YXMgdGhlIGNydGMgaXMgYWN0aXZlLiBXaGlsZSB0aGF0IG1heSBub3QgYmUgcmVhbGx5Cj4gPnJl cXVpcmVkIGluIGNhc2UgaWYgbm8gb25lIGlzIGN1cnJlbnRseSBpbnRlcmVzdGVkIGluIHRoZSB2 YmxhbmsKPiA+Y291bnRlciwgSSB0aGluayBpdCdzIGEgbmljZSB0aGluZyB0byBoYXZlIGp1c3Qg dG8gbWFrZSB0aGUgYmVoYXZpb3VyCj4gPm9mIHRoZSBjb3VudGVyIGNvbnNpc3RlbnQuCj4gPgo+ ID5BcyBmYXIgYXMgY2FsbGluZyBkcm1fdmJsYW5rX29mZigpIGFmdGVyIHRoZSBodyBjb3VudGVy IGdvdCByZXNldCwgd2VsbCwKPiA+dGhhdCBub3QgY29ycmVjdC4gSXQgc2hvdWxkIGJlIGNhbGxl ZCBiZWZvcmUgdGhlIHJlc2V0Lgo+IAo+IFdoYXQgcmFkZW9uIGRvZXMgaXMgY2FsbGluZyBkcm1f dmJsYW5rX29mZiBhdCBiZWdpbm5pbmcgb2YgRFBNU19PRkYuIFRoZQo+IGZpcnN0IGNhbGwgdG8g RE1QU19PRkYgd2lsbCBjYWxsIGRybV92Ymxhbmtfb2ZmKCkgYW5kIHJlYWxseSBkaXNhYmxlCj4g dmJsYW5rLWlycXMgaWYgdGhleSB3ZXJlIHJ1bm5pbmcsIHVwZGF0aW5nIHRoZSBjb3VudHMvdHMg YSBsYXN0IHRpbWUuIEJ1dAo+IHRoZW4gdGhlIGRwbXMgb2ZmIHdpbGwgcmVzZXQgdGhlIGh3IGNv dW50ZXIgdG8gemVyby4gV2hlbiBvbmUgcmVlbmFibGVzIHRoZQo+IGRpc3BsYXksIGEgc2Vjb25k IGNhbGwgdG8gRFBNU19PRkYgd2lsbCBub3cgY2FsbCBkcm1fdmJsYW5rX29mZiBhZ2FpbiB3aGVu Cj4gaXQgYXBwYXJlbnRseSBzaG91bGRuJ3QuCj4gCj4gSSBqdXN0IHRlc3RlZCB0aGlzIHBhdGNo LCB3aGljaCBmaXhlcyB0aGUgY291bnRlciBqdW1wcyBvbiByYWRlb24ta21zIHdpdGgKPiBteSBv ciBEYW5pZWwncyBkcm1fdmJsYW5rX29mZiBwYXRjaGVzIHRvIHJhZGVvbjoKClRoaXMgbWlnaHQg YmUgZHVlIHRvIHRoZSBsZWdhY3kgaGVscGVycywgd2hpY2gganVzdCBsb3ZlIHRvIHJlZHVuZGFu dGx5CmRpc2FibGUgc3R1ZmYgdGhhdCdzIG9mZiBhbHJlYWR5LiBUaGUgcHJvYmxlbSBJIHNlZSB3 aXRoIG5vLW9waW5nIHRoZXNlCm91dCBpcyB0aGF0IGZvciBhdG9taWMgZHJpdmVycyAod2hpY2gg cmVhbGx5IHNob3VsZCBnZXQgdGhpcyByaWdodCkgdGhpcwptaWdodCBwYXBlciBvdmVyIGJ1Z3M6 IEUuZy4gd2hlbiB5b3UgZm9yZ2V0IHRvIGNhbGwgX29mZigpIHdoZW4gZGlzYWJsaW5nCnRoZSBj cnRjLCB0aGVuIGNhbGxpbmcgX29uKCkgdHdpY2UgaW4gYSByb3cgaXMgaW5kZWVkIGEgc2VyaW91 cyBidWcuClNpbWlsYXIgd2hlbiB5b3UgZm9yZ2V0IHRvIGNhbGwgX29uKCkgYW5kIGhhdmUgbXVs dGlwbGUgX29mZigpIGNhbGxzIGluIGEKcm93LgoKU28gbm90IHN1cmUgd2hhdCB0byBkbyBoZXJl LgotRGFuaWVsCgo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2lycS5jIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9pcnEuYwo+IGluZGV4IDYwN2Y0OTMuLmQ3MzlkOTMgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9pcnEuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1faXJxLmMKPiBAQCAtMTMxMyw3ICsxMzEzLDEwIEBAIHZvaWQgZHJtX3ZibGFua19vZmYo c3RydWN0IGRybV9kZXZpY2UgKmRldiwgdW5zaWduZWQKPiBpbnQgcGlwZSkKPiAgICAgICAgIHNw aW5fbG9ja19pcnFzYXZlKCZkZXYtPmV2ZW50X2xvY2ssIGlycWZsYWdzKTsKPiAKPiAgICAgICAg IHNwaW5fbG9jaygmZGV2LT52YmxfbG9jayk7Cj4gLSAgICAgICB2YmxhbmtfZGlzYWJsZV9hbmRf c2F2ZShkZXYsIHBpcGUpOwo+ICsgICAgICAgRFJNX0RFQlVHX1ZCTCgiY3J0YyAlZCwgdmJsYW5r IGVuYWJsZWQgJWRcbiIsIHBpcGUsCj4gdmJsYW5rLT5lbmFibGVkKTsKPiArCj4gKyAgICAgICBp ZiAodmJsYW5rLT5lbmFibGVkKQo+ICsgICAgICAgICAgICAgICB2YmxhbmtfZGlzYWJsZV9hbmRf c2F2ZShkZXYsIHBpcGUpOwo+ICAgICAgICAgd2FrZV91cCgmdmJsYW5rLT5xdWV1ZSk7Cj4gCj4g ICAgICAgICAvKgo+IEBAIC0xNDE1LDYgKzE0MTgsOCBAQCB2b2lkIGRybV92Ymxhbmtfb24oc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgdW5zaWduZWQKPiBpbnQgcGlwZSkKPiAgICAgICAgICAgICAg ICAgcmV0dXJuOwo+IAo+ICAgICAgICAgc3Bpbl9sb2NrX2lycXNhdmUoJmRldi0+dmJsX2xvY2ss IGlycWZsYWdzKTsKPiArICAgICAgIERSTV9ERUJVR19WQkwoImNydGMgJWQsIHZibGFuayBlbmFi bGVkICVkXG4iLCBwaXBlLAo+IHZibGFuay0+ZW5hYmxlZCk7Cj4gKwo+ICAgICAgICAgLyogRHJv cCBvdXIgcHJpdmF0ZSAicHJldmVudCBkcm1fdmJsYW5rX2dldCIgcmVmY291bnQgKi8KPiAgICAg ICAgIGlmICh2YmxhbmstPmlubW9kZXNldCkgewo+ICAgICAgICAgICAgICAgICBhdG9taWNfZGVj KCZ2YmxhbmstPnJlZmNvdW50KTsKPiAKPiAKPiAKPiBBbm90aGVyLCBtYXliZSBiZXR0ZXIsIGFw cHJvYWNoIG1pZ2h0IGJlIHRvIG5vLW9wIHJlZHVuZGFudCBjYWxscyB0bwo+IGRybV92Ymxhbmtf b2ZmKCkgaWZmIHZibGFuay0+aW5tb2Rlc2V0IGFuZCBuby1vcCByZWR1bmRhbnQgY2FsbHMgdG8K PiBkcm1fdmJsYW5rX29uKCkgaWZmICF2YmxhbmstPmlubW9kZXNldC4KPiAKPiAtbWFyaW8KPiAK PiAKPiA+Cj4gPj4KPiA+Pi1tYXJpbwo+ID4+Cj4gPj4KPiA+Pj4+Cj4gPj4+Pk90aGVyd2lzZSBr bXMgZHJpdmVycyB3b3VsZCBoYXZlIHRvIGJlIGNhcmVmdWwgdG8gbmV2ZXIgY2FsbAo+ID4+Pj5k cm1fdmJsYW5rX29mZiBtdWx0aXBsZSB0aW1lcyBiZWZvcmUgY2FsbGluZyBkcm1fdmJsYW5rX29u LCBidXQgdGhlIGhlbHAKPiA+Pj4+dGV4dCB0byBkcm1fdmJsYW5rX29uKCkgY2xhaW1zIHRoYXQg dW5iYWxhbmNlZCBjYWxscyB0byB0aGVzZSBmdW5jdGlvbnMKPiA+Pj4+YXJlIHBlcmZlY3RseSBm aW5lLgo+ID4+Pj4KPiA+Pj4+LW1hcmlvCj4gPj4+Pgo+ID4+Pj4KPiA+Pj4+Cj4gPj4+Pgo+ID4+ Pj4KPiA+Pj4+Cj4gPj4+Pgo+ID4+Pgo+ID4KCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVu Z2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757893AbcAYSve (ORCPT ); Mon, 25 Jan 2016 13:51:34 -0500 Received: from mail-wm0-f44.google.com ([74.125.82.44]:36009 "EHLO mail-wm0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757561AbcAYSv0 (ORCPT ); Mon, 25 Jan 2016 13:51:26 -0500 Date: Mon, 25 Jan 2016 19:51:30 +0100 From: Daniel Vetter To: Mario Kleiner Cc: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= , Michel =?iso-8859-1?Q?D=E4nzer?= , Alex Deucher , Vlastimil Babka , LKML , dri-devel@lists.freedesktop.org, Christian =?iso-8859-1?Q?K=F6nig?= , Daniel Vetter Subject: Re: linux-4.4 bisected: kwin5 stuck on kde5 loading screen with radeon Message-ID: <20160125185122.GV11240@phenom.ffwll.local> Mail-Followup-To: Mario Kleiner , Ville =?iso-8859-1?Q?Syrj=E4l=E4?= , Michel =?iso-8859-1?Q?D=E4nzer?= , Alex Deucher , Vlastimil Babka , LKML , dri-devel@lists.freedesktop.org, Christian =?iso-8859-1?Q?K=F6nig?= References: <56A0989E.30006@daenzer.net> <20160121100905.GL19130@phenom.ffwll.local> <56A19C98.8020208@daenzer.net> <20160122151835.GM23290@intel.com> <56A5A171.7000205@daenzer.net> <56A6203D.3030803@gmail.com> <20160125132310.GS23290@intel.com> <56A626D5.2040808@gmail.com> <20160125145309.GT23290@intel.com> <56A64F86.9080605@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <56A64F86.9080605@gmail.com> X-Operating-System: Linux phenom 4.3.0-1-amd64 User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jan 25, 2016 at 05:38:30PM +0100, Mario Kleiner wrote: > Readding Daniel, which somehow got dropped from the cc. > > On 01/25/2016 03:53 PM, Ville Syrjälä wrote: > >On Mon, Jan 25, 2016 at 02:44:53PM +0100, Mario Kleiner wrote: > >> > >> > >>On 01/25/2016 02:23 PM, Ville Syrjälä wrote: > >>>On Mon, Jan 25, 2016 at 02:16:45PM +0100, Mario Kleiner wrote: > >>>> > >>>> > >>>>On 01/25/2016 05:15 AM, Michel Dänzer wrote: > >>>>>On 23.01.2016 00:18, Ville Syrjälä wrote: > >>>>>>On Fri, Jan 22, 2016 at 12:06:00PM +0900, Michel Dänzer wrote: > >>>>>>> > >>>>>>>[ Trimming KDE folks from Cc ] > >>>>>>> > >>>>>>>On 21.01.2016 19:09, Daniel Vetter wrote: > >>>>>>>>On Thu, Jan 21, 2016 at 05:36:46PM +0900, Michel Dänzer wrote: > >>>>>>>>>On 21.01.2016 16:58, Daniel Vetter wrote: > >>>>>>>>>> > >>>>>>>>>>Can you please point me at the vblank on/off jump bug please? > >>>>>>>>> > >>>>>>>>>AFAIR I originally reported it in response to > >>>>>>>>>http://lists.freedesktop.org/archives/dri-devel/2015-August/087841.html > >>>>>>>>>, but I can't find that in the archives, so maybe that was just on IRC. > >>>>>>>>>See > >>>>>>>>>http://lists.freedesktop.org/archives/dri-devel/2016-January/099122.html > >>>>>>>>>. Basically, I ran into the bug fixed by your patch because the counter > >>>>>>>>>jumped forward on every DPMS off, so it hit the 32-bit boundary after > >>>>>>>>>just a few days. > >>>>>>>> > >>>>>>>>Ok, so just uncovered the overflow bug. > >>>>>>> > >>>>>>>Not sure what you mean by "just", but to be clear: The drm_vblank_on/off > >>>>>>>counter jumping bug (similar to the bug this thread is about), which > >>>>>>>exposed the overflow bug, is still alive and kicking in 4.5. It seems > >>>>>>>to happen when turning off the CRTC: > >>>>>>> > >>>>>>>[drm:drm_update_vblank_count] updating vblank count on crtc 0: current=218104694, diff=0, hw=916 hw_last=916 > >>>>>>>[drm:radeon_get_vblank_counter_kms] crtc 0: dist from vblank start 3 > >>>>>>>[drm:drm_calc_vbltimestamp_from_scanoutpos] crtc 0 : v 0x7 p(2199,-45)@ 7304.307354 -> 7304.308006 [e 0 us, 0 rep] > >>>>>>>[drm:radeon_get_vblank_counter_kms] crtc 0: dist from vblank start 3 > >>>>>>>[drm:drm_update_vblank_count] updating vblank count on crtc 0: current=218104694, diff=16776301, hw=1 hw_last=916 > >>>>>> > >>>>>>Not sure what bug we're talking about here, but here the hw counter > >>>>>>clearly jumps backwards. > >>>>>> > >>>>>>>[drm:radeon_get_vblank_counter_kms] Query failed! stat 3 > >>>>>>>[drm:radeon_get_vblank_counter_kms] Query failed! stat 3 > >>>>>>>[drm:drm_update_vblank_count] updating vblank count on crtc 1: current=0, diff=0, hw=0 hw_last=0 > >>>>>>>[drm:radeon_get_vblank_counter_kms] Query failed! stat 3 > >>>>>>>[drm:radeon_get_vblank_counter_kms] Query failed! stat 3 > >>>>>>>[drm:drm_update_vblank_count] updating vblank count on crtc 2: current=0, diff=0, hw=0 hw_last=0 > >>>>>>>[drm:radeon_get_vblank_counter_kms] Query failed! stat 3 > >>>>>>>[drm:radeon_get_vblank_counter_kms] Query failed! stat 3 > >>>>>>>[drm:drm_update_vblank_count] updating vblank count on crtc 3: current=0, diff=0, hw=0 hw_last=0 > >>>>>>>[drm:radeon_get_vblank_counter_kms] Query failed! stat 1 > >>>>>>>[drm:drm_calc_vbltimestamp_from_scanoutpos] crtc 0 : v 0x1 p(0,0)@ 7304.317140 -> 7304.317140 [e 0 us, 0 rep] > >>>>>>>[drm:radeon_get_vblank_counter_kms] Query failed! stat 1 > >>>>>>>[drm:drm_update_vblank_count] updating vblank count on crtc 0: current=234880995, diff=16777215, hw=0 hw_last=1 > >>>>>> > >>>>>>Same here. > >>>>> > >>>>>At least one of the jumps is expected, because this is around turning > >>>>>off the CRTC for DPMS off. Don't know yet why there are two jumps back > >>>>>though. > >>>>> > >>>>> > >>>>>>These things just don't happen on i915 because drm_vblank_off() and > >>>>>>drm_vblank_on() are always called around the times when the hw counter > >>>>>>might get reset. Or at least that's how it should be. > >>>>> > >>>>>Which is of course the idea of Daniel's patch (which is what I'm getting > >>>>>the above with) or Mario's patch as well, but clearly something's still > >>>>>wrong. It's certainly possible that it's something in the driver, but > >>>>>since calling drm_vblank_pre/post_modeset from the same places seems to > >>>>>work fine (ignoring the regression discussed in this thread)... Do > >>>>>drm_vblank_on/off require something else to handle this correctly? > >>>>> > >>>>> > >>>> > >>>>I suspect it is because vblank_disable_and_save calls > >>>>drm_update_vblank_count() unconditionally, even if vblank irqs are > >>>>already off. > >>>> > >>>>So on a manual display disable -> reenable you get something like > >>>> > >>>>At disable: > >>>> > >>>>Call to dpms-off --> atombios_crtc_dpms(DPMS_OFF) --> drm_vblank_off -> > >>>>vblank_disable_and_save -> irqs off, drm_update_vblank_count() computes > >>>>final count. > >>>> > >>>>Then the crtc is shut down and its hw counter resets to zero. > >>>> > >>>>At reenable: > >>>> > >>>>Modesetting -> drm_crtc_helper_set_mode -> crtc_funcs->prepare(crtc) -> > >>>>atombios_crtc_prepare() -> atombios_crtc_dpms(DPMS_OFF) -> > >>>>drm_vblank_off -> vblank_disable_and_save -> A pointless > >>>>drm_update_vblank_count() while the hw counter is already reset to zero > >>>>--> Unwanted counter jump. > >>>> > >>>> > >>>>The problem doesn't happen on a pure modeset to a different video > >>>>resolution/refresh rate, as then we only have one call into > >>>>atombios_crtc_dpms(DPMS_OFF). > >>>> > >>>>I think the fix is to fix vblank_disable_and_save() to only call > >>>>drm_update_vblank_count() if vblank irqs get actually disabled, not on > >>>>no-op calls. I will try that now. > >>> > >>>It does that on purpose. Otherwise the vblank counter would appear to > >>>have stalled while the interrupt was off. > >>> > >> > >>Ok, that's what the comments there say, although i don't see atm. why > >>that perceived stall would be a big problem. I checked all callers of > >>vblank_disable_and_save(). They are all careful to not call that > >>function if vblanks are already disabled. The only exception is > >>drm_vblank_off(). If drm_vblank_off/on is supposed to protect kms > >>drivers which have resetting hw counters or other problematic behaviour > >>during modesets etc. then this will break. E.g., calling the vblank > >>timestamping stuff is also not safe/well-defined during modesets when > >>the timestamping constants are not (yet) updated to reflect the new mode > >>timing of the modeset in progress. > > > >The idea is to maintain the appearance that the counter ticks all the > >time as long as the crtc is active. While that may not be really > >required in case if no one is currently interested in the vblank > >counter, I think it's a nice thing to have just to make the behaviour > >of the counter consistent. > > > >As far as calling drm_vblank_off() after the hw counter got reset, well, > >that not correct. It should be called before the reset. > > What radeon does is calling drm_vblank_off at beginning of DPMS_OFF. The > first call to DMPS_OFF will call drm_vblank_off() and really disable > vblank-irqs if they were running, updating the counts/ts a last time. But > then the dpms off will reset the hw counter to zero. When one reenables the > display, a second call to DPMS_OFF will now call drm_vblank_off again when > it apparently shouldn't. > > I just tested this patch, which fixes the counter jumps on radeon-kms with > my or Daniel's drm_vblank_off patches to radeon: This might be due to the legacy helpers, which just love to redundantly disable stuff that's off already. The problem I see with no-oping these out is that for atomic drivers (which really should get this right) this might paper over bugs: E.g. when you forget to call _off() when disabling the crtc, then calling _on() twice in a row is indeed a serious bug. Similar when you forget to call _on() and have multiple _off() calls in a row. So not sure what to do here. -Daniel > > diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c > index 607f493..d739d93 100644 > --- a/drivers/gpu/drm/drm_irq.c > +++ b/drivers/gpu/drm/drm_irq.c > @@ -1313,7 +1313,10 @@ void drm_vblank_off(struct drm_device *dev, unsigned > int pipe) > spin_lock_irqsave(&dev->event_lock, irqflags); > > spin_lock(&dev->vbl_lock); > - vblank_disable_and_save(dev, pipe); > + DRM_DEBUG_VBL("crtc %d, vblank enabled %d\n", pipe, > vblank->enabled); > + > + if (vblank->enabled) > + vblank_disable_and_save(dev, pipe); > wake_up(&vblank->queue); > > /* > @@ -1415,6 +1418,8 @@ void drm_vblank_on(struct drm_device *dev, unsigned > int pipe) > return; > > spin_lock_irqsave(&dev->vbl_lock, irqflags); > + DRM_DEBUG_VBL("crtc %d, vblank enabled %d\n", pipe, > vblank->enabled); > + > /* Drop our private "prevent drm_vblank_get" refcount */ > if (vblank->inmodeset) { > atomic_dec(&vblank->refcount); > > > > Another, maybe better, approach might be to no-op redundant calls to > drm_vblank_off() iff vblank->inmodeset and no-op redundant calls to > drm_vblank_on() iff !vblank->inmodeset. > > -mario > > > > > >> > >>-mario > >> > >> > >>>> > >>>>Otherwise kms drivers would have to be careful to never call > >>>>drm_vblank_off multiple times before calling drm_vblank_on, but the help > >>>>text to drm_vblank_on() claims that unbalanced calls to these functions > >>>>are perfectly fine. > >>>> > >>>>-mario > >>>> > >>>> > >>>> > >>>> > >>>> > >>>> > >>>> > >>> > > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch