From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753469AbbCYTkf (ORCPT ); Wed, 25 Mar 2015 15:40:35 -0400 Received: from mail-yk0-f171.google.com ([209.85.160.171]:33393 "EHLO mail-yk0-f171.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752175AbbCYTkc (ORCPT ); Wed, 25 Mar 2015 15:40:32 -0400 Date: Wed, 25 Mar 2015 15:40:14 -0400 From: Josh Boyer To: Daniel Vetter Cc: Dave Airlie , Xi Ruoyao , Linus Torvalds , "Linux-Kernel@Vger. Kernel. Org" , DRI mailing list , Intel Graphics Development Subject: Re: [Intel-gfx] [git pull] drm fixes Message-ID: <20150325194014.GA24556@vader> References: <20150325085418.GQ1349@phenom.ffwll.local> <20150325140008.GJ1349@phenom.ffwll.local> <20150325155003.GL1349@phenom.ffwll.local> <20150325171703.GM1349@phenom.ffwll.local> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Mar 25, 2015 at 01:37:41PM -0400, Josh Boyer wrote: >>> >> Yeah that fail looks like we're freeing an fb that's still in use. >>> >> Hilarity happens and since that happens under console_lock at boot-up your >>> >> machine dies. >>> >> >>> >> Does that machine die the same way in drm-intel-nightly/linux-next? >>> > >>> > I'll try that a bit later today. Out of sheer curiosity, I folded >>> > commit5ba76c41e55c (drm/i915: Put update_state_fb() next to the fb >>> > update) into the patch above and kicked off a build. The theory is >>> > that we're picking up a bunch of other changes right in that range of >>> > commits, why not try one more. I'll let you know if that fixes >>> > anything. Otherwise, I'll try building drm-intel-nightly and/or >>> > linux-next after that. >>> >>> The drm-intel-nightly build finished first. It boots without HDMI >>> plugged in, but it has pretty much the same splats as the previous >>> kernel. Confused. Full log here: >>> >>> https://jwboyer.fedorapeople.org/pub/intel-nightly.txt >>> >>> I don't have much hope for my other build. >> >> Yeah that's at least good news for the theory I've been cooking meanwhile. >> Can you try the below diff (on top of next/nightly)? For the current >> cherry-pick pile on top of 4.0-rc you'd need to prepend intel_crtc->base. >> to primary->... >> >> Thanks, Daniel >> >> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c >> index ceb2e61b4c91..cb508542c6ab 100644 >> --- a/drivers/gpu/drm/i915/intel_display.c >> +++ b/drivers/gpu/drm/i915/intel_display.c >> @@ -2594,6 +2594,7 @@ intel_find_plane_obj(struct intel_crtc *intel_crtc, >> >> primary->fb = &plane_config->fb->base; >> primary->state->crtc = &intel_crtc->base; >> + primary->crtc = &intel_crtc->base; >> update_state_fb(primary); >> >> return; >> @@ -2627,6 +2628,7 @@ intel_find_plane_obj(struct intel_crtc *intel_crtc, >> drm_framebuffer_reference(c->primary->fb); >> primary->fb = c->primary->fb; >> primary->state->crtc = &intel_crtc->base; >> + primary->crtc = &intel_crtc->base; >> update_state_fb(intel_crtc->base.primary); >> obj->frontbuffer_bits |= INTEL_FRONTBUFFER_PRIMARY(intel_crtc->pipe); >> break; > >Hey, that seems to do the trick on the NUC machine. Boots without >HDMI connected and there are no backtraces. Nice! > >Let me go and munge it around for a backport on top of -rc5 with the >rest of the pile and see if both the macbook and NUC machines work >then. Will be a bit for it to build. OK, that helped on all my machines I have. No backtraces and they all boot again as I would expect. For the record, here is what I have on top of -rc5: drm-Fixup-racy-refcounting-in-plane_force_disable.patch drm-i915-Don-t-try-to-reference-the-fb-in-get_initia.patch and this patch: diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 177714a9d778..778e7fa41c17 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -2439,6 +2439,8 @@ intel_find_plane_obj(struct intel_crtc *intel_crtc, return; if (intel_alloc_plane_obj(intel_crtc, plane_config)) { + intel_crtc->base.primary->state->crtc = &intel_crtc->base; + intel_crtc->base.primary->crtc = &intel_crtc->base; update_state_fb(intel_crtc->base.primary); return; } @@ -2469,6 +2471,8 @@ intel_find_plane_obj(struct intel_crtc *intel_crtc, drm_framebuffer_reference(c->primary->fb); intel_crtc->base.primary->fb = c->primary->fb; + intel_crtc->base.primary->state->crtc = &intel_crtc->base; + intel_crtc->base.primary->crtc = &intel_crtc->base; obj->frontbuffer_bits |= INTEL_FRONTBUFFER_PRIMARY(intel_crtc->pipe); break; } which is a mash-up of: "drm/i915: Fix atomic state when reusing the firmware fb" and "drm/i915: Fixup legacy plane->crtc link for initial fb config" which you just sent out. I think that covers everything. josh From mboxrd@z Thu Jan 1 00:00:00 1970 From: Josh Boyer Subject: Re: [git pull] drm fixes Date: Wed, 25 Mar 2015 15:40:14 -0400 Message-ID: <20150325194014.GA24556@vader> References: <20150325085418.GQ1349@phenom.ffwll.local> <20150325140008.GJ1349@phenom.ffwll.local> <20150325155003.GL1349@phenom.ffwll.local> <20150325171703.GM1349@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Dave Airlie , Intel Graphics Development , "Linux-Kernel@Vger. Kernel. Org" , DRI mailing list , Xi Ruoyao , Linus Torvalds List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBNYXIgMjUsIDIwMTUgYXQgMDE6Mzc6NDFQTSAtMDQwMCwgSm9zaCBCb3llciB3cm90 ZToKPj4+ID4+IFllYWggdGhhdCBmYWlsIGxvb2tzIGxpa2Ugd2UncmUgZnJlZWluZyBhbiBmYiB0 aGF0J3Mgc3RpbGwgaW4gdXNlLgo+Pj4gPj4gSGlsYXJpdHkgaGFwcGVucyBhbmQgc2luY2UgdGhh dCBoYXBwZW5zIHVuZGVyIGNvbnNvbGVfbG9jayBhdCBib290LXVwIHlvdXIKPj4+ID4+IG1hY2hp bmUgZGllcy4KPj4+ID4+Cj4+PiA+PiBEb2VzIHRoYXQgbWFjaGluZSBkaWUgdGhlIHNhbWUgd2F5 IGluIGRybS1pbnRlbC1uaWdodGx5L2xpbnV4LW5leHQ/Cj4+PiA+Cj4+PiA+IEknbGwgdHJ5IHRo YXQgYSBiaXQgbGF0ZXIgdG9kYXkuICBPdXQgb2Ygc2hlZXIgY3VyaW9zaXR5LCBJIGZvbGRlZAo+ Pj4gPiBjb21taXQ1YmE3NmM0MWU1NWMgKGRybS9pOTE1OiBQdXQgdXBkYXRlX3N0YXRlX2ZiKCkg bmV4dCB0byB0aGUgZmIKPj4+ID4gdXBkYXRlKSBpbnRvIHRoZSBwYXRjaCBhYm92ZSBhbmQga2lj a2VkIG9mZiBhIGJ1aWxkLiAgVGhlIHRoZW9yeSBpcwo+Pj4gPiB0aGF0IHdlJ3JlIHBpY2tpbmcg dXAgYSBidW5jaCBvZiBvdGhlciBjaGFuZ2VzIHJpZ2h0IGluIHRoYXQgcmFuZ2Ugb2YKPj4+ID4g Y29tbWl0cywgd2h5IG5vdCB0cnkgb25lIG1vcmUuICBJJ2xsIGxldCB5b3Uga25vdyBpZiB0aGF0 IGZpeGVzCj4+PiA+IGFueXRoaW5nLiAgT3RoZXJ3aXNlLCBJJ2xsIHRyeSBidWlsZGluZyBkcm0t aW50ZWwtbmlnaHRseSBhbmQvb3IKPj4+ID4gbGludXgtbmV4dCBhZnRlciB0aGF0Lgo+Pj4KPj4+ IFRoZSBkcm0taW50ZWwtbmlnaHRseSBidWlsZCBmaW5pc2hlZCBmaXJzdC4gIEl0IGJvb3RzIHdp dGhvdXQgSERNSQo+Pj4gcGx1Z2dlZCBpbiwgYnV0IGl0IGhhcyBwcmV0dHkgbXVjaCB0aGUgc2Ft ZSBzcGxhdHMgYXMgdGhlIHByZXZpb3VzCj4+PiBrZXJuZWwuICBDb25mdXNlZC4gIEZ1bGwgbG9n IGhlcmU6Cj4+Pgo+Pj4gaHR0cHM6Ly9qd2JveWVyLmZlZG9yYXBlb3BsZS5vcmcvcHViL2ludGVs LW5pZ2h0bHkudHh0Cj4+Pgo+Pj4gSSBkb24ndCBoYXZlIG11Y2ggaG9wZSBmb3IgbXkgb3RoZXIg YnVpbGQuCj4+Cj4+IFllYWggdGhhdCdzIGF0IGxlYXN0IGdvb2QgbmV3cyBmb3IgdGhlIHRoZW9y eSBJJ3ZlIGJlZW4gY29va2luZyBtZWFud2hpbGUuCj4+IENhbiB5b3UgdHJ5IHRoZSBiZWxvdyBk aWZmIChvbiB0b3Agb2YgbmV4dC9uaWdodGx5KT8gRm9yIHRoZSBjdXJyZW50Cj4+IGNoZXJyeS1w aWNrIHBpbGUgb24gdG9wIG9mIDQuMC1yYyB5b3UnZCBuZWVkIHRvIHByZXBlbmQgaW50ZWxfY3J0 Yy0+YmFzZS4KPj4gdG8gcHJpbWFyeS0+Li4uCj4+Cj4+IFRoYW5rcywgRGFuaWVsCj4+Cj4+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPj4gaW5kZXggY2ViMmU2MWI0YzkxLi5jYjUw ODU0MmM2YWIgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYwo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPj4gQEAg LTI1OTQsNiArMjU5NCw3IEBAIGludGVsX2ZpbmRfcGxhbmVfb2JqKHN0cnVjdCBpbnRlbF9jcnRj ICppbnRlbF9jcnRjLAo+Pgo+PiAgICAgICAgICAgICAgICAgcHJpbWFyeS0+ZmIgPSAmcGxhbmVf Y29uZmlnLT5mYi0+YmFzZTsKPj4gICAgICAgICAgICAgICAgIHByaW1hcnktPnN0YXRlLT5jcnRj ID0gJmludGVsX2NydGMtPmJhc2U7Cj4+ICsgICAgICAgICAgICAgICBwcmltYXJ5LT5jcnRjID0g JmludGVsX2NydGMtPmJhc2U7Cj4+ICAgICAgICAgICAgICAgICB1cGRhdGVfc3RhdGVfZmIocHJp bWFyeSk7Cj4+Cj4+ICAgICAgICAgICAgICAgICByZXR1cm47Cj4+IEBAIC0yNjI3LDYgKzI2Mjgs NyBAQCBpbnRlbF9maW5kX3BsYW5lX29iaihzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YywK Pj4gICAgICAgICAgICAgICAgICAgICAgICAgZHJtX2ZyYW1lYnVmZmVyX3JlZmVyZW5jZShjLT5w cmltYXJ5LT5mYik7Cj4+ICAgICAgICAgICAgICAgICAgICAgICAgIHByaW1hcnktPmZiID0gYy0+ cHJpbWFyeS0+ZmI7Cj4+ICAgICAgICAgICAgICAgICAgICAgICAgIHByaW1hcnktPnN0YXRlLT5j cnRjID0gJmludGVsX2NydGMtPmJhc2U7Cj4+ICsgICAgICAgICAgICAgICAgICAgICAgIHByaW1h cnktPmNydGMgPSAmaW50ZWxfY3J0Yy0+YmFzZTsKPj4gICAgICAgICAgICAgICAgICAgICAgICAg dXBkYXRlX3N0YXRlX2ZiKGludGVsX2NydGMtPmJhc2UucHJpbWFyeSk7Cj4+ICAgICAgICAgICAg ICAgICAgICAgICAgIG9iai0+ZnJvbnRidWZmZXJfYml0cyB8PSBJTlRFTF9GUk9OVEJVRkZFUl9Q UklNQVJZKGludGVsX2NydGMtPnBpcGUpOwo+PiAgICAgICAgICAgICAgICAgICAgICAgICBicmVh azsKPgo+SGV5LCB0aGF0IHNlZW1zIHRvIGRvIHRoZSB0cmljayBvbiB0aGUgTlVDIG1hY2hpbmUu ICBCb290cyB3aXRob3V0Cj5IRE1JIGNvbm5lY3RlZCBhbmQgdGhlcmUgYXJlIG5vIGJhY2t0cmFj ZXMuICBOaWNlIQo+Cj5MZXQgbWUgZ28gYW5kIG11bmdlIGl0IGFyb3VuZCBmb3IgYSBiYWNrcG9y dCBvbiB0b3Agb2YgLXJjNSB3aXRoIHRoZQo+cmVzdCBvZiB0aGUgcGlsZSBhbmQgc2VlIGlmIGJv dGggdGhlIG1hY2Jvb2sgYW5kIE5VQyBtYWNoaW5lcyB3b3JrCj50aGVuLiAgV2lsbCBiZSBhIGJp dCBmb3IgaXQgdG8gYnVpbGQuCgpPSywgdGhhdCBoZWxwZWQgb24gYWxsIG15IG1hY2hpbmVzIEkg aGF2ZS4gIE5vIGJhY2t0cmFjZXMgYW5kIHRoZXkgYWxsCmJvb3QgYWdhaW4gYXMgSSB3b3VsZCBl eHBlY3QuICBGb3IgdGhlIHJlY29yZCwgaGVyZSBpcyB3aGF0IEkgaGF2ZSBvbgp0b3Agb2YgLXJj NToKCmRybS1GaXh1cC1yYWN5LXJlZmNvdW50aW5nLWluLXBsYW5lX2ZvcmNlX2Rpc2FibGUucGF0 Y2gKZHJtLWk5MTUtRG9uLXQtdHJ5LXRvLXJlZmVyZW5jZS10aGUtZmItaW4tZ2V0X2luaXRpYS5w YXRjaAoKYW5kIHRoaXMgcGF0Y2g6CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmlu ZGV4IDE3NzcxNGE5ZDc3OC4uNzc4ZTdmYTQxYzE3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGlzcGxheS5jCkBAIC0yNDM5LDYgKzI0MzksOCBAQCBpbnRlbF9maW5kX3BsYW5lX29iaihzdHJ1 Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YywKIAkJcmV0dXJuOwogCiAJaWYgKGludGVsX2FsbG9j X3BsYW5lX29iaihpbnRlbF9jcnRjLCBwbGFuZV9jb25maWcpKSB7CisJCWludGVsX2NydGMtPmJh c2UucHJpbWFyeS0+c3RhdGUtPmNydGMgPSAmaW50ZWxfY3J0Yy0+YmFzZTsKKwkJaW50ZWxfY3J0 Yy0+YmFzZS5wcmltYXJ5LT5jcnRjID0gJmludGVsX2NydGMtPmJhc2U7CiAJCXVwZGF0ZV9zdGF0 ZV9mYihpbnRlbF9jcnRjLT5iYXNlLnByaW1hcnkpOwogCQlyZXR1cm47CiAJfQpAQCAtMjQ2OSw2 ICsyNDcxLDggQEAgaW50ZWxfZmluZF9wbGFuZV9vYmooc3RydWN0IGludGVsX2NydGMgKmludGVs X2NydGMsCiAKIAkJCWRybV9mcmFtZWJ1ZmZlcl9yZWZlcmVuY2UoYy0+cHJpbWFyeS0+ZmIpOwog CQkJaW50ZWxfY3J0Yy0+YmFzZS5wcmltYXJ5LT5mYiA9IGMtPnByaW1hcnktPmZiOworCQkJaW50 ZWxfY3J0Yy0+YmFzZS5wcmltYXJ5LT5zdGF0ZS0+Y3J0YyA9ICZpbnRlbF9jcnRjLT5iYXNlOwor CQkJaW50ZWxfY3J0Yy0+YmFzZS5wcmltYXJ5LT5jcnRjID0gJmludGVsX2NydGMtPmJhc2U7CiAJ CQlvYmotPmZyb250YnVmZmVyX2JpdHMgfD0gSU5URUxfRlJPTlRCVUZGRVJfUFJJTUFSWShpbnRl bF9jcnRjLT5waXBlKTsKIAkJCWJyZWFrOwogCQl9Cgp3aGljaCBpcyBhIG1hc2gtdXAgb2Y6Cgoi ZHJtL2k5MTU6IEZpeCBhdG9taWMgc3RhdGUgd2hlbiByZXVzaW5nIHRoZSBmaXJtd2FyZSBmYiIK CmFuZAoKImRybS9pOTE1OiBGaXh1cCBsZWdhY3kgcGxhbmUtPmNydGMgbGluayBmb3IgaW5pdGlh bCBmYiBjb25maWciCgp3aGljaCB5b3UganVzdCBzZW50IG91dC4KCkkgdGhpbmsgdGhhdCBjb3Zl cnMgZXZlcnl0aGluZy4KCmpvc2gKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p bnRlbC1nZngK