From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751830AbbCYXcW (ORCPT ); Wed, 25 Mar 2015 19:32:22 -0400 Received: from blu004-omc2s36.hotmail.com ([65.55.111.111]:59177 "EHLO BLU004-OMC2S36.hotmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750979AbbCYXcV convert rfc822-to-8bit (ORCPT ); Wed, 25 Mar 2015 19:32:21 -0400 X-TMN: [KOXC2WXTbadNWICi23U/YiF70wnJog0w] X-Originating-Email: [xry111@outlook.com] Message-ID: Date: Thu, 26 Mar 2015 07:32:12 +0800 From: Xi Ruoyao User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: Josh Boyer , Daniel Vetter CC: Dave Airlie , Linus Torvalds , "Linux-Kernel@Vger. Kernel. Org" , DRI mailing list , Intel Graphics Development Subject: Re: [Intel-gfx] [git pull] drm fixes References: <20150325085418.GQ1349@phenom.ffwll.local> <20150325140008.GJ1349@phenom.ffwll.local> <20150325155003.GL1349@phenom.ffwll.local> <20150325171703.GM1349@phenom.ffwll.local> <20150325194014.GA24556@vader> In-Reply-To: <20150325194014.GA24556@vader> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8BIT X-OriginalArrivalTime: 25 Mar 2015 23:32:20.0142 (UTC) FILETIME=[F01244E0:01D06753] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 在 03/26/2015 03:40 AM, Josh Boyer 写道: > 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 I've got an HDMI device from the laboratory. I'll help to test the solution. -- Xi Ruoyao School of Aerospace Science and Technology Xidian University, Xi'an, China From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xi Ruoyao Subject: Re: [git pull] drm fixes Date: Thu, 26 Mar 2015 07:32:12 +0800 Message-ID: References: <20150325085418.GQ1349@phenom.ffwll.local> <20150325140008.GJ1349@phenom.ffwll.local> <20150325155003.GL1349@phenom.ffwll.local> <20150325171703.GM1349@phenom.ffwll.local> <20150325194014.GA24556@vader> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20150325194014.GA24556@vader> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Josh Boyer , Daniel Vetter Cc: Dave Airlie , Intel Graphics Development , Linus Torvalds , "Linux-Kernel@Vger. Kernel. Org" , DRI mailing list List-Id: dri-devel@lists.freedesktop.org CgrlnKggMDMvMjYvMjAxNSAwMzo0MCBBTSwgSm9zaCBCb3llciDlhpnpgZM6Cj4gT24gV2VkLCBN YXIgMjUsIDIwMTUgYXQgMDE6Mzc6NDFQTSAtMDQwMCwgSm9zaCBCb3llciB3cm90ZToKPj4+Pj4+ IFllYWggdGhhdCBmYWlsIGxvb2tzIGxpa2Ugd2UncmUgZnJlZWluZyBhbiBmYiB0aGF0J3Mgc3Rp bGwgaW4gdXNlLgo+Pj4+Pj4gSGlsYXJpdHkgaGFwcGVucyBhbmQgc2luY2UgdGhhdCBoYXBwZW5z IHVuZGVyIGNvbnNvbGVfbG9jayBhdCBib290LXVwIHlvdXIKPj4+Pj4+IG1hY2hpbmUgZGllcy4K Pj4+Pj4+Cj4+Pj4+PiBEb2VzIHRoYXQgbWFjaGluZSBkaWUgdGhlIHNhbWUgd2F5IGluIGRybS1p bnRlbC1uaWdodGx5L2xpbnV4LW5leHQ/Cj4+Pj4+IEknbGwgdHJ5IHRoYXQgYSBiaXQgbGF0ZXIg dG9kYXkuICBPdXQgb2Ygc2hlZXIgY3VyaW9zaXR5LCBJIGZvbGRlZAo+Pj4+PiBjb21taXQ1YmE3 NmM0MWU1NWMgKGRybS9pOTE1OiBQdXQgdXBkYXRlX3N0YXRlX2ZiKCkgbmV4dCB0byB0aGUgZmIK Pj4+Pj4gdXBkYXRlKSBpbnRvIHRoZSBwYXRjaCBhYm92ZSBhbmQga2lja2VkIG9mZiBhIGJ1aWxk LiAgVGhlIHRoZW9yeSBpcwo+Pj4+PiB0aGF0IHdlJ3JlIHBpY2tpbmcgdXAgYSBidW5jaCBvZiBv dGhlciBjaGFuZ2VzIHJpZ2h0IGluIHRoYXQgcmFuZ2Ugb2YKPj4+Pj4gY29tbWl0cywgd2h5IG5v dCB0cnkgb25lIG1vcmUuICBJJ2xsIGxldCB5b3Uga25vdyBpZiB0aGF0IGZpeGVzCj4+Pj4+IGFu eXRoaW5nLiAgT3RoZXJ3aXNlLCBJJ2xsIHRyeSBidWlsZGluZyBkcm0taW50ZWwtbmlnaHRseSBh bmQvb3IKPj4+Pj4gbGludXgtbmV4dCBhZnRlciB0aGF0Lgo+Pj4+IFRoZSBkcm0taW50ZWwtbmln aHRseSBidWlsZCBmaW5pc2hlZCBmaXJzdC4gIEl0IGJvb3RzIHdpdGhvdXQgSERNSQo+Pj4+IHBs dWdnZWQgaW4sIGJ1dCBpdCBoYXMgcHJldHR5IG11Y2ggdGhlIHNhbWUgc3BsYXRzIGFzIHRoZSBw cmV2aW91cwo+Pj4+IGtlcm5lbC4gIENvbmZ1c2VkLiAgRnVsbCBsb2cgaGVyZToKPj4+Pgo+Pj4+ IGh0dHBzOi8vandib3llci5mZWRvcmFwZW9wbGUub3JnL3B1Yi9pbnRlbC1uaWdodGx5LnR4dAo+ Pj4+Cj4+Pj4gSSBkb24ndCBoYXZlIG11Y2ggaG9wZSBmb3IgbXkgb3RoZXIgYnVpbGQuCj4+PiBZ ZWFoIHRoYXQncyBhdCBsZWFzdCBnb29kIG5ld3MgZm9yIHRoZSB0aGVvcnkgSSd2ZSBiZWVuIGNv b2tpbmcgbWVhbndoaWxlLgo+Pj4gQ2FuIHlvdSB0cnkgdGhlIGJlbG93IGRpZmYgKG9uIHRvcCBv ZiBuZXh0L25pZ2h0bHkpPyBGb3IgdGhlIGN1cnJlbnQKPj4+IGNoZXJyeS1waWNrIHBpbGUgb24g dG9wIG9mIDQuMC1yYyB5b3UnZCBuZWVkIHRvIHByZXBlbmQgaW50ZWxfY3J0Yy0+YmFzZS4KPj4+ IHRvIHByaW1hcnktPi4uLgo+Pj4KPj4+IFRoYW5rcywgRGFuaWVsCj4+Pgo+Pj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+Pj4gaW5kZXggY2ViMmU2MWI0YzkxLi5jYjUwODU0MmM2 YWIgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMK Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+Pj4gQEAgLTI1 OTQsNiArMjU5NCw3IEBAIGludGVsX2ZpbmRfcGxhbmVfb2JqKHN0cnVjdCBpbnRlbF9jcnRjICpp bnRlbF9jcnRjLAo+Pj4KPj4+ICAgICAgICAgICAgICAgICAgcHJpbWFyeS0+ZmIgPSAmcGxhbmVf Y29uZmlnLT5mYi0+YmFzZTsKPj4+ICAgICAgICAgICAgICAgICAgcHJpbWFyeS0+c3RhdGUtPmNy dGMgPSAmaW50ZWxfY3J0Yy0+YmFzZTsKPj4+ICsgICAgICAgICAgICAgICBwcmltYXJ5LT5jcnRj ID0gJmludGVsX2NydGMtPmJhc2U7Cj4+PiAgICAgICAgICAgICAgICAgIHVwZGF0ZV9zdGF0ZV9m YihwcmltYXJ5KTsKPj4+Cj4+PiAgICAgICAgICAgICAgICAgIHJldHVybjsKPj4+IEBAIC0yNjI3 LDYgKzI2MjgsNyBAQCBpbnRlbF9maW5kX3BsYW5lX29iaihzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50 ZWxfY3J0YywKPj4+ICAgICAgICAgICAgICAgICAgICAgICAgICBkcm1fZnJhbWVidWZmZXJfcmVm ZXJlbmNlKGMtPnByaW1hcnktPmZiKTsKPj4+ICAgICAgICAgICAgICAgICAgICAgICAgICBwcmlt YXJ5LT5mYiA9IGMtPnByaW1hcnktPmZiOwo+Pj4gICAgICAgICAgICAgICAgICAgICAgICAgIHBy aW1hcnktPnN0YXRlLT5jcnRjID0gJmludGVsX2NydGMtPmJhc2U7Cj4+PiArICAgICAgICAgICAg ICAgICAgICAgICBwcmltYXJ5LT5jcnRjID0gJmludGVsX2NydGMtPmJhc2U7Cj4+PiAgICAgICAg ICAgICAgICAgICAgICAgICAgdXBkYXRlX3N0YXRlX2ZiKGludGVsX2NydGMtPmJhc2UucHJpbWFy eSk7Cj4+PiAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqLT5mcm9udGJ1ZmZlcl9iaXRzIHw9 IElOVEVMX0ZST05UQlVGRkVSX1BSSU1BUlkoaW50ZWxfY3J0Yy0+cGlwZSk7Cj4+PiAgICAgICAg ICAgICAgICAgICAgICAgICAgYnJlYWs7Cj4+IEhleSwgdGhhdCBzZWVtcyB0byBkbyB0aGUgdHJp Y2sgb24gdGhlIE5VQyBtYWNoaW5lLiAgQm9vdHMgd2l0aG91dAo+PiBIRE1JIGNvbm5lY3RlZCBh bmQgdGhlcmUgYXJlIG5vIGJhY2t0cmFjZXMuICBOaWNlIQo+Pgo+PiBMZXQgbWUgZ28gYW5kIG11 bmdlIGl0IGFyb3VuZCBmb3IgYSBiYWNrcG9ydCBvbiB0b3Agb2YgLXJjNSB3aXRoIHRoZQo+PiBy ZXN0IG9mIHRoZSBwaWxlIGFuZCBzZWUgaWYgYm90aCB0aGUgbWFjYm9vayBhbmQgTlVDIG1hY2hp bmVzIHdvcmsKPj4gdGhlbi4gIFdpbGwgYmUgYSBiaXQgZm9yIGl0IHRvIGJ1aWxkLgo+IE9LLCB0 aGF0IGhlbHBlZCBvbiBhbGwgbXkgbWFjaGluZXMgSSBoYXZlLiAgTm8gYmFja3RyYWNlcyBhbmQg dGhleSBhbGwKPiBib290IGFnYWluIGFzIEkgd291bGQgZXhwZWN0LiAgRm9yIHRoZSByZWNvcmQs IGhlcmUgaXMgd2hhdCBJIGhhdmUgb24KPiB0b3Agb2YgLXJjNToKPgo+IGRybS1GaXh1cC1yYWN5 LXJlZmNvdW50aW5nLWluLXBsYW5lX2ZvcmNlX2Rpc2FibGUucGF0Y2gKPiBkcm0taTkxNS1Eb24t dC10cnktdG8tcmVmZXJlbmNlLXRoZS1mYi1pbi1nZXRfaW5pdGlhLnBhdGNoCj4KPiBhbmQgdGhp cyBwYXRjaDoKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCAxNzc3 MTRhOWQ3NzguLjc3OGU3ZmE0MWMxNyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKPiBAQCAtMjQzOSw2ICsyNDM5LDggQEAgaW50ZWxfZmluZF9wbGFuZV9vYmooc3RydWN0 IGludGVsX2NydGMgKmludGVsX2NydGMsCj4gICAJCXJldHVybjsKPiAgIAo+ICAgCWlmIChpbnRl bF9hbGxvY19wbGFuZV9vYmooaW50ZWxfY3J0YywgcGxhbmVfY29uZmlnKSkgewo+ICsJCWludGVs X2NydGMtPmJhc2UucHJpbWFyeS0+c3RhdGUtPmNydGMgPSAmaW50ZWxfY3J0Yy0+YmFzZTsKPiAr CQlpbnRlbF9jcnRjLT5iYXNlLnByaW1hcnktPmNydGMgPSAmaW50ZWxfY3J0Yy0+YmFzZTsKPiAg IAkJdXBkYXRlX3N0YXRlX2ZiKGludGVsX2NydGMtPmJhc2UucHJpbWFyeSk7Cj4gICAJCXJldHVy bjsKPiAgIAl9Cj4gQEAgLTI0NjksNiArMjQ3MSw4IEBAIGludGVsX2ZpbmRfcGxhbmVfb2JqKHN0 cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjLAo+ICAgCj4gICAJCQlkcm1fZnJhbWVidWZmZXJf cmVmZXJlbmNlKGMtPnByaW1hcnktPmZiKTsKPiAgIAkJCWludGVsX2NydGMtPmJhc2UucHJpbWFy eS0+ZmIgPSBjLT5wcmltYXJ5LT5mYjsKPiArCQkJaW50ZWxfY3J0Yy0+YmFzZS5wcmltYXJ5LT5z dGF0ZS0+Y3J0YyA9ICZpbnRlbF9jcnRjLT5iYXNlOwo+ICsJCQlpbnRlbF9jcnRjLT5iYXNlLnBy aW1hcnktPmNydGMgPSAmaW50ZWxfY3J0Yy0+YmFzZTsKPiAgIAkJCW9iai0+ZnJvbnRidWZmZXJf Yml0cyB8PSBJTlRFTF9GUk9OVEJVRkZFUl9QUklNQVJZKGludGVsX2NydGMtPnBpcGUpOwo+ICAg CQkJYnJlYWs7Cj4gICAJCX0KPgo+IHdoaWNoIGlzIGEgbWFzaC11cCBvZjoKPgo+ICJkcm0vaTkx NTogRml4IGF0b21pYyBzdGF0ZSB3aGVuIHJldXNpbmcgdGhlIGZpcm13YXJlIGZiIgo+Cj4gYW5k Cj4KPiAiZHJtL2k5MTU6IEZpeHVwIGxlZ2FjeSBwbGFuZS0+Y3J0YyBsaW5rIGZvciBpbml0aWFs IGZiIGNvbmZpZyIKPgo+IHdoaWNoIHlvdSBqdXN0IHNlbnQgb3V0Lgo+Cj4gSSB0aGluayB0aGF0 IGNvdmVycyBldmVyeXRoaW5nLgo+Cj4gam9zaApJJ3ZlIGdvdCBhbiBIRE1JIGRldmljZSBmcm9t IHRoZSBsYWJvcmF0b3J5LiBJJ2xsIGhlbHAgdG8gdGVzdCB0aGUgc29sdXRpb24uCgotLSAKWGkg UnVveWFvClNjaG9vbCBvZiBBZXJvc3BhY2UgU2NpZW5jZSBhbmQgVGVjaG5vbG9neQpYaWRpYW4g VW5pdmVyc2l0eSwgWGknYW4sIENoaW5hCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeAo=